diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index c9431b6..36ef8cc 100755 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,12 +1,12 @@ lockVersion: 2.0.0 id: 5a8dbcbc-e0ee-41f0-9d84-b8b50567d1e9 management: - docChecksum: 2ad2b4c59994082e04faa0c3e7675f3e + docChecksum: 5ae5b1296191bd5cc5d4f6cd38df8bff docVersion: 0.0.3 - speakeasyVersion: 1.377.3 - generationVersion: 2.404.2 - releaseVersion: 0.4.0 - configChecksum: 0e72845e7bb366c3b8a4e13005a8fcfe + speakeasyVersion: 1.378.1 + generationVersion: 2.404.3 + releaseVersion: 0.4.1 + configChecksum: c11547fd2dc431993d988a8717e7bfe9 repoURL: https://github.com/LukeHagar/plexcsharp.git repoSubDirectory: . published: true @@ -157,6 +157,11 @@ generatedFiles: - PlexAPI/Models/Requests/GetTokenByPinIdAuthPinContainer.cs - PlexAPI/Models/Requests/GetTokenByPinIdResponse.cs - PlexAPI/Models/Requests/MailingListStatus.cs + - PlexAPI/Models/Requests/AutoSelectSubtitle.cs + - PlexAPI/Models/Requests/DefaultSubtitleAccessibility.cs + - PlexAPI/Models/Requests/DefaultSubtitleForced.cs + - PlexAPI/Models/Requests/WatchedIndicator.cs + - PlexAPI/Models/Requests/MediaReviewsVisibility.cs - PlexAPI/Models/Requests/UserProfile.cs - PlexAPI/Models/Requests/GetUserDetailsStatus.cs - PlexAPI/Models/Requests/Services.cs @@ -408,25 +413,30 @@ generatedFiles: - PlexAPI/Models/Requests/Skip.cs - PlexAPI/Models/Requests/ApplyUpdatesRequest.cs - PlexAPI/Models/Requests/ApplyUpdatesResponse.cs - - PlexAPI/Models/Requests/PostUsersSigninDataRequestBody.cs - - PlexAPI/Models/Requests/PostUsersSigninDataRequest.cs - - PlexAPI/Models/Requests/PostUsersSigninDataMailingListStatus.cs - - PlexAPI/Models/Requests/PostUsersSigninDataUserProfile.cs - - PlexAPI/Models/Requests/PostUsersSigninDataStatus.cs - - PlexAPI/Models/Requests/PostUsersSigninDataServices.cs - - PlexAPI/Models/Requests/PostUsersSigninDataFeatures.cs - - PlexAPI/Models/Requests/PostUsersSigninDataUserStatus.cs - - PlexAPI/Models/Requests/PostUsersSigninDataSubscription.cs - - PlexAPI/Models/Requests/PostUsersSigninDataUserFeatures.cs - - PlexAPI/Models/Requests/PostUsersSigninDataUserResponseStatus.cs - - PlexAPI/Models/Requests/PostUsersSigninDataUserSubscription.cs - - PlexAPI/Models/Requests/PostUsersSigninDataState.cs + - PlexAPI/Models/Requests/PostSignInRequestBody.cs + - PlexAPI/Models/Requests/PostSignInRequest.cs + - PlexAPI/Models/Requests/PostSignInMailingListStatus.cs + - PlexAPI/Models/Requests/PostSignInAutoSelectSubtitle.cs + - PlexAPI/Models/Requests/PostSignInDefaultSubtitleAccessibility.cs + - PlexAPI/Models/Requests/PostSignInDefaultSubtitleForced.cs + - PlexAPI/Models/Requests/PostSignInWatchedIndicator.cs + - PlexAPI/Models/Requests/PostSignInMediaReviewsVisibility.cs + - PlexAPI/Models/Requests/PostSignInUserProfile.cs + - PlexAPI/Models/Requests/PostSignInStatus.cs + - PlexAPI/Models/Requests/PostSignInServices.cs + - PlexAPI/Models/Requests/PostSignInFeatures.cs + - PlexAPI/Models/Requests/PostSignInUserStatus.cs + - PlexAPI/Models/Requests/PostSignInSubscription.cs + - PlexAPI/Models/Requests/PostSignInUserFeatures.cs + - PlexAPI/Models/Requests/PostSignInUserResponseStatus.cs + - PlexAPI/Models/Requests/PostSignInUserSubscription.cs + - PlexAPI/Models/Requests/PostSignInState.cs - PlexAPI/Models/Requests/InternalPaymentMethod.cs - PlexAPI/Models/Requests/Billing.cs - PlexAPI/Models/Requests/PastSubscription.cs - PlexAPI/Models/Requests/Trials.cs - - PlexAPI/Models/Requests/PostUsersSigninDataUserPlexAccount.cs - - PlexAPI/Models/Requests/PostUsersSigninDataResponse.cs + - PlexAPI/Models/Requests/PostSignInUserPlexAccount.cs + - PlexAPI/Models/Requests/PostSignInResponse.cs - PlexAPI/Models/Requests/PathParamFilter.cs - PlexAPI/Models/Requests/Libtype.cs - PlexAPI/Models/Requests/IncludeCollections.cs @@ -572,8 +582,8 @@ generatedFiles: - PlexAPI/Models/Errors/CheckForUpdatesResponseBody.cs - PlexAPI/Models/Errors/ApplyUpdatesErrors.cs - PlexAPI/Models/Errors/ApplyUpdatesResponseBody.cs - - PlexAPI/Models/Errors/PostUsersSigninDataErrors.cs - - PlexAPI/Models/Errors/PostUsersSigninDataResponseBody.cs + - PlexAPI/Models/Errors/PostSignInErrors.cs + - PlexAPI/Models/Errors/PostSignInResponseBody.cs - PlexAPI/Models/Errors/GetWatchlistErrors.cs - PlexAPI/Models/Errors/GetWatchlistResponseBody.cs - PlexAPI/Models/Components/Security.cs @@ -664,6 +674,11 @@ generatedFiles: - docs/Models/Requests/GetTokenByPinIdAuthPinContainer.md - docs/Models/Requests/GetTokenByPinIdResponse.md - docs/Models/Requests/MailingListStatus.md + - docs/Models/Requests/AutoSelectSubtitle.md + - docs/Models/Requests/DefaultSubtitleAccessibility.md + - docs/Models/Requests/DefaultSubtitleForced.md + - docs/Models/Requests/WatchedIndicator.md + - docs/Models/Requests/MediaReviewsVisibility.md - docs/Models/Requests/UserProfile.md - docs/Models/Requests/GetUserDetailsStatus.md - docs/Models/Requests/Services.md @@ -915,25 +930,30 @@ generatedFiles: - docs/Models/Requests/Skip.md - docs/Models/Requests/ApplyUpdatesRequest.md - docs/Models/Requests/ApplyUpdatesResponse.md - - docs/Models/Requests/PostUsersSigninDataRequestBody.md - - docs/Models/Requests/PostUsersSigninDataRequest.md - - docs/Models/Requests/PostUsersSigninDataMailingListStatus.md - - docs/Models/Requests/PostUsersSigninDataUserProfile.md - - docs/Models/Requests/PostUsersSigninDataStatus.md - - docs/Models/Requests/PostUsersSigninDataServices.md - - docs/Models/Requests/PostUsersSigninDataFeatures.md - - docs/Models/Requests/PostUsersSigninDataUserStatus.md - - docs/Models/Requests/PostUsersSigninDataSubscription.md - - docs/Models/Requests/PostUsersSigninDataUserFeatures.md - - docs/Models/Requests/PostUsersSigninDataUserResponseStatus.md - - docs/Models/Requests/PostUsersSigninDataUserSubscription.md - - docs/Models/Requests/PostUsersSigninDataState.md + - docs/Models/Requests/PostSignInRequestBody.md + - docs/Models/Requests/PostSignInRequest.md + - docs/Models/Requests/PostSignInMailingListStatus.md + - docs/Models/Requests/PostSignInAutoSelectSubtitle.md + - docs/Models/Requests/PostSignInDefaultSubtitleAccessibility.md + - docs/Models/Requests/PostSignInDefaultSubtitleForced.md + - docs/Models/Requests/PostSignInWatchedIndicator.md + - docs/Models/Requests/PostSignInMediaReviewsVisibility.md + - docs/Models/Requests/PostSignInUserProfile.md + - docs/Models/Requests/PostSignInStatus.md + - docs/Models/Requests/PostSignInServices.md + - docs/Models/Requests/PostSignInFeatures.md + - docs/Models/Requests/PostSignInUserStatus.md + - docs/Models/Requests/PostSignInSubscription.md + - docs/Models/Requests/PostSignInUserFeatures.md + - docs/Models/Requests/PostSignInUserResponseStatus.md + - docs/Models/Requests/PostSignInUserSubscription.md + - docs/Models/Requests/PostSignInState.md - docs/Models/Requests/InternalPaymentMethod.md - docs/Models/Requests/Billing.md - docs/Models/Requests/PastSubscription.md - docs/Models/Requests/Trials.md - - docs/Models/Requests/PostUsersSigninDataUserPlexAccount.md - - docs/Models/Requests/PostUsersSigninDataResponse.md + - docs/Models/Requests/PostSignInUserPlexAccount.md + - docs/Models/Requests/PostSignInResponse.md - docs/Models/Requests/PathParamFilter.md - docs/Models/Requests/Libtype.md - docs/Models/Requests/IncludeCollections.md @@ -1079,8 +1099,8 @@ generatedFiles: - docs/Models/Errors/CheckForUpdatesResponseBody.md - docs/Models/Errors/ApplyUpdatesErrors.md - docs/Models/Errors/ApplyUpdatesResponseBody.md - - docs/Models/Errors/PostUsersSigninDataErrors.md - - docs/Models/Errors/PostUsersSigninDataResponseBody.md + - docs/Models/Errors/PostSignInErrors.md + - docs/Models/Errors/PostSignInResponseBody.md - docs/Models/Errors/GetWatchlistErrors.md - docs/Models/Errors/GetWatchlistResponseBody.md - docs/Models/Components/Security.md diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index dbe9828..6bb7e30 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -12,7 +12,7 @@ generation: auth: oAuth2ClientCredentialsEnabled: true csharp: - version: 0.4.0 + version: 0.4.1 additionalDependencies: [] author: LukeHagar clientServerStatusCodesAsErrors: true diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 2372edd..1a690b7 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -2,8 +2,8 @@ speakeasyVersion: 1.321.0 sources: my-source: sourceNamespace: my-source - sourceRevisionDigest: sha256:15b51e83587ffa99b9534e1343c332817af732e91a7a3317354e5e286abb559b - sourceBlobDigest: sha256:dd6f90b552b01f3e1a76d15a9202d64ba0dcc4cb192794e85213096a7d64a9c4 + sourceRevisionDigest: sha256:f9e2111241453dcdf0c358ee4cc67c2da25786065dfce0778c51e357cca85470 + sourceBlobDigest: sha256:5ebcd8b28a73ab3b3265a5e7a7c43136d2eeccb8fd62f2db4e7aacf3e3e3d2ce tags: - latest - main @@ -11,8 +11,8 @@ targets: plexcsharp: source: my-source sourceNamespace: my-source - sourceRevisionDigest: sha256:15b51e83587ffa99b9534e1343c332817af732e91a7a3317354e5e286abb559b - sourceBlobDigest: sha256:dd6f90b552b01f3e1a76d15a9202d64ba0dcc4cb192794e85213096a7d64a9c4 + sourceRevisionDigest: sha256:f9e2111241453dcdf0c358ee4cc67c2da25786065dfce0778c51e357cca85470 + sourceBlobDigest: sha256:5ebcd8b28a73ab3b3265a5e7a7c43136d2eeccb8fd62f2db4e7aacf3e3e3d2ce outLocation: /github/workspace/repo workflow: workflowVersion: 1.0.0 diff --git a/PlexAPI/Activities.cs b/PlexAPI/Activities.cs index e4886e7..08a15d7 100644 --- a/PlexAPI/Activities.cs +++ b/PlexAPI/Activities.cs @@ -74,10 +74,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Authentication.cs b/PlexAPI/Authentication.cs index 1054285..0ea595d 100644 --- a/PlexAPI/Authentication.cs +++ b/PlexAPI/Authentication.cs @@ -65,10 +65,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Butler.cs b/PlexAPI/Butler.cs index 967ecdf..062cfd6 100644 --- a/PlexAPI/Butler.cs +++ b/PlexAPI/Butler.cs @@ -101,10 +101,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Hubs.cs b/PlexAPI/Hubs.cs index 383168f..7f4a00f 100644 --- a/PlexAPI/Hubs.cs +++ b/PlexAPI/Hubs.cs @@ -63,10 +63,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Library.cs b/PlexAPI/Library.cs index d091a5c..c9f5fc5 100644 --- a/PlexAPI/Library.cs +++ b/PlexAPI/Library.cs @@ -241,10 +241,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Log.cs b/PlexAPI/Log.cs index ab85510..26a55ab 100644 --- a/PlexAPI/Log.cs +++ b/PlexAPI/Log.cs @@ -94,10 +94,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Media.cs b/PlexAPI/Media.cs index 92327d3..c1d53fd 100644 --- a/PlexAPI/Media.cs +++ b/PlexAPI/Media.cs @@ -72,10 +72,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Models/Errors/PostUsersSigninDataErrors.cs b/PlexAPI/Models/Errors/PostSignInErrors.cs similarity index 94% rename from PlexAPI/Models/Errors/PostUsersSigninDataErrors.cs rename to PlexAPI/Models/Errors/PostSignInErrors.cs index 6032460..c801935 100644 --- a/PlexAPI/Models/Errors/PostUsersSigninDataErrors.cs +++ b/PlexAPI/Models/Errors/PostSignInErrors.cs @@ -12,7 +12,7 @@ namespace PlexAPI.Models.Errors using Newtonsoft.Json; using PlexAPI.Utils; - public class PostUsersSigninDataErrors + public class PostSignInErrors { [JsonProperty("code")] diff --git a/PlexAPI/Models/Errors/PostUsersSigninDataResponseBody.cs b/PlexAPI/Models/Errors/PostSignInResponseBody.cs similarity index 88% rename from PlexAPI/Models/Errors/PostUsersSigninDataResponseBody.cs rename to PlexAPI/Models/Errors/PostSignInResponseBody.cs index 026c435..a91d516 100644 --- a/PlexAPI/Models/Errors/PostUsersSigninDataResponseBody.cs +++ b/PlexAPI/Models/Errors/PostSignInResponseBody.cs @@ -19,11 +19,11 @@ namespace PlexAPI.Models.Errors /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public class PostUsersSigninDataResponseBody : Exception + public class PostSignInResponseBody : Exception { [JsonProperty("errors")] - public List? Errors { get; set; } + public List? Errors { get; set; } /// /// Raw HTTP response; suitable for custom response parsing diff --git a/PlexAPI/Models/Requests/AutoSelectSubtitle.cs b/PlexAPI/Models/Requests/AutoSelectSubtitle.cs new file mode 100644 index 0000000..74ffb50 --- /dev/null +++ b/PlexAPI/Models/Requests/AutoSelectSubtitle.cs @@ -0,0 +1,60 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using Newtonsoft.Json; + using PlexAPI.Utils; + using System; + + /// + /// The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) + /// + public enum AutoSelectSubtitle + { + [JsonProperty("0")] + Zero, + [JsonProperty("1")] + One, + } + + public static class AutoSelectSubtitleExtension + { + public static string Value(this AutoSelectSubtitle value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static AutoSelectSubtitle ToEnum(this string value) + { + foreach(var field in typeof(AutoSelectSubtitle).GetFields()) + { + var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); + if (attributes.Length == 0) + { + continue; + } + + var attribute = attributes[0] as JsonPropertyAttribute; + if (attribute != null && attribute.PropertyName == value) + { + var enumVal = field.GetValue(null); + + if (enumVal is AutoSelectSubtitle) + { + return (AutoSelectSubtitle)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum AutoSelectSubtitle"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/DefaultSubtitleAccessibility.cs b/PlexAPI/Models/Requests/DefaultSubtitleAccessibility.cs new file mode 100644 index 0000000..004dc24 --- /dev/null +++ b/PlexAPI/Models/Requests/DefaultSubtitleAccessibility.cs @@ -0,0 +1,60 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using Newtonsoft.Json; + using PlexAPI.Utils; + using System; + + /// + /// The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) + /// + public enum DefaultSubtitleAccessibility + { + [JsonProperty("0")] + Zero, + [JsonProperty("1")] + One, + } + + public static class DefaultSubtitleAccessibilityExtension + { + public static string Value(this DefaultSubtitleAccessibility value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static DefaultSubtitleAccessibility ToEnum(this string value) + { + foreach(var field in typeof(DefaultSubtitleAccessibility).GetFields()) + { + var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); + if (attributes.Length == 0) + { + continue; + } + + var attribute = attributes[0] as JsonPropertyAttribute; + if (attribute != null && attribute.PropertyName == value) + { + var enumVal = field.GetValue(null); + + if (enumVal is DefaultSubtitleAccessibility) + { + return (DefaultSubtitleAccessibility)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum DefaultSubtitleAccessibility"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/DefaultSubtitleForced.cs b/PlexAPI/Models/Requests/DefaultSubtitleForced.cs new file mode 100644 index 0000000..2084c9a --- /dev/null +++ b/PlexAPI/Models/Requests/DefaultSubtitleForced.cs @@ -0,0 +1,60 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using Newtonsoft.Json; + using PlexAPI.Utils; + using System; + + /// + /// The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) + /// + public enum DefaultSubtitleForced + { + [JsonProperty("0")] + Zero, + [JsonProperty("1")] + One, + } + + public static class DefaultSubtitleForcedExtension + { + public static string Value(this DefaultSubtitleForced value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static DefaultSubtitleForced ToEnum(this string value) + { + foreach(var field in typeof(DefaultSubtitleForced).GetFields()) + { + var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); + if (attributes.Length == 0) + { + continue; + } + + var attribute = attributes[0] as JsonPropertyAttribute; + if (attribute != null && attribute.PropertyName == value) + { + var enumVal = field.GetValue(null); + + if (enumVal is DefaultSubtitleForced) + { + return (DefaultSubtitleForced)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum DefaultSubtitleForced"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetUserDetailsSubscription.cs b/PlexAPI/Models/Requests/GetUserDetailsSubscription.cs index 018fc79..122fd15 100644 --- a/PlexAPI/Models/Requests/GetUserDetailsSubscription.cs +++ b/PlexAPI/Models/Requests/GetUserDetailsSubscription.cs @@ -13,7 +13,6 @@ namespace PlexAPI.Models.Requests using PlexAPI.Models.Requests; using PlexAPI.Utils; using System.Collections.Generic; - using System; public class GetUserDetailsSubscription { @@ -34,7 +33,7 @@ namespace PlexAPI.Models.Requests /// Date the account subscribed to Plex Pass /// [JsonProperty("subscribedAt")] - public DateTime? SubscribedAt { get; set; } + public string? SubscribedAt { get; set; } = null; /// /// String representation of subscriptionActive diff --git a/PlexAPI/Models/Requests/GetUserDetailsUserPlexAccount.cs b/PlexAPI/Models/Requests/GetUserDetailsUserPlexAccount.cs index 3d8476a..00d16b7 100644 --- a/PlexAPI/Models/Requests/GetUserDetailsUserPlexAccount.cs +++ b/PlexAPI/Models/Requests/GetUserDetailsUserPlexAccount.cs @@ -173,7 +173,7 @@ namespace PlexAPI.Models.Requests public string? Pin { get; set; } [JsonProperty("profile")] - public List Profile { get; set; } = default!; + public UserProfile Profile { get; set; } = default!; /// /// If the account has a Plex Home PIN enabled diff --git a/PlexAPI/Models/Requests/MailingListStatus.cs b/PlexAPI/Models/Requests/MailingListStatus.cs index ec10aed..e2ca2e1 100644 --- a/PlexAPI/Models/Requests/MailingListStatus.cs +++ b/PlexAPI/Models/Requests/MailingListStatus.cs @@ -18,8 +18,8 @@ namespace PlexAPI.Models.Requests /// public enum MailingListStatus { - [JsonProperty("subscribed")] - Subscribed, + [JsonProperty("active")] + Active, [JsonProperty("unsubscribed")] Unsubscribed, } diff --git a/PlexAPI/Models/Requests/MediaReviewsVisibility.cs b/PlexAPI/Models/Requests/MediaReviewsVisibility.cs new file mode 100644 index 0000000..becad1c --- /dev/null +++ b/PlexAPI/Models/Requests/MediaReviewsVisibility.cs @@ -0,0 +1,20 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using PlexAPI.Utils; + + public enum MediaReviewsVisibility + { + Zero = 0, + One = 1, + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PastSubscription.cs b/PlexAPI/Models/Requests/PastSubscription.cs index ef97fc1..01fe6c4 100644 --- a/PlexAPI/Models/Requests/PastSubscription.cs +++ b/PlexAPI/Models/Requests/PastSubscription.cs @@ -12,7 +12,6 @@ namespace PlexAPI.Models.Requests using Newtonsoft.Json; using PlexAPI.Models.Requests; using PlexAPI.Utils; - using System.Collections.Generic; public class PastSubscription { @@ -63,9 +62,9 @@ namespace PlexAPI.Models.Requests public string? Transfer { get; set; } [JsonProperty("state")] - public PostUsersSigninDataState State { get; set; } = default!; + public PostSignInState State { get; set; } = default!; [JsonProperty("billing")] - public List Billing { get; set; } = default!; + public Billing Billing { get; set; } = default!; } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostSignInAutoSelectSubtitle.cs b/PlexAPI/Models/Requests/PostSignInAutoSelectSubtitle.cs new file mode 100644 index 0000000..220b7a8 --- /dev/null +++ b/PlexAPI/Models/Requests/PostSignInAutoSelectSubtitle.cs @@ -0,0 +1,60 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using Newtonsoft.Json; + using PlexAPI.Utils; + using System; + + /// + /// The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) + /// + public enum PostSignInAutoSelectSubtitle + { + [JsonProperty("0")] + Zero, + [JsonProperty("1")] + One, + } + + public static class PostSignInAutoSelectSubtitleExtension + { + public static string Value(this PostSignInAutoSelectSubtitle value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static PostSignInAutoSelectSubtitle ToEnum(this string value) + { + foreach(var field in typeof(PostSignInAutoSelectSubtitle).GetFields()) + { + var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); + if (attributes.Length == 0) + { + continue; + } + + var attribute = attributes[0] as JsonPropertyAttribute; + if (attribute != null && attribute.PropertyName == value) + { + var enumVal = field.GetValue(null); + + if (enumVal is PostSignInAutoSelectSubtitle) + { + return (PostSignInAutoSelectSubtitle)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum PostSignInAutoSelectSubtitle"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostSignInDefaultSubtitleAccessibility.cs b/PlexAPI/Models/Requests/PostSignInDefaultSubtitleAccessibility.cs new file mode 100644 index 0000000..4180a89 --- /dev/null +++ b/PlexAPI/Models/Requests/PostSignInDefaultSubtitleAccessibility.cs @@ -0,0 +1,60 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using Newtonsoft.Json; + using PlexAPI.Utils; + using System; + + /// + /// The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) + /// + public enum PostSignInDefaultSubtitleAccessibility + { + [JsonProperty("0")] + Zero, + [JsonProperty("1")] + One, + } + + public static class PostSignInDefaultSubtitleAccessibilityExtension + { + public static string Value(this PostSignInDefaultSubtitleAccessibility value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static PostSignInDefaultSubtitleAccessibility ToEnum(this string value) + { + foreach(var field in typeof(PostSignInDefaultSubtitleAccessibility).GetFields()) + { + var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); + if (attributes.Length == 0) + { + continue; + } + + var attribute = attributes[0] as JsonPropertyAttribute; + if (attribute != null && attribute.PropertyName == value) + { + var enumVal = field.GetValue(null); + + if (enumVal is PostSignInDefaultSubtitleAccessibility) + { + return (PostSignInDefaultSubtitleAccessibility)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum PostSignInDefaultSubtitleAccessibility"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostSignInDefaultSubtitleForced.cs b/PlexAPI/Models/Requests/PostSignInDefaultSubtitleForced.cs new file mode 100644 index 0000000..ef8b1a8 --- /dev/null +++ b/PlexAPI/Models/Requests/PostSignInDefaultSubtitleForced.cs @@ -0,0 +1,60 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using Newtonsoft.Json; + using PlexAPI.Utils; + using System; + + /// + /// The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) + /// + public enum PostSignInDefaultSubtitleForced + { + [JsonProperty("0")] + Zero, + [JsonProperty("1")] + One, + } + + public static class PostSignInDefaultSubtitleForcedExtension + { + public static string Value(this PostSignInDefaultSubtitleForced value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static PostSignInDefaultSubtitleForced ToEnum(this string value) + { + foreach(var field in typeof(PostSignInDefaultSubtitleForced).GetFields()) + { + var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); + if (attributes.Length == 0) + { + continue; + } + + var attribute = attributes[0] as JsonPropertyAttribute; + if (attribute != null && attribute.PropertyName == value) + { + var enumVal = field.GetValue(null); + + if (enumVal is PostSignInDefaultSubtitleForced) + { + return (PostSignInDefaultSubtitleForced)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum PostSignInDefaultSubtitleForced"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataFeatures.cs b/PlexAPI/Models/Requests/PostSignInFeatures.cs similarity index 91% rename from PlexAPI/Models/Requests/PostUsersSigninDataFeatures.cs rename to PlexAPI/Models/Requests/PostSignInFeatures.cs index fcaf966..a327d38 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataFeatures.cs +++ b/PlexAPI/Models/Requests/PostSignInFeatures.cs @@ -13,7 +13,7 @@ namespace PlexAPI.Models.Requests using PlexAPI.Utils; using System; - public enum PostUsersSigninDataFeatures + public enum PostSignInFeatures { [JsonProperty("Android - Dolby Vision")] AndroidDolbyVision, @@ -135,16 +135,16 @@ namespace PlexAPI.Models.Requests WebServerDashboard, } - public static class PostUsersSigninDataFeaturesExtension + public static class PostSignInFeaturesExtension { - public static string Value(this PostUsersSigninDataFeatures value) + public static string Value(this PostSignInFeatures value) { return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); } - public static PostUsersSigninDataFeatures ToEnum(this string value) + public static PostSignInFeatures ToEnum(this string value) { - foreach(var field in typeof(PostUsersSigninDataFeatures).GetFields()) + foreach(var field in typeof(PostSignInFeatures).GetFields()) { var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); if (attributes.Length == 0) @@ -157,14 +157,14 @@ namespace PlexAPI.Models.Requests { var enumVal = field.GetValue(null); - if (enumVal is PostUsersSigninDataFeatures) + if (enumVal is PostSignInFeatures) { - return (PostUsersSigninDataFeatures)enumVal; + return (PostSignInFeatures)enumVal; } } } - throw new Exception($"Unknown value {value} for enum PostUsersSigninDataFeatures"); + throw new Exception($"Unknown value {value} for enum PostSignInFeatures"); } } diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataMailingListStatus.cs b/PlexAPI/Models/Requests/PostSignInMailingListStatus.cs similarity index 70% rename from PlexAPI/Models/Requests/PostUsersSigninDataMailingListStatus.cs rename to PlexAPI/Models/Requests/PostSignInMailingListStatus.cs index c933746..3ed8c08 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataMailingListStatus.cs +++ b/PlexAPI/Models/Requests/PostSignInMailingListStatus.cs @@ -16,24 +16,24 @@ namespace PlexAPI.Models.Requests /// /// Your current mailing list status /// - public enum PostUsersSigninDataMailingListStatus + public enum PostSignInMailingListStatus { - [JsonProperty("subscribed")] - Subscribed, + [JsonProperty("active")] + Active, [JsonProperty("unsubscribed")] Unsubscribed, } - public static class PostUsersSigninDataMailingListStatusExtension + public static class PostSignInMailingListStatusExtension { - public static string Value(this PostUsersSigninDataMailingListStatus value) + public static string Value(this PostSignInMailingListStatus value) { return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); } - public static PostUsersSigninDataMailingListStatus ToEnum(this string value) + public static PostSignInMailingListStatus ToEnum(this string value) { - foreach(var field in typeof(PostUsersSigninDataMailingListStatus).GetFields()) + foreach(var field in typeof(PostSignInMailingListStatus).GetFields()) { var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); if (attributes.Length == 0) @@ -46,14 +46,14 @@ namespace PlexAPI.Models.Requests { var enumVal = field.GetValue(null); - if (enumVal is PostUsersSigninDataMailingListStatus) + if (enumVal is PostSignInMailingListStatus) { - return (PostUsersSigninDataMailingListStatus)enumVal; + return (PostSignInMailingListStatus)enumVal; } } } - throw new Exception($"Unknown value {value} for enum PostUsersSigninDataMailingListStatus"); + throw new Exception($"Unknown value {value} for enum PostSignInMailingListStatus"); } } diff --git a/PlexAPI/Models/Requests/PostSignInMediaReviewsVisibility.cs b/PlexAPI/Models/Requests/PostSignInMediaReviewsVisibility.cs new file mode 100644 index 0000000..ad6f8f5 --- /dev/null +++ b/PlexAPI/Models/Requests/PostSignInMediaReviewsVisibility.cs @@ -0,0 +1,20 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using PlexAPI.Utils; + + public enum PostSignInMediaReviewsVisibility + { + Zero = 0, + One = 1, + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataRequest.cs b/PlexAPI/Models/Requests/PostSignInRequest.cs similarity index 90% rename from PlexAPI/Models/Requests/PostUsersSigninDataRequest.cs rename to PlexAPI/Models/Requests/PostSignInRequest.cs index 654ca9a..6e60ac9 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataRequest.cs +++ b/PlexAPI/Models/Requests/PostSignInRequest.cs @@ -12,7 +12,7 @@ namespace PlexAPI.Models.Requests using PlexAPI.Models.Requests; using PlexAPI.Utils; - public class PostUsersSigninDataRequest + public class PostSignInRequest { /// @@ -31,6 +31,6 @@ namespace PlexAPI.Models.Requests /// Login credentials /// [SpeakeasyMetadata("request:mediaType=application/x-www-form-urlencoded")] - public PostUsersSigninDataRequestBody? RequestBody { get; set; } + public PostSignInRequestBody? RequestBody { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataRequestBody.cs b/PlexAPI/Models/Requests/PostSignInRequestBody.cs similarity index 94% rename from PlexAPI/Models/Requests/PostUsersSigninDataRequestBody.cs rename to PlexAPI/Models/Requests/PostSignInRequestBody.cs index bb5fdd0..dc7d200 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataRequestBody.cs +++ b/PlexAPI/Models/Requests/PostSignInRequestBody.cs @@ -14,7 +14,7 @@ namespace PlexAPI.Models.Requests /// /// Login credentials /// - public class PostUsersSigninDataRequestBody + public class PostSignInRequestBody { [SpeakeasyMetadata("form:name=login")] diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataResponse.cs b/PlexAPI/Models/Requests/PostSignInResponse.cs similarity index 90% rename from PlexAPI/Models/Requests/PostUsersSigninDataResponse.cs rename to PlexAPI/Models/Requests/PostSignInResponse.cs index 8064164..a4f161a 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataResponse.cs +++ b/PlexAPI/Models/Requests/PostSignInResponse.cs @@ -14,7 +14,7 @@ namespace PlexAPI.Models.Requests using System.Net.Http; using System; - public class PostUsersSigninDataResponse + public class PostSignInResponse { /// @@ -35,6 +35,6 @@ namespace PlexAPI.Models.Requests /// /// Returns the user account data with a valid auth token /// - public PostUsersSigninDataUserPlexAccount? UserPlexAccount { get; set; } + public PostSignInUserPlexAccount? UserPlexAccount { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataServices.cs b/PlexAPI/Models/Requests/PostSignInServices.cs similarity index 89% rename from PlexAPI/Models/Requests/PostUsersSigninDataServices.cs rename to PlexAPI/Models/Requests/PostSignInServices.cs index 2716b7a..3744584 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataServices.cs +++ b/PlexAPI/Models/Requests/PostSignInServices.cs @@ -13,7 +13,7 @@ namespace PlexAPI.Models.Requests using PlexAPI.Models.Requests; using PlexAPI.Utils; - public class PostUsersSigninDataServices + public class PostSignInServices { [JsonProperty("identifier")] @@ -29,6 +29,6 @@ namespace PlexAPI.Models.Requests public string? Secret { get; set; } [JsonProperty("status")] - public PostUsersSigninDataStatus Status { get; set; } = default!; + public PostSignInStatus Status { get; set; } = default!; } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataState.cs b/PlexAPI/Models/Requests/PostSignInState.cs similarity index 74% rename from PlexAPI/Models/Requests/PostUsersSigninDataState.cs rename to PlexAPI/Models/Requests/PostSignInState.cs index 5b641d3..954bea1 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataState.cs +++ b/PlexAPI/Models/Requests/PostSignInState.cs @@ -13,22 +13,22 @@ namespace PlexAPI.Models.Requests using PlexAPI.Utils; using System; - public enum PostUsersSigninDataState + public enum PostSignInState { [JsonProperty("ended")] Ended, } - public static class PostUsersSigninDataStateExtension + public static class PostSignInStateExtension { - public static string Value(this PostUsersSigninDataState value) + public static string Value(this PostSignInState value) { return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); } - public static PostUsersSigninDataState ToEnum(this string value) + public static PostSignInState ToEnum(this string value) { - foreach(var field in typeof(PostUsersSigninDataState).GetFields()) + foreach(var field in typeof(PostSignInState).GetFields()) { var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); if (attributes.Length == 0) @@ -41,14 +41,14 @@ namespace PlexAPI.Models.Requests { var enumVal = field.GetValue(null); - if (enumVal is PostUsersSigninDataState) + if (enumVal is PostSignInState) { - return (PostUsersSigninDataState)enumVal; + return (PostSignInState)enumVal; } } } - throw new Exception($"Unknown value {value} for enum PostUsersSigninDataState"); + throw new Exception($"Unknown value {value} for enum PostSignInState"); } } diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataStatus.cs b/PlexAPI/Models/Requests/PostSignInStatus.cs similarity index 74% rename from PlexAPI/Models/Requests/PostUsersSigninDataStatus.cs rename to PlexAPI/Models/Requests/PostSignInStatus.cs index 9318d8e..35fe670 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataStatus.cs +++ b/PlexAPI/Models/Requests/PostSignInStatus.cs @@ -13,7 +13,7 @@ namespace PlexAPI.Models.Requests using PlexAPI.Utils; using System; - public enum PostUsersSigninDataStatus + public enum PostSignInStatus { [JsonProperty("online")] Online, @@ -21,16 +21,16 @@ namespace PlexAPI.Models.Requests Offline, } - public static class PostUsersSigninDataStatusExtension + public static class PostSignInStatusExtension { - public static string Value(this PostUsersSigninDataStatus value) + public static string Value(this PostSignInStatus value) { return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); } - public static PostUsersSigninDataStatus ToEnum(this string value) + public static PostSignInStatus ToEnum(this string value) { - foreach(var field in typeof(PostUsersSigninDataStatus).GetFields()) + foreach(var field in typeof(PostSignInStatus).GetFields()) { var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); if (attributes.Length == 0) @@ -43,14 +43,14 @@ namespace PlexAPI.Models.Requests { var enumVal = field.GetValue(null); - if (enumVal is PostUsersSigninDataStatus) + if (enumVal is PostSignInStatus) { - return (PostUsersSigninDataStatus)enumVal; + return (PostSignInStatus)enumVal; } } } - throw new Exception($"Unknown value {value} for enum PostUsersSigninDataStatus"); + throw new Exception($"Unknown value {value} for enum PostSignInStatus"); } } diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataSubscription.cs b/PlexAPI/Models/Requests/PostSignInSubscription.cs similarity index 86% rename from PlexAPI/Models/Requests/PostUsersSigninDataSubscription.cs rename to PlexAPI/Models/Requests/PostSignInSubscription.cs index 590b16a..8f329cb 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataSubscription.cs +++ b/PlexAPI/Models/Requests/PostSignInSubscription.cs @@ -13,19 +13,18 @@ namespace PlexAPI.Models.Requests using PlexAPI.Models.Requests; using PlexAPI.Utils; using System.Collections.Generic; - using System; /// /// If the account’s Plex Pass subscription is active /// - public class PostUsersSigninDataSubscription + public class PostSignInSubscription { /// /// List of features allowed on your Plex Pass subscription /// [JsonProperty("features")] - public List? Features { get; set; } + public List? Features { get; set; } /// /// If the account's Plex Pass subscription is active @@ -37,13 +36,13 @@ namespace PlexAPI.Models.Requests /// Date the account subscribed to Plex Pass /// [JsonProperty("subscribedAt")] - public DateTime? SubscribedAt { get; set; } + public string? SubscribedAt { get; set; } = null; /// /// String representation of subscriptionActive /// [JsonProperty("status")] - public PostUsersSigninDataUserStatus? Status { get; set; } + public PostSignInUserStatus? Status { get; set; } /// /// Payment service used for your Plex Pass subscription diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataUserFeatures.cs b/PlexAPI/Models/Requests/PostSignInUserFeatures.cs similarity index 91% rename from PlexAPI/Models/Requests/PostUsersSigninDataUserFeatures.cs rename to PlexAPI/Models/Requests/PostSignInUserFeatures.cs index a57091e..ec5b490 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataUserFeatures.cs +++ b/PlexAPI/Models/Requests/PostSignInUserFeatures.cs @@ -13,7 +13,7 @@ namespace PlexAPI.Models.Requests using PlexAPI.Utils; using System; - public enum PostUsersSigninDataUserFeatures + public enum PostSignInUserFeatures { [JsonProperty("Android - Dolby Vision")] AndroidDolbyVision, @@ -135,16 +135,16 @@ namespace PlexAPI.Models.Requests WebServerDashboard, } - public static class PostUsersSigninDataUserFeaturesExtension + public static class PostSignInUserFeaturesExtension { - public static string Value(this PostUsersSigninDataUserFeatures value) + public static string Value(this PostSignInUserFeatures value) { return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); } - public static PostUsersSigninDataUserFeatures ToEnum(this string value) + public static PostSignInUserFeatures ToEnum(this string value) { - foreach(var field in typeof(PostUsersSigninDataUserFeatures).GetFields()) + foreach(var field in typeof(PostSignInUserFeatures).GetFields()) { var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); if (attributes.Length == 0) @@ -157,14 +157,14 @@ namespace PlexAPI.Models.Requests { var enumVal = field.GetValue(null); - if (enumVal is PostUsersSigninDataUserFeatures) + if (enumVal is PostSignInUserFeatures) { - return (PostUsersSigninDataUserFeatures)enumVal; + return (PostSignInUserFeatures)enumVal; } } } - throw new Exception($"Unknown value {value} for enum PostUsersSigninDataUserFeatures"); + throw new Exception($"Unknown value {value} for enum PostSignInUserFeatures"); } } diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataUserPlexAccount.cs b/PlexAPI/Models/Requests/PostSignInUserPlexAccount.cs similarity index 94% rename from PlexAPI/Models/Requests/PostUsersSigninDataUserPlexAccount.cs rename to PlexAPI/Models/Requests/PostSignInUserPlexAccount.cs index b009826..4df880b 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataUserPlexAccount.cs +++ b/PlexAPI/Models/Requests/PostSignInUserPlexAccount.cs @@ -18,7 +18,7 @@ namespace PlexAPI.Models.Requests /// /// Returns the user account data with a valid auth token /// - public class PostUsersSigninDataUserPlexAccount + public class PostSignInUserPlexAccount { /// @@ -157,7 +157,7 @@ namespace PlexAPI.Models.Requests /// Your current mailing list status /// [JsonProperty("mailingListStatus")] - public PostUsersSigninDataMailingListStatus MailingListStatus { get; set; } = default!; + public PostSignInMailingListStatus MailingListStatus { get; set; } = default!; /// /// The maximum number of accounts allowed in the Plex Home @@ -173,7 +173,7 @@ namespace PlexAPI.Models.Requests public string? Pin { get; set; } [JsonProperty("profile")] - public List Profile { get; set; } = default!; + public PostSignInUserProfile Profile { get; set; } = default!; /// /// If the account has a Plex Home PIN enabled @@ -206,13 +206,13 @@ namespace PlexAPI.Models.Requests public string ScrobbleTypes { get; set; } = default!; [JsonProperty("services")] - public List Services { get; set; } = default!; + public List Services { get; set; } = default!; /// /// If the account’s Plex Pass subscription is active /// [JsonProperty("subscription")] - public PostUsersSigninDataSubscription Subscription { get; set; } = default!; + public PostSignInSubscription Subscription { get; set; } = default!; /// /// Description of the Plex Pass subscription @@ -221,7 +221,7 @@ namespace PlexAPI.Models.Requests public string? SubscriptionDescription { get; set; } [JsonProperty("subscriptions")] - public List Subscriptions { get; set; } = default!; + public List Subscriptions { get; set; } = default!; /// /// URL of the account thumbnail diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataUserProfile.cs b/PlexAPI/Models/Requests/PostSignInUserProfile.cs similarity index 73% rename from PlexAPI/Models/Requests/PostUsersSigninDataUserProfile.cs rename to PlexAPI/Models/Requests/PostSignInUserProfile.cs index 78d22d1..ea358f6 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataUserProfile.cs +++ b/PlexAPI/Models/Requests/PostSignInUserProfile.cs @@ -10,9 +10,10 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; + using PlexAPI.Models.Requests; using PlexAPI.Utils; - public class PostUsersSigninDataUserProfile + public class PostSignInUserProfile { /// @@ -24,37 +25,37 @@ namespace PlexAPI.Models.Requests /// /// The preferred audio language for the account /// - [JsonProperty("defaultAudioLanguage")] + [JsonProperty("defaultAudioLanguage", NullValueHandling = NullValueHandling.Include)] public string? DefaultAudioLanguage { get; set; } /// /// The preferred subtitle language for the account /// - [JsonProperty("defaultSubtitleLanguage")] + [JsonProperty("defaultSubtitleLanguage", NullValueHandling = NullValueHandling.Include)] public string? DefaultSubtitleLanguage { get; set; } /// /// The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) /// [JsonProperty("autoSelectSubtitle")] - public long? AutoSelectSubtitle { get; set; } + public PostSignInAutoSelectSubtitle? AutoSelectSubtitle { get; set; } /// /// The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) /// [JsonProperty("defaultSubtitleAccessibility")] - public long? DefaultSubtitleAccessibility { get; set; } + public PostSignInDefaultSubtitleAccessibility? DefaultSubtitleAccessibility { get; set; } /// /// The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) /// [JsonProperty("defaultSubtitleForced")] - public long? DefaultSubtitleForced { get; set; } + public PostSignInDefaultSubtitleForced? DefaultSubtitleForced { get; set; } [JsonProperty("watchedIndicator")] - public long? WatchedIndicator { get; set; } + public PostSignInWatchedIndicator? WatchedIndicator { get; set; } [JsonProperty("mediaReviewsVisibility")] - public long? MediaReviewsVisibility { get; set; } + public PostSignInMediaReviewsVisibility? MediaReviewsVisibility { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataUserStatus.cs b/PlexAPI/Models/Requests/PostSignInUserResponseStatus.cs similarity index 74% rename from PlexAPI/Models/Requests/PostUsersSigninDataUserStatus.cs rename to PlexAPI/Models/Requests/PostSignInUserResponseStatus.cs index 40fca22..6b6a0a7 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataUserStatus.cs +++ b/PlexAPI/Models/Requests/PostSignInUserResponseStatus.cs @@ -16,7 +16,7 @@ namespace PlexAPI.Models.Requests /// /// String representation of subscriptionActive /// - public enum PostUsersSigninDataUserStatus + public enum PostSignInUserResponseStatus { [JsonProperty("Inactive")] Inactive, @@ -24,16 +24,16 @@ namespace PlexAPI.Models.Requests Active, } - public static class PostUsersSigninDataUserStatusExtension + public static class PostSignInUserResponseStatusExtension { - public static string Value(this PostUsersSigninDataUserStatus value) + public static string Value(this PostSignInUserResponseStatus value) { return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); } - public static PostUsersSigninDataUserStatus ToEnum(this string value) + public static PostSignInUserResponseStatus ToEnum(this string value) { - foreach(var field in typeof(PostUsersSigninDataUserStatus).GetFields()) + foreach(var field in typeof(PostSignInUserResponseStatus).GetFields()) { var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); if (attributes.Length == 0) @@ -46,14 +46,14 @@ namespace PlexAPI.Models.Requests { var enumVal = field.GetValue(null); - if (enumVal is PostUsersSigninDataUserStatus) + if (enumVal is PostSignInUserResponseStatus) { - return (PostUsersSigninDataUserStatus)enumVal; + return (PostSignInUserResponseStatus)enumVal; } } } - throw new Exception($"Unknown value {value} for enum PostUsersSigninDataUserStatus"); + throw new Exception($"Unknown value {value} for enum PostSignInUserResponseStatus"); } } diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataUserResponseStatus.cs b/PlexAPI/Models/Requests/PostSignInUserStatus.cs similarity index 72% rename from PlexAPI/Models/Requests/PostUsersSigninDataUserResponseStatus.cs rename to PlexAPI/Models/Requests/PostSignInUserStatus.cs index efbf8a0..a7a00b8 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataUserResponseStatus.cs +++ b/PlexAPI/Models/Requests/PostSignInUserStatus.cs @@ -16,7 +16,7 @@ namespace PlexAPI.Models.Requests /// /// String representation of subscriptionActive /// - public enum PostUsersSigninDataUserResponseStatus + public enum PostSignInUserStatus { [JsonProperty("Inactive")] Inactive, @@ -24,16 +24,16 @@ namespace PlexAPI.Models.Requests Active, } - public static class PostUsersSigninDataUserResponseStatusExtension + public static class PostSignInUserStatusExtension { - public static string Value(this PostUsersSigninDataUserResponseStatus value) + public static string Value(this PostSignInUserStatus value) { return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); } - public static PostUsersSigninDataUserResponseStatus ToEnum(this string value) + public static PostSignInUserStatus ToEnum(this string value) { - foreach(var field in typeof(PostUsersSigninDataUserResponseStatus).GetFields()) + foreach(var field in typeof(PostSignInUserStatus).GetFields()) { var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); if (attributes.Length == 0) @@ -46,14 +46,14 @@ namespace PlexAPI.Models.Requests { var enumVal = field.GetValue(null); - if (enumVal is PostUsersSigninDataUserResponseStatus) + if (enumVal is PostSignInUserStatus) { - return (PostUsersSigninDataUserResponseStatus)enumVal; + return (PostSignInUserStatus)enumVal; } } } - throw new Exception($"Unknown value {value} for enum PostUsersSigninDataUserResponseStatus"); + throw new Exception($"Unknown value {value} for enum PostSignInUserStatus"); } } diff --git a/PlexAPI/Models/Requests/PostUsersSigninDataUserSubscription.cs b/PlexAPI/Models/Requests/PostSignInUserSubscription.cs similarity index 85% rename from PlexAPI/Models/Requests/PostUsersSigninDataUserSubscription.cs rename to PlexAPI/Models/Requests/PostSignInUserSubscription.cs index 44f54d6..33e5873 100644 --- a/PlexAPI/Models/Requests/PostUsersSigninDataUserSubscription.cs +++ b/PlexAPI/Models/Requests/PostSignInUserSubscription.cs @@ -13,16 +13,15 @@ namespace PlexAPI.Models.Requests using PlexAPI.Models.Requests; using PlexAPI.Utils; using System.Collections.Generic; - using System; - public class PostUsersSigninDataUserSubscription + public class PostSignInUserSubscription { /// /// List of features allowed on your Plex Pass subscription /// [JsonProperty("features")] - public List? Features { get; set; } + public List? Features { get; set; } /// /// If the account's Plex Pass subscription is active @@ -34,13 +33,13 @@ namespace PlexAPI.Models.Requests /// Date the account subscribed to Plex Pass /// [JsonProperty("subscribedAt")] - public DateTime? SubscribedAt { get; set; } + public string? SubscribedAt { get; set; } = null; /// /// String representation of subscriptionActive /// [JsonProperty("status")] - public PostUsersSigninDataUserResponseStatus? Status { get; set; } + public PostSignInUserResponseStatus? Status { get; set; } /// /// Payment service used for your Plex Pass subscription diff --git a/PlexAPI/Models/Requests/PostSignInWatchedIndicator.cs b/PlexAPI/Models/Requests/PostSignInWatchedIndicator.cs new file mode 100644 index 0000000..b872f77 --- /dev/null +++ b/PlexAPI/Models/Requests/PostSignInWatchedIndicator.cs @@ -0,0 +1,57 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using Newtonsoft.Json; + using PlexAPI.Utils; + using System; + + public enum PostSignInWatchedIndicator + { + [JsonProperty("0")] + Zero, + [JsonProperty("1")] + One, + } + + public static class PostSignInWatchedIndicatorExtension + { + public static string Value(this PostSignInWatchedIndicator value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static PostSignInWatchedIndicator ToEnum(this string value) + { + foreach(var field in typeof(PostSignInWatchedIndicator).GetFields()) + { + var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); + if (attributes.Length == 0) + { + continue; + } + + var attribute = attributes[0] as JsonPropertyAttribute; + if (attribute != null && attribute.PropertyName == value) + { + var enumVal = field.GetValue(null); + + if (enumVal is PostSignInWatchedIndicator) + { + return (PostSignInWatchedIndicator)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum PostSignInWatchedIndicator"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Subscription.cs b/PlexAPI/Models/Requests/Subscription.cs index 80d346e..0972ef6 100644 --- a/PlexAPI/Models/Requests/Subscription.cs +++ b/PlexAPI/Models/Requests/Subscription.cs @@ -13,7 +13,6 @@ namespace PlexAPI.Models.Requests using PlexAPI.Models.Requests; using PlexAPI.Utils; using System.Collections.Generic; - using System; /// /// If the account’s Plex Pass subscription is active @@ -37,7 +36,7 @@ namespace PlexAPI.Models.Requests /// Date the account subscribed to Plex Pass /// [JsonProperty("subscribedAt")] - public DateTime? SubscribedAt { get; set; } + public string? SubscribedAt { get; set; } = null; /// /// String representation of subscriptionActive diff --git a/PlexAPI/Models/Requests/UserProfile.cs b/PlexAPI/Models/Requests/UserProfile.cs index 61c770d..197e18e 100644 --- a/PlexAPI/Models/Requests/UserProfile.cs +++ b/PlexAPI/Models/Requests/UserProfile.cs @@ -10,6 +10,7 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; + using PlexAPI.Models.Requests; using PlexAPI.Utils; public class UserProfile @@ -24,37 +25,37 @@ namespace PlexAPI.Models.Requests /// /// The preferred audio language for the account /// - [JsonProperty("defaultAudioLanguage")] + [JsonProperty("defaultAudioLanguage", NullValueHandling = NullValueHandling.Include)] public string? DefaultAudioLanguage { get; set; } /// /// The preferred subtitle language for the account /// - [JsonProperty("defaultSubtitleLanguage")] + [JsonProperty("defaultSubtitleLanguage", NullValueHandling = NullValueHandling.Include)] public string? DefaultSubtitleLanguage { get; set; } /// /// The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) /// [JsonProperty("autoSelectSubtitle")] - public long? AutoSelectSubtitle { get; set; } + public AutoSelectSubtitle? AutoSelectSubtitle { get; set; } /// /// The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) /// [JsonProperty("defaultSubtitleAccessibility")] - public long? DefaultSubtitleAccessibility { get; set; } + public DefaultSubtitleAccessibility? DefaultSubtitleAccessibility { get; set; } /// /// The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) /// [JsonProperty("defaultSubtitleForced")] - public long? DefaultSubtitleForced { get; set; } + public DefaultSubtitleForced? DefaultSubtitleForced { get; set; } [JsonProperty("watchedIndicator")] - public long? WatchedIndicator { get; set; } + public WatchedIndicator? WatchedIndicator { get; set; } [JsonProperty("mediaReviewsVisibility")] - public long? MediaReviewsVisibility { get; set; } + public MediaReviewsVisibility? MediaReviewsVisibility { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/WatchedIndicator.cs b/PlexAPI/Models/Requests/WatchedIndicator.cs new file mode 100644 index 0000000..c32907e --- /dev/null +++ b/PlexAPI/Models/Requests/WatchedIndicator.cs @@ -0,0 +1,57 @@ +//------------------------------------------------------------------------------ +// +// 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 PlexAPI.Models.Requests +{ + using Newtonsoft.Json; + using PlexAPI.Utils; + using System; + + public enum WatchedIndicator + { + [JsonProperty("0")] + Zero, + [JsonProperty("1")] + One, + } + + public static class WatchedIndicatorExtension + { + public static string Value(this WatchedIndicator value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static WatchedIndicator ToEnum(this string value) + { + foreach(var field in typeof(WatchedIndicator).GetFields()) + { + var attributes = field.GetCustomAttributes(typeof(JsonPropertyAttribute), false); + if (attributes.Length == 0) + { + continue; + } + + var attribute = attributes[0] as JsonPropertyAttribute; + if (attribute != null && attribute.PropertyName == value) + { + var enumVal = field.GetValue(null); + + if (enumVal is WatchedIndicator) + { + return (WatchedIndicator)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum WatchedIndicator"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Playlists.cs b/PlexAPI/Playlists.cs index 44f727f..0ac89c7 100644 --- a/PlexAPI/Playlists.cs +++ b/PlexAPI/Playlists.cs @@ -146,10 +146,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Plex.cs b/PlexAPI/Plex.cs index 8fd6cc5..492c5a7 100644 --- a/PlexAPI/Plex.cs +++ b/PlexAPI/Plex.cs @@ -158,10 +158,10 @@ namespace PlexAPI }; public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/PlexAPI.csproj b/PlexAPI/PlexAPI.csproj index 91c8413..395ce61 100644 --- a/PlexAPI/PlexAPI.csproj +++ b/PlexAPI/PlexAPI.csproj @@ -3,7 +3,7 @@ true PlexAPI - 0.4.0 + 0.4.1 net5.0 LukeHagar Copyright (c) LukeHagar 2024 diff --git a/PlexAPI/PlexAPISDK.cs b/PlexAPI/PlexAPISDK.cs index 6e059f0..755bf78 100644 --- a/PlexAPI/PlexAPISDK.cs +++ b/PlexAPI/PlexAPISDK.cs @@ -277,10 +277,10 @@ namespace PlexAPI public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private int _serverIndex = 0; private ISpeakeasyHttpClient _client; diff --git a/PlexAPI/Search.cs b/PlexAPI/Search.cs index 72dc761..2dfceb7 100644 --- a/PlexAPI/Search.cs +++ b/PlexAPI/Search.cs @@ -87,10 +87,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Server.cs b/PlexAPI/Server.cs index 3e3dfcc..a72a478 100644 --- a/PlexAPI/Server.cs +++ b/PlexAPI/Server.cs @@ -117,10 +117,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Sessions.cs b/PlexAPI/Sessions.cs index feeeff8..3b480a0 100644 --- a/PlexAPI/Sessions.cs +++ b/PlexAPI/Sessions.cs @@ -80,10 +80,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Statistics.cs b/PlexAPI/Statistics.cs index 8ac0560..9e1c59e 100644 --- a/PlexAPI/Statistics.cs +++ b/PlexAPI/Statistics.cs @@ -71,10 +71,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Updater.cs b/PlexAPI/Updater.cs index 69dcc4b..3d20f00 100644 --- a/PlexAPI/Updater.cs +++ b/PlexAPI/Updater.cs @@ -74,10 +74,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/User.cs b/PlexAPI/User.cs index 53e4813..b3aa005 100644 --- a/PlexAPI/User.cs +++ b/PlexAPI/User.cs @@ -39,7 +39,7 @@ namespace PlexAPI /// Sign in user with username and password and return user data with Plex authentication token /// /// - Task PostUsersSigninDataAsync(string? xPlexClientIdentifier = null, PostUsersSigninDataRequestBody? requestBody = null, string? serverUrl = null); + Task PostSignInAsync(string? xPlexClientIdentifier = null, PostSignInRequestBody? requestBody = null, string? serverUrl = null); } /// @@ -52,17 +52,17 @@ namespace PlexAPI public class User: IUser { /// - /// List of server URLs available for the post-users-signin-data operation. + /// List of server URLs available for the post-sign-in operation. /// - public static readonly string[] PostUsersSigninDataServerList = { + public static readonly string[] PostSignInServerList = { "https://plex.tv/api/v2", }; public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; @@ -75,16 +75,16 @@ namespace PlexAPI SDKConfiguration = config; } - public async Task PostUsersSigninDataAsync(string? xPlexClientIdentifier = null, PostUsersSigninDataRequestBody? requestBody = null, string? serverUrl = null) + public async Task PostSignInAsync(string? xPlexClientIdentifier = null, PostSignInRequestBody? requestBody = null, string? serverUrl = null) { - var request = new PostUsersSigninDataRequest() + var request = new PostSignInRequest() { XPlexClientIdentifier = xPlexClientIdentifier, RequestBody = requestBody, }; request.XPlexClientIdentifier ??= SDKConfiguration.XPlexClientIdentifier; - string baseUrl = Utilities.TemplateUrl(PostUsersSigninDataServerList[0], new Dictionary(){ + string baseUrl = Utilities.TemplateUrl(PostSignInServerList[0], new Dictionary(){ }); if (serverUrl != null) { @@ -103,7 +103,7 @@ namespace PlexAPI httpRequest.Content = serializedBody; } - var hookCtx = new HookContext("post-users-signin-data", null, null); + var hookCtx = new HookContext("post-sign-in", null, null); httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest); @@ -143,8 +143,8 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json", contentType)) { - var obj = ResponseBodyDeserializer.Deserialize(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore); - var response = new PostUsersSigninDataResponse() + var obj = ResponseBodyDeserializer.Deserialize(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore); + var response = new PostSignInResponse() { StatusCode = responseStatusCode, ContentType = contentType, @@ -166,7 +166,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json", contentType)) { - var obj = ResponseBodyDeserializer.Deserialize(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore); + var obj = ResponseBodyDeserializer.Deserialize(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore); obj!.RawResponse = httpResponse; throw obj!; } diff --git a/PlexAPI/Video.cs b/PlexAPI/Video.cs index e90bd7d..d0f490a 100644 --- a/PlexAPI/Video.cs +++ b/PlexAPI/Video.cs @@ -62,10 +62,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/PlexAPI/Watchlist.cs b/PlexAPI/Watchlist.cs index 4da00c7..affda06 100644 --- a/PlexAPI/Watchlist.cs +++ b/PlexAPI/Watchlist.cs @@ -59,10 +59,10 @@ namespace PlexAPI }; public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.4.0"; - private const string _sdkGenVersion = "2.404.2"; + private const string _sdkVersion = "0.4.1"; + private const string _sdkGenVersion = "2.404.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.4.0 2.404.2 0.0.3 PlexAPI"; + private const string _userAgent = "speakeasy-sdk/csharp 0.4.1 2.404.3 0.0.3 PlexAPI"; private string _serverUrl = ""; private ISpeakeasyHttpClient _client; private Func? _securitySource; diff --git a/README.md b/README.md index 56b906c..881ec85 100644 --- a/README.md +++ b/README.md @@ -161,7 +161,7 @@ var res = await sdk.Server.GetServerCapabilitiesAsync(); ### [User](docs/sdks/user/README.md) -* [PostUsersSigninData](docs/sdks/user/README.md#postuserssignindata) - Get User SignIn Data +* [PostSignIn](docs/sdks/user/README.md#postsignin) - Get User SignIn Data ### [Watchlist](docs/sdks/watchlist/README.md) diff --git a/RELEASES.md b/RELEASES.md index 33d0c2d..95558f5 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -64,4 +64,14 @@ Based on: ### Generated - [csharp v0.4.0] . ### Releases -- [NuGet v0.4.0] https://www.nuget.org/packages/PlexAPI/0.4.0 - . \ No newline at end of file +- [NuGet v0.4.0] https://www.nuget.org/packages/PlexAPI/0.4.0 - . + +## 2024-08-25 00:09:48 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.378.1 (2.404.3) https://github.com/speakeasy-api/speakeasy +### Generated +- [csharp v0.4.1] . +### Releases +- [NuGet v0.4.1] https://www.nuget.org/packages/PlexAPI/0.4.1 - . \ No newline at end of file diff --git a/docs/Models/Errors/PostUsersSigninDataErrors.md b/docs/Models/Errors/PostSignInErrors.md similarity index 96% rename from docs/Models/Errors/PostUsersSigninDataErrors.md rename to docs/Models/Errors/PostSignInErrors.md index 0ac2c9e..670409f 100644 --- a/docs/Models/Errors/PostUsersSigninDataErrors.md +++ b/docs/Models/Errors/PostSignInErrors.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataErrors +# PostSignInErrors ## Fields diff --git a/docs/Models/Errors/PostUsersSigninDataResponseBody.md b/docs/Models/Errors/PostSignInResponseBody.md similarity index 92% rename from docs/Models/Errors/PostUsersSigninDataResponseBody.md rename to docs/Models/Errors/PostSignInResponseBody.md index 03fbbbe..ee04a7d 100644 --- a/docs/Models/Errors/PostUsersSigninDataResponseBody.md +++ b/docs/Models/Errors/PostSignInResponseBody.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataResponseBody +# PostSignInResponseBody Unauthorized - Returned if the X-Plex-Token is missing from the header or query. @@ -7,5 +7,5 @@ Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `Errors` | List<[PostUsersSigninDataErrors](../../Models/Errors/PostUsersSigninDataErrors.md)> | :heavy_minus_sign: | N/A | +| `Errors` | List<[PostSignInErrors](../../Models/Errors/PostSignInErrors.md)> | :heavy_minus_sign: | N/A | | `RawResponse` | [HttpResponseMessage](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpresponsemessage?view=net-5.0) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/docs/Models/Requests/AutoSelectSubtitle.md b/docs/Models/Requests/AutoSelectSubtitle.md new file mode 100644 index 0000000..d72ead1 --- /dev/null +++ b/docs/Models/Requests/AutoSelectSubtitle.md @@ -0,0 +1,11 @@ +# AutoSelectSubtitle + +The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/DefaultSubtitleAccessibility.md b/docs/Models/Requests/DefaultSubtitleAccessibility.md new file mode 100644 index 0000000..07a0180 --- /dev/null +++ b/docs/Models/Requests/DefaultSubtitleAccessibility.md @@ -0,0 +1,11 @@ +# DefaultSubtitleAccessibility + +The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/DefaultSubtitleForced.md b/docs/Models/Requests/DefaultSubtitleForced.md new file mode 100644 index 0000000..99dbddb --- /dev/null +++ b/docs/Models/Requests/DefaultSubtitleForced.md @@ -0,0 +1,11 @@ +# DefaultSubtitleForced + +The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/GetUserDetailsSubscription.md b/docs/Models/Requests/GetUserDetailsSubscription.md index 9db9381..e9c7713 100644 --- a/docs/Models/Requests/GetUserDetailsSubscription.md +++ b/docs/Models/Requests/GetUserDetailsSubscription.md @@ -7,7 +7,7 @@ | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | | `Features` | List<[GetUserDetailsFeatures](../../Models/Requests/GetUserDetailsFeatures.md)> | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | | | `Active` | *bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true | -| `SubscribedAt` | [DateTime](https://learn.microsoft.com/en-us/dotnet/api/system.datetime?view=net-5.0) | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z | +| `SubscribedAt` | *string* | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z | | `Status` | [GetUserDetailsPlexResponseStatus](../../Models/Requests/GetUserDetailsPlexResponseStatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive | | `PaymentService` | *string* | :heavy_minus_sign: | Payment service used for your Plex Pass subscription | | | `Plan` | *string* | :heavy_minus_sign: | Name of Plex Pass subscription plan | | \ No newline at end of file diff --git a/docs/Models/Requests/GetUserDetailsUserPlexAccount.md b/docs/Models/Requests/GetUserDetailsUserPlexAccount.md index 45fb4c1..9ce1afe 100644 --- a/docs/Models/Requests/GetUserDetailsUserPlexAccount.md +++ b/docs/Models/Requests/GetUserDetailsUserPlexAccount.md @@ -32,7 +32,7 @@ Logged in user details | `MailingListStatus` | [MailingListStatus](../../Models/Requests/MailingListStatus.md) | :heavy_check_mark: | Your current mailing list status | | | `MaxHomeSize` | *int* | :heavy_check_mark: | The maximum number of accounts allowed in the Plex Home | 15 | | ~~`Pin`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

[Might be removed] The hashed Plex Home PIN | | -| `Profile` | List<[UserProfile](../../Models/Requests/UserProfile.md)> | :heavy_check_mark: | N/A | | +| `Profile` | [UserProfile](../../Models/Requests/UserProfile.md) | :heavy_check_mark: | N/A | | | `Protected` | *bool* | :heavy_minus_sign: | If the account has a Plex Home PIN enabled | | | `RememberExpiresAt` | *int* | :heavy_check_mark: | Unix epoch datetime the authtoken expires | 1722364046 | | `Restricted` | *bool* | :heavy_minus_sign: | If the account is a Plex Home managed user | | diff --git a/docs/Models/Requests/MailingListStatus.md b/docs/Models/Requests/MailingListStatus.md index bb5d4ea..be5eab4 100644 --- a/docs/Models/Requests/MailingListStatus.md +++ b/docs/Models/Requests/MailingListStatus.md @@ -7,5 +7,5 @@ Your current mailing list status | Name | Value | | -------------- | -------------- | -| `Subscribed` | subscribed | +| `Active` | active | | `Unsubscribed` | unsubscribed | \ No newline at end of file diff --git a/docs/Models/Requests/MediaReviewsVisibility.md b/docs/Models/Requests/MediaReviewsVisibility.md new file mode 100644 index 0000000..4d78804 --- /dev/null +++ b/docs/Models/Requests/MediaReviewsVisibility.md @@ -0,0 +1,9 @@ +# MediaReviewsVisibility + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/PastSubscription.md b/docs/Models/Requests/PastSubscription.md index 7c62b4d..a1f0968 100644 --- a/docs/Models/Requests/PastSubscription.md +++ b/docs/Models/Requests/PastSubscription.md @@ -3,20 +3,20 @@ ## Fields -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `Id` | *string* | :heavy_check_mark: | N/A | | -| `Mode` | *string* | :heavy_check_mark: | N/A | | -| `RenewsAt` | *int* | :heavy_check_mark: | Unix epoch datetime | | -| `EndsAt` | *int* | :heavy_check_mark: | Unix epoch datetime | 1556281940 | -| `Canceled` | *bool* | :heavy_minus_sign: | N/A | false | -| `GracePeriod` | *bool* | :heavy_minus_sign: | N/A | false | -| `OnHold` | *bool* | :heavy_minus_sign: | N/A | false | -| `CanReactivate` | *bool* | :heavy_minus_sign: | N/A | false | -| `CanUpgrade` | *bool* | :heavy_minus_sign: | N/A | false | -| `CanDowngrade` | *bool* | :heavy_minus_sign: | N/A | false | -| `CanConvert` | *bool* | :heavy_minus_sign: | N/A | false | -| `Type` | *string* | :heavy_check_mark: | N/A | plexpass | -| `Transfer` | *string* | :heavy_check_mark: | N/A | | -| `State` | [PostUsersSigninDataState](../../Models/Requests/PostUsersSigninDataState.md) | :heavy_check_mark: | N/A | ended | -| `Billing` | List<[Billing](../../Models/Requests/Billing.md)> | :heavy_check_mark: | N/A | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | +| `Id` | *string* | :heavy_check_mark: | N/A | | +| `Mode` | *string* | :heavy_check_mark: | N/A | | +| `RenewsAt` | *int* | :heavy_check_mark: | Unix epoch datetime | | +| `EndsAt` | *int* | :heavy_check_mark: | Unix epoch datetime | 1556281940 | +| `Canceled` | *bool* | :heavy_minus_sign: | N/A | false | +| `GracePeriod` | *bool* | :heavy_minus_sign: | N/A | false | +| `OnHold` | *bool* | :heavy_minus_sign: | N/A | false | +| `CanReactivate` | *bool* | :heavy_minus_sign: | N/A | false | +| `CanUpgrade` | *bool* | :heavy_minus_sign: | N/A | false | +| `CanDowngrade` | *bool* | :heavy_minus_sign: | N/A | false | +| `CanConvert` | *bool* | :heavy_minus_sign: | N/A | false | +| `Type` | *string* | :heavy_check_mark: | N/A | plexpass | +| `Transfer` | *string* | :heavy_check_mark: | N/A | | +| `State` | [PostSignInState](../../Models/Requests/PostSignInState.md) | :heavy_check_mark: | N/A | ended | +| `Billing` | [Billing](../../Models/Requests/Billing.md) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/Models/Requests/PostSignInAutoSelectSubtitle.md b/docs/Models/Requests/PostSignInAutoSelectSubtitle.md new file mode 100644 index 0000000..b9d04dd --- /dev/null +++ b/docs/Models/Requests/PostSignInAutoSelectSubtitle.md @@ -0,0 +1,11 @@ +# PostSignInAutoSelectSubtitle + +The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/PostSignInDefaultSubtitleAccessibility.md b/docs/Models/Requests/PostSignInDefaultSubtitleAccessibility.md new file mode 100644 index 0000000..4da92ae --- /dev/null +++ b/docs/Models/Requests/PostSignInDefaultSubtitleAccessibility.md @@ -0,0 +1,11 @@ +# PostSignInDefaultSubtitleAccessibility + +The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/PostSignInDefaultSubtitleForced.md b/docs/Models/Requests/PostSignInDefaultSubtitleForced.md new file mode 100644 index 0000000..907b53f --- /dev/null +++ b/docs/Models/Requests/PostSignInDefaultSubtitleForced.md @@ -0,0 +1,11 @@ +# PostSignInDefaultSubtitleForced + +The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataFeatures.md b/docs/Models/Requests/PostSignInFeatures.md similarity index 99% rename from docs/Models/Requests/PostUsersSigninDataFeatures.md rename to docs/Models/Requests/PostSignInFeatures.md index 24bfb85..211003d 100644 --- a/docs/Models/Requests/PostUsersSigninDataFeatures.md +++ b/docs/Models/Requests/PostSignInFeatures.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataFeatures +# PostSignInFeatures ## Values diff --git a/docs/Models/Requests/PostUsersSigninDataMailingListStatus.md b/docs/Models/Requests/PostSignInMailingListStatus.md similarity index 67% rename from docs/Models/Requests/PostUsersSigninDataMailingListStatus.md rename to docs/Models/Requests/PostSignInMailingListStatus.md index b86710a..8892293 100644 --- a/docs/Models/Requests/PostUsersSigninDataMailingListStatus.md +++ b/docs/Models/Requests/PostSignInMailingListStatus.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataMailingListStatus +# PostSignInMailingListStatus Your current mailing list status @@ -7,5 +7,5 @@ Your current mailing list status | Name | Value | | -------------- | -------------- | -| `Subscribed` | subscribed | +| `Active` | active | | `Unsubscribed` | unsubscribed | \ No newline at end of file diff --git a/docs/Models/Requests/PostSignInMediaReviewsVisibility.md b/docs/Models/Requests/PostSignInMediaReviewsVisibility.md new file mode 100644 index 0000000..eca590f --- /dev/null +++ b/docs/Models/Requests/PostSignInMediaReviewsVisibility.md @@ -0,0 +1,9 @@ +# PostSignInMediaReviewsVisibility + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataRequest.md b/docs/Models/Requests/PostSignInRequest.md similarity index 93% rename from docs/Models/Requests/PostUsersSigninDataRequest.md rename to docs/Models/Requests/PostSignInRequest.md index 6912eac..cae742d 100644 --- a/docs/Models/Requests/PostUsersSigninDataRequest.md +++ b/docs/Models/Requests/PostSignInRequest.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataRequest +# PostSignInRequest ## Fields @@ -6,4 +6,4 @@ | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `XPlexClientIdentifier` | *string* | :heavy_minus_sign: | The unique identifier for the client application
This is used to track the client application and its usage
(UUID, serial number, or other number unique per device)
| Postman | -| `RequestBody` | [PostUsersSigninDataRequestBody](../../Models/Requests/PostUsersSigninDataRequestBody.md) | :heavy_minus_sign: | Login credentials | | \ No newline at end of file +| `RequestBody` | [PostSignInRequestBody](../../Models/Requests/PostSignInRequestBody.md) | :heavy_minus_sign: | Login credentials | | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataRequestBody.md b/docs/Models/Requests/PostSignInRequestBody.md similarity index 94% rename from docs/Models/Requests/PostUsersSigninDataRequestBody.md rename to docs/Models/Requests/PostSignInRequestBody.md index 6b8ebf8..2e7dd03 100644 --- a/docs/Models/Requests/PostUsersSigninDataRequestBody.md +++ b/docs/Models/Requests/PostSignInRequestBody.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataRequestBody +# PostSignInRequestBody Login credentials diff --git a/docs/Models/Requests/PostUsersSigninDataResponse.md b/docs/Models/Requests/PostSignInResponse.md similarity index 99% rename from docs/Models/Requests/PostUsersSigninDataResponse.md rename to docs/Models/Requests/PostSignInResponse.md index d3a26c2..6eed173 100644 --- a/docs/Models/Requests/PostUsersSigninDataResponse.md +++ b/docs/Models/Requests/PostSignInResponse.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataResponse +# PostSignInResponse ## Fields @@ -8,4 +8,4 @@ | `ContentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | | | `StatusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | | `RawResponse` | [HttpResponseMessage](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpresponsemessage?view=net-5.0) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | | -| `UserPlexAccount` | [PostUsersSigninDataUserPlexAccount](../../Models/Requests/PostUsersSigninDataUserPlexAccount.md) | :heavy_minus_sign: | Returns the user account data with a valid auth token | {
"adsConsent": true,
"adsConsentReminderAt": "2019-08-24T14:15:22Z",
"adsConsentSetAt": "2019-08-24T14:15:22Z",
"anonymous": false,
"authToken": "CxoUzBTSV5hsxjTpFKaf",
"backupCodesCreated": false,
"confirmed": false,
"country": "US",
"email": "username@email.com",
"emailOnlyAuth": false,
"experimentalFeatures": false,
"friendlyName": "friendlyUsername",
"entitlements": [],
"guest": false,
"hasPassword": true,
"home": false,
"homeAdmin": false,
"homeSize": 1,
"id": 13692262,
"joinedAt": 1721154902,
"locale": null,
"mailingListActive": false,
"mailingListStatus": "subscribed",
"maxHomeSize": 15,
"pastSubscriptions": [
{
"id": "string",
"mode": "string",
"renewsAt": "string",
"endsAt": "1556281940",
"canceled": "0",
"gracePeriod": "0",
"onHold": "0",
"canReactivate": "0",
"canUpgrade": "0",
"canDowngrade": "0",
"canConvert": "0",
"type": "plexpass",
"transfer": "string",
"state": "ended",
"billing": [
{
"internalPaymentMethod": "string",
"paymentMethodId": "string"
}
]
}
],
"pin": "string",
"profile": [
{
"autoSelectAudio": true,
"defaultAudioLanguage": "ja",
"defaultSubtitleLanguage": "en",
"autoSelectSubtitle": 1,
"defaultSubtitleAccessibility": 1,
"defaultSubtitleForced": 0,
"watchedIndicator": 1,
"mediaReviewsVisibility": 0
}
],
"protected": false,
"rememberExpiresAt": 1722364046,
"restricted": false,
"roles": [
"string"
],
"scrobbleTypes": "",
"services": [
{
"identifier": "metadata-dev",
"endpoint": "https://epg.provider.plex.tv",
"token": "DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv",
"secret": "string",
"status": "online"
}
],
"subscription": {
"features": [
"Android - Dolby Vision"
],
"active": true,
"subscribedAt": "2021-04-12T18:21:12Z",
"status": "Inactive",
"paymentService": "string",
"plan": "string"
},
"subscriptionDescription": "string",
"subscriptions": [
{
"features": [
"Android - Dolby Vision"
],
"active": true,
"subscribedAt": "2021-04-12T18:21:12Z",
"status": "Inactive",
"paymentService": "string",
"plan": "string"
}
],
"thumb": "https://plex.tv/users/a4f43c1ebfde43a5/avatar?c=8372075101",
"title": "UsernameTitle",
"trials": [
{}
],
"twoFactorEnabled": false,
"username": "Username",
"uuid": "dae343c1f45beb4f"
} | \ No newline at end of file +| `UserPlexAccount` | [PostSignInUserPlexAccount](../../Models/Requests/PostSignInUserPlexAccount.md) | :heavy_minus_sign: | Returns the user account data with a valid auth token | {
"adsConsent": true,
"adsConsentReminderAt": "2019-08-24T14:15:22Z",
"adsConsentSetAt": "2019-08-24T14:15:22Z",
"anonymous": false,
"authToken": "CxoUzBTSV5hsxjTpFKaf",
"backupCodesCreated": false,
"confirmed": false,
"country": "US",
"email": "username@email.com",
"emailOnlyAuth": false,
"experimentalFeatures": false,
"friendlyName": "friendlyUsername",
"entitlements": [],
"guest": false,
"hasPassword": true,
"home": false,
"homeAdmin": false,
"homeSize": 1,
"id": 13692262,
"joinedAt": 1721154902,
"locale": null,
"mailingListActive": false,
"mailingListStatus": "subscribed",
"maxHomeSize": 15,
"pastSubscriptions": [
{
"id": "string",
"mode": "string",
"renewsAt": "string",
"endsAt": "1556281940",
"canceled": "0",
"gracePeriod": "0",
"onHold": "0",
"canReactivate": "0",
"canUpgrade": "0",
"canDowngrade": "0",
"canConvert": "0",
"type": "plexpass",
"transfer": "string",
"state": "ended",
"billing": [
{
"internalPaymentMethod": "string",
"paymentMethodId": "string"
}
]
}
],
"pin": "string",
"profile": [
{
"autoSelectAudio": true,
"defaultAudioLanguage": "ja",
"defaultSubtitleLanguage": "en",
"autoSelectSubtitle": 1,
"defaultSubtitleAccessibility": 1,
"defaultSubtitleForced": 0,
"watchedIndicator": 1,
"mediaReviewsVisibility": 0
}
],
"protected": false,
"rememberExpiresAt": 1722364046,
"restricted": false,
"roles": [
"string"
],
"scrobbleTypes": "",
"services": [
{
"identifier": "metadata-dev",
"endpoint": "https://epg.provider.plex.tv",
"token": "DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv",
"secret": "string",
"status": "online"
}
],
"subscription": {
"features": [
"Android - Dolby Vision"
],
"active": true,
"subscribedAt": "2021-04-12T18:21:12Z",
"status": "Inactive",
"paymentService": "string",
"plan": "string"
},
"subscriptionDescription": "string",
"subscriptions": [
{
"features": [
"Android - Dolby Vision"
],
"active": true,
"subscribedAt": "2021-04-12T18:21:12Z",
"status": "Inactive",
"paymentService": "string",
"plan": "string"
}
],
"thumb": "https://plex.tv/users/a4f43c1ebfde43a5/avatar?c=8372075101",
"title": "UsernameTitle",
"trials": [
{}
],
"twoFactorEnabled": false,
"username": "Username",
"uuid": "dae343c1f45beb4f"
} | \ No newline at end of file diff --git a/docs/Models/Requests/PostSignInServices.md b/docs/Models/Requests/PostSignInServices.md new file mode 100644 index 0000000..ec11a35 --- /dev/null +++ b/docs/Models/Requests/PostSignInServices.md @@ -0,0 +1,12 @@ +# PostSignInServices + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `Identifier` | *string* | :heavy_check_mark: | N/A | metadata-dev | +| `Endpoint` | *string* | :heavy_check_mark: | N/A | https://epg.provider.plex.tv | +| `Token` | *string* | :heavy_check_mark: | N/A | DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv | +| `Secret` | *string* | :heavy_check_mark: | N/A | | +| `Status` | [PostSignInStatus](../../Models/Requests/PostSignInStatus.md) | :heavy_check_mark: | N/A | online | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataState.md b/docs/Models/Requests/PostSignInState.md similarity index 74% rename from docs/Models/Requests/PostUsersSigninDataState.md rename to docs/Models/Requests/PostSignInState.md index 71ceb32..aa3070c 100644 --- a/docs/Models/Requests/PostUsersSigninDataState.md +++ b/docs/Models/Requests/PostSignInState.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataState +# PostSignInState ## Values diff --git a/docs/Models/Requests/PostUsersSigninDataStatus.md b/docs/Models/Requests/PostSignInStatus.md similarity index 80% rename from docs/Models/Requests/PostUsersSigninDataStatus.md rename to docs/Models/Requests/PostSignInStatus.md index 74fbbae..ddbe216 100644 --- a/docs/Models/Requests/PostUsersSigninDataStatus.md +++ b/docs/Models/Requests/PostSignInStatus.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataStatus +# PostSignInStatus ## Values diff --git a/docs/Models/Requests/PostSignInSubscription.md b/docs/Models/Requests/PostSignInSubscription.md new file mode 100644 index 0000000..248dac0 --- /dev/null +++ b/docs/Models/Requests/PostSignInSubscription.md @@ -0,0 +1,15 @@ +# PostSignInSubscription + +If the account’s Plex Pass subscription is active + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | +| `Features` | List<[PostSignInFeatures](../../Models/Requests/PostSignInFeatures.md)> | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | | +| `Active` | *bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true | +| `SubscribedAt` | *string* | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z | +| `Status` | [PostSignInUserStatus](../../Models/Requests/PostSignInUserStatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive | +| `PaymentService` | *string* | :heavy_minus_sign: | Payment service used for your Plex Pass subscription | | +| `Plan` | *string* | :heavy_minus_sign: | Name of Plex Pass subscription plan | | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataUserFeatures.md b/docs/Models/Requests/PostSignInUserFeatures.md similarity index 99% rename from docs/Models/Requests/PostUsersSigninDataUserFeatures.md rename to docs/Models/Requests/PostSignInUserFeatures.md index 40e5668..8748c81 100644 --- a/docs/Models/Requests/PostUsersSigninDataUserFeatures.md +++ b/docs/Models/Requests/PostSignInUserFeatures.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataUserFeatures +# PostSignInUserFeatures ## Values diff --git a/docs/Models/Requests/PostUsersSigninDataUserPlexAccount.md b/docs/Models/Requests/PostSignInUserPlexAccount.md similarity index 97% rename from docs/Models/Requests/PostUsersSigninDataUserPlexAccount.md rename to docs/Models/Requests/PostSignInUserPlexAccount.md index 565e542..a4b5b46 100644 --- a/docs/Models/Requests/PostUsersSigninDataUserPlexAccount.md +++ b/docs/Models/Requests/PostSignInUserPlexAccount.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataUserPlexAccount +# PostSignInUserPlexAccount Returns the user account data with a valid auth token @@ -29,19 +29,19 @@ Returns the user account data with a valid auth token | `JoinedAt` | *int* | :heavy_check_mark: | Unix epoch datetime the account joined Plex | 1721154902 | | `Locale` | *string* | :heavy_check_mark: | The account locale | | | `MailingListActive` | *bool* | :heavy_minus_sign: | If you are subscribed to the Plex newsletter | | -| `MailingListStatus` | [PostUsersSigninDataMailingListStatus](../../Models/Requests/PostUsersSigninDataMailingListStatus.md) | :heavy_check_mark: | Your current mailing list status | | +| `MailingListStatus` | [PostSignInMailingListStatus](../../Models/Requests/PostSignInMailingListStatus.md) | :heavy_check_mark: | Your current mailing list status | | | `MaxHomeSize` | *int* | :heavy_check_mark: | The maximum number of accounts allowed in the Plex Home | 15 | | ~~`Pin`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

[Might be removed] The hashed Plex Home PIN | | -| `Profile` | List<[PostUsersSigninDataUserProfile](../../Models/Requests/PostUsersSigninDataUserProfile.md)> | :heavy_check_mark: | N/A | | +| `Profile` | [PostSignInUserProfile](../../Models/Requests/PostSignInUserProfile.md) | :heavy_check_mark: | N/A | | | `Protected` | *bool* | :heavy_minus_sign: | If the account has a Plex Home PIN enabled | | | `RememberExpiresAt` | *int* | :heavy_check_mark: | Unix epoch datetime the authtoken expires | 1722364046 | | `Restricted` | *bool* | :heavy_minus_sign: | If the account is a Plex Home managed user | | | `Roles` | List<*string*> | :heavy_minus_sign: | [Might be removed] List of account roles. Plexpass membership listed here | | | `ScrobbleTypes` | *string* | :heavy_check_mark: | Unknown | | -| `Services` | List<[PostUsersSigninDataServices](../../Models/Requests/PostUsersSigninDataServices.md)> | :heavy_check_mark: | N/A | | -| `Subscription` | [PostUsersSigninDataSubscription](../../Models/Requests/PostUsersSigninDataSubscription.md) | :heavy_check_mark: | If the account’s Plex Pass subscription is active | | +| `Services` | List<[PostSignInServices](../../Models/Requests/PostSignInServices.md)> | :heavy_check_mark: | N/A | | +| `Subscription` | [PostSignInSubscription](../../Models/Requests/PostSignInSubscription.md) | :heavy_check_mark: | If the account’s Plex Pass subscription is active | | | `SubscriptionDescription` | *string* | :heavy_check_mark: | Description of the Plex Pass subscription | | -| `Subscriptions` | List<[PostUsersSigninDataUserSubscription](../../Models/Requests/PostUsersSigninDataUserSubscription.md)> | :heavy_check_mark: | N/A | | +| `Subscriptions` | List<[PostSignInUserSubscription](../../Models/Requests/PostSignInUserSubscription.md)> | :heavy_check_mark: | N/A | | | `Thumb` | *string* | :heavy_check_mark: | URL of the account thumbnail | https://plex.tv/users/a4f43c1ebfde43a5/avatar?c=8372075101 | | `Title` | *string* | :heavy_check_mark: | The title of the account (username or friendly name) | UsernameTitle | | `TwoFactorEnabled` | *bool* | :heavy_minus_sign: | If two-factor authentication is enabled | | diff --git a/docs/Models/Requests/PostUsersSigninDataUserProfile.md b/docs/Models/Requests/PostSignInUserProfile.md similarity index 88% rename from docs/Models/Requests/PostUsersSigninDataUserProfile.md rename to docs/Models/Requests/PostSignInUserProfile.md index 24fc685..3461af7 100644 --- a/docs/Models/Requests/PostUsersSigninDataUserProfile.md +++ b/docs/Models/Requests/PostSignInUserProfile.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataUserProfile +# PostSignInUserProfile ## Fields @@ -6,10 +6,10 @@ | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `AutoSelectAudio` | *bool* | :heavy_minus_sign: | If the account has automatically select audio and subtitle tracks enabled | true | -| `DefaultAudioLanguage` | *string* | :heavy_minus_sign: | The preferred audio language for the account | ja | -| `DefaultSubtitleLanguage` | *string* | :heavy_minus_sign: | The preferred subtitle language for the account | en | -| `AutoSelectSubtitle` | *long* | :heavy_minus_sign: | The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) | 1 | -| `DefaultSubtitleAccessibility` | *long* | :heavy_minus_sign: | The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) | 1 | -| `DefaultSubtitleForced` | *long* | :heavy_minus_sign: | The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) | 0 | -| `WatchedIndicator` | *long* | :heavy_minus_sign: | N/A | 1 | -| `MediaReviewsVisibility` | *long* | :heavy_minus_sign: | N/A | 0 | \ No newline at end of file +| `DefaultAudioLanguage` | *string* | :heavy_check_mark: | The preferred audio language for the account | ja | +| `DefaultSubtitleLanguage` | *string* | :heavy_check_mark: | The preferred subtitle language for the account | en | +| `AutoSelectSubtitle` | [PostSignInAutoSelectSubtitle](../../Models/Requests/PostSignInAutoSelectSubtitle.md) | :heavy_minus_sign: | The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) | 1 | +| `DefaultSubtitleAccessibility` | [PostSignInDefaultSubtitleAccessibility](../../Models/Requests/PostSignInDefaultSubtitleAccessibility.md) | :heavy_minus_sign: | The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) | 1 | +| `DefaultSubtitleForced` | [PostSignInDefaultSubtitleForced](../../Models/Requests/PostSignInDefaultSubtitleForced.md) | :heavy_minus_sign: | The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) | 0 | +| `WatchedIndicator` | [PostSignInWatchedIndicator](../../Models/Requests/PostSignInWatchedIndicator.md) | :heavy_minus_sign: | N/A | 1 | +| `MediaReviewsVisibility` | [PostSignInMediaReviewsVisibility](../../Models/Requests/PostSignInMediaReviewsVisibility.md) | :heavy_minus_sign: | N/A | 0 | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataUserStatus.md b/docs/Models/Requests/PostSignInUserResponseStatus.md similarity index 84% rename from docs/Models/Requests/PostUsersSigninDataUserStatus.md rename to docs/Models/Requests/PostSignInUserResponseStatus.md index 5c1d206..fcbb3b2 100644 --- a/docs/Models/Requests/PostUsersSigninDataUserStatus.md +++ b/docs/Models/Requests/PostSignInUserResponseStatus.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataUserStatus +# PostSignInUserResponseStatus String representation of subscriptionActive diff --git a/docs/Models/Requests/PostUsersSigninDataUserResponseStatus.md b/docs/Models/Requests/PostSignInUserStatus.md similarity index 80% rename from docs/Models/Requests/PostUsersSigninDataUserResponseStatus.md rename to docs/Models/Requests/PostSignInUserStatus.md index d2f2a10..ec2ff41 100644 --- a/docs/Models/Requests/PostUsersSigninDataUserResponseStatus.md +++ b/docs/Models/Requests/PostSignInUserStatus.md @@ -1,4 +1,4 @@ -# PostUsersSigninDataUserResponseStatus +# PostSignInUserStatus String representation of subscriptionActive diff --git a/docs/Models/Requests/PostSignInUserSubscription.md b/docs/Models/Requests/PostSignInUserSubscription.md new file mode 100644 index 0000000..b3f2f3f --- /dev/null +++ b/docs/Models/Requests/PostSignInUserSubscription.md @@ -0,0 +1,13 @@ +# PostSignInUserSubscription + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `Features` | List<[PostSignInUserFeatures](../../Models/Requests/PostSignInUserFeatures.md)> | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | | +| `Active` | *bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true | +| `SubscribedAt` | *string* | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z | +| `Status` | [PostSignInUserResponseStatus](../../Models/Requests/PostSignInUserResponseStatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive | +| `PaymentService` | *string* | :heavy_minus_sign: | Payment service used for your Plex Pass subscription | | +| `Plan` | *string* | :heavy_minus_sign: | Name of Plex Pass subscription plan | | \ No newline at end of file diff --git a/docs/Models/Requests/PostSignInWatchedIndicator.md b/docs/Models/Requests/PostSignInWatchedIndicator.md new file mode 100644 index 0000000..930d0ac --- /dev/null +++ b/docs/Models/Requests/PostSignInWatchedIndicator.md @@ -0,0 +1,9 @@ +# PostSignInWatchedIndicator + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataServices.md b/docs/Models/Requests/PostUsersSigninDataServices.md deleted file mode 100644 index 81475ef..0000000 --- a/docs/Models/Requests/PostUsersSigninDataServices.md +++ /dev/null @@ -1,12 +0,0 @@ -# PostUsersSigninDataServices - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | -| `Identifier` | *string* | :heavy_check_mark: | N/A | metadata-dev | -| `Endpoint` | *string* | :heavy_check_mark: | N/A | https://epg.provider.plex.tv | -| `Token` | *string* | :heavy_check_mark: | N/A | DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv | -| `Secret` | *string* | :heavy_check_mark: | N/A | | -| `Status` | [PostUsersSigninDataStatus](../../Models/Requests/PostUsersSigninDataStatus.md) | :heavy_check_mark: | N/A | online | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataSubscription.md b/docs/Models/Requests/PostUsersSigninDataSubscription.md deleted file mode 100644 index a9e1a3b..0000000 --- a/docs/Models/Requests/PostUsersSigninDataSubscription.md +++ /dev/null @@ -1,15 +0,0 @@ -# PostUsersSigninDataSubscription - -If the account’s Plex Pass subscription is active - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `Features` | List<[PostUsersSigninDataFeatures](../../Models/Requests/PostUsersSigninDataFeatures.md)> | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | | -| `Active` | *bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true | -| `SubscribedAt` | [DateTime](https://learn.microsoft.com/en-us/dotnet/api/system.datetime?view=net-5.0) | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z | -| `Status` | [PostUsersSigninDataUserStatus](../../Models/Requests/PostUsersSigninDataUserStatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive | -| `PaymentService` | *string* | :heavy_minus_sign: | Payment service used for your Plex Pass subscription | | -| `Plan` | *string* | :heavy_minus_sign: | Name of Plex Pass subscription plan | | \ No newline at end of file diff --git a/docs/Models/Requests/PostUsersSigninDataUserSubscription.md b/docs/Models/Requests/PostUsersSigninDataUserSubscription.md deleted file mode 100644 index 48e41dc..0000000 --- a/docs/Models/Requests/PostUsersSigninDataUserSubscription.md +++ /dev/null @@ -1,13 +0,0 @@ -# PostUsersSigninDataUserSubscription - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | -| `Features` | List<[PostUsersSigninDataUserFeatures](../../Models/Requests/PostUsersSigninDataUserFeatures.md)> | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | | -| `Active` | *bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true | -| `SubscribedAt` | [DateTime](https://learn.microsoft.com/en-us/dotnet/api/system.datetime?view=net-5.0) | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z | -| `Status` | [PostUsersSigninDataUserResponseStatus](../../Models/Requests/PostUsersSigninDataUserResponseStatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive | -| `PaymentService` | *string* | :heavy_minus_sign: | Payment service used for your Plex Pass subscription | | -| `Plan` | *string* | :heavy_minus_sign: | Name of Plex Pass subscription plan | | \ No newline at end of file diff --git a/docs/Models/Requests/Subscription.md b/docs/Models/Requests/Subscription.md index a33013d..5d4ad29 100644 --- a/docs/Models/Requests/Subscription.md +++ b/docs/Models/Requests/Subscription.md @@ -5,11 +5,11 @@ If the account’s Plex Pass subscription is active ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `Features` | List<[Features](../../Models/Requests/Features.md)> | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | | -| `Active` | *bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true | -| `SubscribedAt` | [DateTime](https://learn.microsoft.com/en-us/dotnet/api/system.datetime?view=net-5.0) | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z | -| `Status` | [GetUserDetailsPlexStatus](../../Models/Requests/GetUserDetailsPlexStatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive | -| `PaymentService` | *string* | :heavy_minus_sign: | Payment service used for your Plex Pass subscription | | -| `Plan` | *string* | :heavy_minus_sign: | Name of Plex Pass subscription plan | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `Features` | List<[Features](../../Models/Requests/Features.md)> | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | | +| `Active` | *bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true | +| `SubscribedAt` | *string* | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z | +| `Status` | [GetUserDetailsPlexStatus](../../Models/Requests/GetUserDetailsPlexStatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive | +| `PaymentService` | *string* | :heavy_minus_sign: | Payment service used for your Plex Pass subscription | | +| `Plan` | *string* | :heavy_minus_sign: | Name of Plex Pass subscription plan | | \ No newline at end of file diff --git a/docs/Models/Requests/UserProfile.md b/docs/Models/Requests/UserProfile.md index 119ac89..303b3d0 100644 --- a/docs/Models/Requests/UserProfile.md +++ b/docs/Models/Requests/UserProfile.md @@ -6,10 +6,10 @@ | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `AutoSelectAudio` | *bool* | :heavy_minus_sign: | If the account has automatically select audio and subtitle tracks enabled | true | -| `DefaultAudioLanguage` | *string* | :heavy_minus_sign: | The preferred audio language for the account | ja | -| `DefaultSubtitleLanguage` | *string* | :heavy_minus_sign: | The preferred subtitle language for the account | en | -| `AutoSelectSubtitle` | *long* | :heavy_minus_sign: | The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) | 1 | -| `DefaultSubtitleAccessibility` | *long* | :heavy_minus_sign: | The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) | 1 | -| `DefaultSubtitleForced` | *long* | :heavy_minus_sign: | The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) | 0 | -| `WatchedIndicator` | *long* | :heavy_minus_sign: | N/A | 1 | -| `MediaReviewsVisibility` | *long* | :heavy_minus_sign: | N/A | 0 | \ No newline at end of file +| `DefaultAudioLanguage` | *string* | :heavy_check_mark: | The preferred audio language for the account | ja | +| `DefaultSubtitleLanguage` | *string* | :heavy_check_mark: | The preferred subtitle language for the account | en | +| `AutoSelectSubtitle` | [AutoSelectSubtitle](../../Models/Requests/AutoSelectSubtitle.md) | :heavy_minus_sign: | The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) | 1 | +| `DefaultSubtitleAccessibility` | [DefaultSubtitleAccessibility](../../Models/Requests/DefaultSubtitleAccessibility.md) | :heavy_minus_sign: | The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) | 1 | +| `DefaultSubtitleForced` | [DefaultSubtitleForced](../../Models/Requests/DefaultSubtitleForced.md) | :heavy_minus_sign: | The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) | 0 | +| `WatchedIndicator` | [WatchedIndicator](../../Models/Requests/WatchedIndicator.md) | :heavy_minus_sign: | N/A | 1 | +| `MediaReviewsVisibility` | [MediaReviewsVisibility](../../Models/Requests/MediaReviewsVisibility.md) | :heavy_minus_sign: | N/A | 0 | \ No newline at end of file diff --git a/docs/Models/Requests/WatchedIndicator.md b/docs/Models/Requests/WatchedIndicator.md new file mode 100644 index 0000000..1ad0cbe --- /dev/null +++ b/docs/Models/Requests/WatchedIndicator.md @@ -0,0 +1,9 @@ +# WatchedIndicator + + +## Values + +| Name | Value | +| ------ | ------ | +| `Zero` | 0 | +| `One` | 1 | \ No newline at end of file diff --git a/docs/sdks/user/README.md b/docs/sdks/user/README.md index c1532c2..15c3228 100644 --- a/docs/sdks/user/README.md +++ b/docs/sdks/user/README.md @@ -8,9 +8,9 @@ API Calls that perform operations with Plex Media Server Users ### Available Operations -* [PostUsersSigninData](#postuserssignindata) - Get User SignIn Data +* [PostSignIn](#postsignin) - Get User SignIn Data -## PostUsersSigninData +## PostSignIn Sign in user with username and password and return user data with Plex authentication token @@ -23,9 +23,9 @@ using PlexAPI.Models.Components; var sdk = new PlexAPISDK(xPlexClientIdentifier: "Postman"); -var res = await sdk.User.PostUsersSigninDataAsync( +var res = await sdk.User.PostSignInAsync( xPlexClientIdentifier: "Postman", - requestBody: new PostUsersSigninDataRequestBody() { + requestBody: new PostSignInRequestBody() { Login = "username@email.com", Password = "password123", }); @@ -38,16 +38,16 @@ var res = await sdk.User.PostUsersSigninDataAsync( | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `XPlexClientIdentifier` | *string* | :heavy_minus_sign: | The unique identifier for the client application
This is used to track the client application and its usage
(UUID, serial number, or other number unique per device)
| Postman | -| `RequestBody` | [PostUsersSigninDataRequestBody](../../Models/Requests/PostUsersSigninDataRequestBody.md) | :heavy_minus_sign: | Login credentials | | +| `RequestBody` | [PostSignInRequestBody](../../Models/Requests/PostSignInRequestBody.md) | :heavy_minus_sign: | Login credentials | | | `serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | http://localhost:8080 | ### Response -**[PostUsersSigninDataResponse](../../Models/Requests/PostUsersSigninDataResponse.md)** +**[PostSignInResponse](../../Models/Requests/PostSignInResponse.md)** ### Errors -| Error Object | Status Code | Content Type | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| PlexAPI.Models.Errors.PostUsersSigninDataResponseBody | 401 | application/json | -| PlexAPI.Models.Errors.SDKException | 4xx-5xx | */* | +| Error Object | Status Code | Content Type | +| -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | +| PlexAPI.Models.Errors.PostSignInResponseBody | 401 | application/json | +| PlexAPI.Models.Errors.SDKException | 4xx-5xx | */* |