diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index c0d58c7..eabaf30 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: 1e8e82037a237e1d1467721fbd2c7ab0 + docChecksum: 7aba498c024534142941d65a7c2e649c docVersion: 0.0.3 speakeasyVersion: internal generationVersion: 2.237.3 - releaseVersion: 0.1.4 - configChecksum: 2355fec2a6caedf505c0100382e8bb81 + releaseVersion: 0.1.5 + configChecksum: 112f7d72fae8408e2dd1ef59ee88fb3a repoURL: https://github.com/LukeHagar/plexcsharp.git repoSubDirectory: . published: true @@ -58,10 +58,10 @@ generatedFiles: - PlexAPI/Models/Requests/GetServerPreferencesResponseBody.cs - PlexAPI/Models/Requests/GetServerPreferencesResponse.cs - PlexAPI/Models/Requests/GetAvailableClientsErrors.cs - - PlexAPI/Models/Requests/GetAvailableClientsResponseBody.cs + - PlexAPI/Models/Requests/GetAvailableClientsServerResponseBody.cs - PlexAPI/Models/Requests/Server.cs - PlexAPI/Models/Requests/GetAvailableClientsMediaContainer.cs - - PlexAPI/Models/Requests/ResponseBody.cs + - PlexAPI/Models/Requests/GetAvailableClientsResponseBody.cs - PlexAPI/Models/Requests/GetAvailableClientsResponse.cs - PlexAPI/Models/Requests/GetDevicesErrors.cs - PlexAPI/Models/Requests/GetDevicesServerResponseBody.cs @@ -139,11 +139,26 @@ generatedFiles: - PlexAPI/Models/Requests/OnlyTransient.cs - PlexAPI/Models/Requests/GetGlobalHubsRequest.cs - PlexAPI/Models/Requests/GetGlobalHubsErrors.cs + - PlexAPI/Models/Requests/GetGlobalHubsHubsResponseBody.cs + - PlexAPI/Models/Requests/GetGlobalHubsMetadata.cs + - PlexAPI/Models/Requests/Hub.cs + - PlexAPI/Models/Requests/GetGlobalHubsMediaContainer.cs - PlexAPI/Models/Requests/GetGlobalHubsResponseBody.cs - PlexAPI/Models/Requests/GetGlobalHubsResponse.cs - PlexAPI/Models/Requests/QueryParamOnlyTransient.cs - PlexAPI/Models/Requests/GetLibraryHubsRequest.cs - PlexAPI/Models/Requests/GetLibraryHubsErrors.cs + - PlexAPI/Models/Requests/GetLibraryHubsHubsResponseBody.cs + - PlexAPI/Models/Requests/GetLibraryHubsPart.cs + - PlexAPI/Models/Requests/GetLibraryHubsMedia.cs + - PlexAPI/Models/Requests/GetLibraryHubsGenre.cs + - PlexAPI/Models/Requests/GetLibraryHubsCountry.cs + - PlexAPI/Models/Requests/GetLibraryHubsDirector.cs + - PlexAPI/Models/Requests/GetLibraryHubsRole.cs + - PlexAPI/Models/Requests/GetLibraryHubsWriter.cs + - PlexAPI/Models/Requests/GetLibraryHubsMetadata.cs + - PlexAPI/Models/Requests/GetLibraryHubsHub.cs + - PlexAPI/Models/Requests/GetLibraryHubsMediaContainer.cs - PlexAPI/Models/Requests/GetLibraryHubsResponseBody.cs - PlexAPI/Models/Requests/GetLibraryHubsResponse.cs - PlexAPI/Models/Requests/PerformSearchRequest.cs @@ -211,36 +226,55 @@ generatedFiles: - PlexAPI/Models/Requests/DeleteLibraryErrors.cs - PlexAPI/Models/Requests/DeleteLibraryResponseBody.cs - PlexAPI/Models/Requests/DeleteLibraryResponse.cs + - PlexAPI/Models/Requests/Tag.cs - PlexAPI/Models/Requests/GetLibraryItemsRequest.cs - - PlexAPI/Models/Requests/GetLibraryItemsErrors.cs + - PlexAPI/Models/Requests/GetLibraryItemsPart.cs + - PlexAPI/Models/Requests/GetLibraryItemsMedia.cs + - PlexAPI/Models/Requests/GetLibraryItemsGenre.cs + - PlexAPI/Models/Requests/GetLibraryItemsCountry.cs + - PlexAPI/Models/Requests/GetLibraryItemsDirector.cs + - PlexAPI/Models/Requests/GetLibraryItemsWriter.cs + - PlexAPI/Models/Requests/GetLibraryItemsRole.cs + - PlexAPI/Models/Requests/GetLibraryItemsMetadata.cs + - PlexAPI/Models/Requests/GetLibraryItemsMediaContainer.cs - PlexAPI/Models/Requests/GetLibraryItemsResponseBody.cs - PlexAPI/Models/Requests/GetLibraryItemsResponse.cs - PlexAPI/Models/Requests/RefreshLibraryRequest.cs - PlexAPI/Models/Requests/RefreshLibraryErrors.cs - PlexAPI/Models/Requests/RefreshLibraryResponseBody.cs - PlexAPI/Models/Requests/RefreshLibraryResponse.cs - - PlexAPI/Models/Requests/GetLatestLibraryItemsRequest.cs - - PlexAPI/Models/Requests/GetLatestLibraryItemsErrors.cs - - PlexAPI/Models/Requests/GetLatestLibraryItemsResponseBody.cs - - PlexAPI/Models/Requests/GetLatestLibraryItemsResponse.cs - - PlexAPI/Models/Requests/GetCommonLibraryItemsRequest.cs - - PlexAPI/Models/Requests/GetCommonLibraryItemsErrors.cs - - PlexAPI/Models/Requests/GetCommonLibraryItemsResponseBody.cs - - PlexAPI/Models/Requests/GetCommonLibraryItemsResponse.cs - PlexAPI/Models/Requests/GetMetadataRequest.cs - PlexAPI/Models/Requests/GetMetadataErrors.cs + - PlexAPI/Models/Requests/GetMetadataLibraryResponseBody.cs + - PlexAPI/Models/Requests/Stream.cs + - PlexAPI/Models/Requests/GetMetadataPart.cs + - PlexAPI/Models/Requests/GetMetadataMedia.cs + - PlexAPI/Models/Requests/GetMetadataGenre.cs + - PlexAPI/Models/Requests/GetMetadataCountry.cs + - PlexAPI/Models/Requests/Guids.cs + - PlexAPI/Models/Requests/Ratings.cs + - PlexAPI/Models/Requests/GetMetadataDirector.cs + - PlexAPI/Models/Requests/GetMetadataWriter.cs + - PlexAPI/Models/Requests/GetMetadataRole.cs + - PlexAPI/Models/Requests/Producer.cs + - PlexAPI/Models/Requests/GetMetadataMetadata.cs + - PlexAPI/Models/Requests/GetMetadataMediaContainer.cs - PlexAPI/Models/Requests/GetMetadataResponseBody.cs - PlexAPI/Models/Requests/GetMetadataResponse.cs - PlexAPI/Models/Requests/GetMetadataChildrenRequest.cs - PlexAPI/Models/Requests/GetMetadataChildrenErrors.cs + - PlexAPI/Models/Requests/GetMetadataChildrenLibraryResponseBody.cs + - PlexAPI/Models/Requests/GetMetadataChildrenDirectory.cs + - PlexAPI/Models/Requests/GetMetadataChildrenMetadata.cs + - PlexAPI/Models/Requests/GetMetadataChildrenMediaContainer.cs - PlexAPI/Models/Requests/GetMetadataChildrenResponseBody.cs - PlexAPI/Models/Requests/GetMetadataChildrenResponse.cs - PlexAPI/Models/Requests/GetOnDeckErrors.cs - PlexAPI/Models/Requests/GetOnDeckLibraryResponseBody.cs - - PlexAPI/Models/Requests/Stream.cs + - PlexAPI/Models/Requests/GetOnDeckStream.cs - PlexAPI/Models/Requests/GetOnDeckPart.cs - PlexAPI/Models/Requests/GetOnDeckMedia.cs - - PlexAPI/Models/Requests/Guids.cs + - PlexAPI/Models/Requests/GetOnDeckGuids.cs - PlexAPI/Models/Requests/GetOnDeckMetadata.cs - PlexAPI/Models/Requests/GetOnDeckMediaContainer.cs - PlexAPI/Models/Requests/GetOnDeckResponseBody.cs @@ -260,16 +294,25 @@ generatedFiles: - PlexAPI/Models/Requests/Smart.cs - PlexAPI/Models/Requests/CreatePlaylistRequest.cs - PlexAPI/Models/Requests/CreatePlaylistErrors.cs + - PlexAPI/Models/Requests/CreatePlaylistPlaylistsResponseBody.cs + - PlexAPI/Models/Requests/CreatePlaylistMetadata.cs + - PlexAPI/Models/Requests/CreatePlaylistMediaContainer.cs - PlexAPI/Models/Requests/CreatePlaylistResponseBody.cs - PlexAPI/Models/Requests/CreatePlaylistResponse.cs - PlexAPI/Models/Requests/PlaylistType.cs - PlexAPI/Models/Requests/QueryParamSmart.cs - PlexAPI/Models/Requests/GetPlaylistsRequest.cs - PlexAPI/Models/Requests/GetPlaylistsErrors.cs + - PlexAPI/Models/Requests/GetPlaylistsPlaylistsResponseBody.cs + - PlexAPI/Models/Requests/GetPlaylistsMetadata.cs + - PlexAPI/Models/Requests/GetPlaylistsMediaContainer.cs - PlexAPI/Models/Requests/GetPlaylistsResponseBody.cs - PlexAPI/Models/Requests/GetPlaylistsResponse.cs - PlexAPI/Models/Requests/GetPlaylistRequest.cs - PlexAPI/Models/Requests/GetPlaylistErrors.cs + - PlexAPI/Models/Requests/GetPlaylistPlaylistsResponseBody.cs + - PlexAPI/Models/Requests/GetPlaylistMetadata.cs + - PlexAPI/Models/Requests/GetPlaylistMediaContainer.cs - PlexAPI/Models/Requests/GetPlaylistResponseBody.cs - PlexAPI/Models/Requests/GetPlaylistResponse.cs - PlexAPI/Models/Requests/DeletePlaylistRequest.cs @@ -282,6 +325,16 @@ generatedFiles: - PlexAPI/Models/Requests/UpdatePlaylistResponse.cs - PlexAPI/Models/Requests/GetPlaylistContentsRequest.cs - PlexAPI/Models/Requests/GetPlaylistContentsErrors.cs + - PlexAPI/Models/Requests/GetPlaylistContentsPlaylistsResponseBody.cs + - PlexAPI/Models/Requests/GetPlaylistContentsPart.cs + - PlexAPI/Models/Requests/GetPlaylistContentsMedia.cs + - PlexAPI/Models/Requests/GetPlaylistContentsGenre.cs + - PlexAPI/Models/Requests/GetPlaylistContentsCountry.cs + - PlexAPI/Models/Requests/GetPlaylistContentsDirector.cs + - PlexAPI/Models/Requests/GetPlaylistContentsWriter.cs + - PlexAPI/Models/Requests/GetPlaylistContentsRole.cs + - PlexAPI/Models/Requests/GetPlaylistContentsMetadata.cs + - PlexAPI/Models/Requests/GetPlaylistContentsMediaContainer.cs - PlexAPI/Models/Requests/GetPlaylistContentsResponseBody.cs - PlexAPI/Models/Requests/GetPlaylistContentsResponse.cs - PlexAPI/Models/Requests/ClearPlaylistContentsRequest.cs @@ -290,6 +343,9 @@ generatedFiles: - PlexAPI/Models/Requests/ClearPlaylistContentsResponse.cs - PlexAPI/Models/Requests/AddPlaylistContentsRequest.cs - PlexAPI/Models/Requests/AddPlaylistContentsErrors.cs + - PlexAPI/Models/Requests/AddPlaylistContentsPlaylistsResponseBody.cs + - PlexAPI/Models/Requests/AddPlaylistContentsMetadata.cs + - PlexAPI/Models/Requests/AddPlaylistContentsMediaContainer.cs - PlexAPI/Models/Requests/AddPlaylistContentsResponseBody.cs - PlexAPI/Models/Requests/AddPlaylistContentsResponse.cs - PlexAPI/Models/Requests/Force.cs @@ -308,9 +364,21 @@ generatedFiles: - PlexAPI/Models/Requests/GetSourceConnectionInformationResponseBody.cs - PlexAPI/Models/Requests/GetSourceConnectionInformationResponse.cs - PlexAPI/Models/Requests/GetSessionsErrors.cs + - PlexAPI/Models/Requests/GetSessionsSessionsResponseBody.cs + - PlexAPI/Models/Requests/GetSessionsStream.cs + - PlexAPI/Models/Requests/GetSessionsPart.cs + - PlexAPI/Models/Requests/GetSessionsMedia.cs + - PlexAPI/Models/Requests/User.cs + - PlexAPI/Models/Requests/Player.cs + - PlexAPI/Models/Requests/Session.cs + - PlexAPI/Models/Requests/GetSessionsMetadata.cs + - PlexAPI/Models/Requests/GetSessionsMediaContainer.cs - PlexAPI/Models/Requests/GetSessionsResponseBody.cs - PlexAPI/Models/Requests/GetSessionsResponse.cs - PlexAPI/Models/Requests/GetSessionHistoryErrors.cs + - PlexAPI/Models/Requests/GetSessionHistorySessionsResponseBody.cs + - PlexAPI/Models/Requests/GetSessionHistoryMetadata.cs + - PlexAPI/Models/Requests/GetSessionHistoryMediaContainer.cs - PlexAPI/Models/Requests/GetSessionHistoryResponseBody.cs - PlexAPI/Models/Requests/GetSessionHistoryResponse.cs - PlexAPI/Models/Requests/GetTranscodeSessionsErrors.cs @@ -324,6 +392,9 @@ generatedFiles: - PlexAPI/Models/Requests/StopTranscodeSessionResponseBody.cs - PlexAPI/Models/Requests/StopTranscodeSessionResponse.cs - PlexAPI/Models/Requests/GetUpdateStatusErrors.cs + - PlexAPI/Models/Requests/GetUpdateStatusUpdaterResponseBody.cs + - PlexAPI/Models/Requests/Release.cs + - PlexAPI/Models/Requests/GetUpdateStatusMediaContainer.cs - PlexAPI/Models/Requests/GetUpdateStatusResponseBody.cs - PlexAPI/Models/Requests/GetUpdateStatusResponse.cs - PlexAPI/Models/Requests/Download.cs @@ -359,10 +430,10 @@ generatedFiles: - docs/Models/Requests/GetServerPreferencesResponseBody.md - docs/Models/Requests/GetServerPreferencesResponse.md - docs/Models/Requests/GetAvailableClientsErrors.md - - docs/Models/Requests/GetAvailableClientsResponseBody.md + - docs/Models/Requests/GetAvailableClientsServerResponseBody.md - docs/Models/Requests/Server.md - docs/Models/Requests/GetAvailableClientsMediaContainer.md - - docs/Models/Requests/ResponseBody.md + - docs/Models/Requests/GetAvailableClientsResponseBody.md - docs/Models/Requests/GetAvailableClientsResponse.md - docs/Models/Requests/GetDevicesErrors.md - docs/Models/Requests/GetDevicesServerResponseBody.md @@ -440,11 +511,26 @@ generatedFiles: - docs/Models/Requests/OnlyTransient.md - docs/Models/Requests/GetGlobalHubsRequest.md - docs/Models/Requests/GetGlobalHubsErrors.md + - docs/Models/Requests/GetGlobalHubsHubsResponseBody.md + - docs/Models/Requests/GetGlobalHubsMetadata.md + - docs/Models/Requests/Hub.md + - docs/Models/Requests/GetGlobalHubsMediaContainer.md - docs/Models/Requests/GetGlobalHubsResponseBody.md - docs/Models/Requests/GetGlobalHubsResponse.md - docs/Models/Requests/QueryParamOnlyTransient.md - docs/Models/Requests/GetLibraryHubsRequest.md - docs/Models/Requests/GetLibraryHubsErrors.md + - docs/Models/Requests/GetLibraryHubsHubsResponseBody.md + - docs/Models/Requests/GetLibraryHubsPart.md + - docs/Models/Requests/GetLibraryHubsMedia.md + - docs/Models/Requests/GetLibraryHubsGenre.md + - docs/Models/Requests/GetLibraryHubsCountry.md + - docs/Models/Requests/GetLibraryHubsDirector.md + - docs/Models/Requests/GetLibraryHubsRole.md + - docs/Models/Requests/GetLibraryHubsWriter.md + - docs/Models/Requests/GetLibraryHubsMetadata.md + - docs/Models/Requests/GetLibraryHubsHub.md + - docs/Models/Requests/GetLibraryHubsMediaContainer.md - docs/Models/Requests/GetLibraryHubsResponseBody.md - docs/Models/Requests/GetLibraryHubsResponse.md - docs/Models/Requests/PerformSearchRequest.md @@ -512,36 +598,55 @@ generatedFiles: - docs/Models/Requests/DeleteLibraryErrors.md - docs/Models/Requests/DeleteLibraryResponseBody.md - docs/Models/Requests/DeleteLibraryResponse.md + - docs/Models/Requests/Tag.md - docs/Models/Requests/GetLibraryItemsRequest.md - - docs/Models/Requests/GetLibraryItemsErrors.md + - docs/Models/Requests/GetLibraryItemsPart.md + - docs/Models/Requests/GetLibraryItemsMedia.md + - docs/Models/Requests/GetLibraryItemsGenre.md + - docs/Models/Requests/GetLibraryItemsCountry.md + - docs/Models/Requests/GetLibraryItemsDirector.md + - docs/Models/Requests/GetLibraryItemsWriter.md + - docs/Models/Requests/GetLibraryItemsRole.md + - docs/Models/Requests/GetLibraryItemsMetadata.md + - docs/Models/Requests/GetLibraryItemsMediaContainer.md - docs/Models/Requests/GetLibraryItemsResponseBody.md - docs/Models/Requests/GetLibraryItemsResponse.md - docs/Models/Requests/RefreshLibraryRequest.md - docs/Models/Requests/RefreshLibraryErrors.md - docs/Models/Requests/RefreshLibraryResponseBody.md - docs/Models/Requests/RefreshLibraryResponse.md - - docs/Models/Requests/GetLatestLibraryItemsRequest.md - - docs/Models/Requests/GetLatestLibraryItemsErrors.md - - docs/Models/Requests/GetLatestLibraryItemsResponseBody.md - - docs/Models/Requests/GetLatestLibraryItemsResponse.md - - docs/Models/Requests/GetCommonLibraryItemsRequest.md - - docs/Models/Requests/GetCommonLibraryItemsErrors.md - - docs/Models/Requests/GetCommonLibraryItemsResponseBody.md - - docs/Models/Requests/GetCommonLibraryItemsResponse.md - docs/Models/Requests/GetMetadataRequest.md - docs/Models/Requests/GetMetadataErrors.md + - docs/Models/Requests/GetMetadataLibraryResponseBody.md + - docs/Models/Requests/Stream.md + - docs/Models/Requests/GetMetadataPart.md + - docs/Models/Requests/GetMetadataMedia.md + - docs/Models/Requests/GetMetadataGenre.md + - docs/Models/Requests/GetMetadataCountry.md + - docs/Models/Requests/Guids.md + - docs/Models/Requests/Ratings.md + - docs/Models/Requests/GetMetadataDirector.md + - docs/Models/Requests/GetMetadataWriter.md + - docs/Models/Requests/GetMetadataRole.md + - docs/Models/Requests/Producer.md + - docs/Models/Requests/GetMetadataMetadata.md + - docs/Models/Requests/GetMetadataMediaContainer.md - docs/Models/Requests/GetMetadataResponseBody.md - docs/Models/Requests/GetMetadataResponse.md - docs/Models/Requests/GetMetadataChildrenRequest.md - docs/Models/Requests/GetMetadataChildrenErrors.md + - docs/Models/Requests/GetMetadataChildrenLibraryResponseBody.md + - docs/Models/Requests/GetMetadataChildrenDirectory.md + - docs/Models/Requests/GetMetadataChildrenMetadata.md + - docs/Models/Requests/GetMetadataChildrenMediaContainer.md - docs/Models/Requests/GetMetadataChildrenResponseBody.md - docs/Models/Requests/GetMetadataChildrenResponse.md - docs/Models/Requests/GetOnDeckErrors.md - docs/Models/Requests/GetOnDeckLibraryResponseBody.md - - docs/Models/Requests/Stream.md + - docs/Models/Requests/GetOnDeckStream.md - docs/Models/Requests/GetOnDeckPart.md - docs/Models/Requests/GetOnDeckMedia.md - - docs/Models/Requests/Guids.md + - docs/Models/Requests/GetOnDeckGuids.md - docs/Models/Requests/GetOnDeckMetadata.md - docs/Models/Requests/GetOnDeckMediaContainer.md - docs/Models/Requests/GetOnDeckResponseBody.md @@ -561,16 +666,25 @@ generatedFiles: - docs/Models/Requests/Smart.md - docs/Models/Requests/CreatePlaylistRequest.md - docs/Models/Requests/CreatePlaylistErrors.md + - docs/Models/Requests/CreatePlaylistPlaylistsResponseBody.md + - docs/Models/Requests/CreatePlaylistMetadata.md + - docs/Models/Requests/CreatePlaylistMediaContainer.md - docs/Models/Requests/CreatePlaylistResponseBody.md - docs/Models/Requests/CreatePlaylistResponse.md - docs/Models/Requests/PlaylistType.md - docs/Models/Requests/QueryParamSmart.md - docs/Models/Requests/GetPlaylistsRequest.md - docs/Models/Requests/GetPlaylistsErrors.md + - docs/Models/Requests/GetPlaylistsPlaylistsResponseBody.md + - docs/Models/Requests/GetPlaylistsMetadata.md + - docs/Models/Requests/GetPlaylistsMediaContainer.md - docs/Models/Requests/GetPlaylistsResponseBody.md - docs/Models/Requests/GetPlaylistsResponse.md - docs/Models/Requests/GetPlaylistRequest.md - docs/Models/Requests/GetPlaylistErrors.md + - docs/Models/Requests/GetPlaylistPlaylistsResponseBody.md + - docs/Models/Requests/GetPlaylistMetadata.md + - docs/Models/Requests/GetPlaylistMediaContainer.md - docs/Models/Requests/GetPlaylistResponseBody.md - docs/Models/Requests/GetPlaylistResponse.md - docs/Models/Requests/DeletePlaylistRequest.md @@ -583,6 +697,16 @@ generatedFiles: - docs/Models/Requests/UpdatePlaylistResponse.md - docs/Models/Requests/GetPlaylistContentsRequest.md - docs/Models/Requests/GetPlaylistContentsErrors.md + - docs/Models/Requests/GetPlaylistContentsPlaylistsResponseBody.md + - docs/Models/Requests/GetPlaylistContentsPart.md + - docs/Models/Requests/GetPlaylistContentsMedia.md + - docs/Models/Requests/GetPlaylistContentsGenre.md + - docs/Models/Requests/GetPlaylistContentsCountry.md + - docs/Models/Requests/GetPlaylistContentsDirector.md + - docs/Models/Requests/GetPlaylistContentsWriter.md + - docs/Models/Requests/GetPlaylistContentsRole.md + - docs/Models/Requests/GetPlaylistContentsMetadata.md + - docs/Models/Requests/GetPlaylistContentsMediaContainer.md - docs/Models/Requests/GetPlaylistContentsResponseBody.md - docs/Models/Requests/GetPlaylistContentsResponse.md - docs/Models/Requests/ClearPlaylistContentsRequest.md @@ -591,6 +715,9 @@ generatedFiles: - docs/Models/Requests/ClearPlaylistContentsResponse.md - docs/Models/Requests/AddPlaylistContentsRequest.md - docs/Models/Requests/AddPlaylistContentsErrors.md + - docs/Models/Requests/AddPlaylistContentsPlaylistsResponseBody.md + - docs/Models/Requests/AddPlaylistContentsMetadata.md + - docs/Models/Requests/AddPlaylistContentsMediaContainer.md - docs/Models/Requests/AddPlaylistContentsResponseBody.md - docs/Models/Requests/AddPlaylistContentsResponse.md - docs/Models/Requests/Force.md @@ -609,9 +736,21 @@ generatedFiles: - docs/Models/Requests/GetSourceConnectionInformationResponseBody.md - docs/Models/Requests/GetSourceConnectionInformationResponse.md - docs/Models/Requests/GetSessionsErrors.md + - docs/Models/Requests/GetSessionsSessionsResponseBody.md + - docs/Models/Requests/GetSessionsStream.md + - docs/Models/Requests/GetSessionsPart.md + - docs/Models/Requests/GetSessionsMedia.md + - docs/Models/Requests/User.md + - docs/Models/Requests/Player.md + - docs/Models/Requests/Session.md + - docs/Models/Requests/GetSessionsMetadata.md + - docs/Models/Requests/GetSessionsMediaContainer.md - docs/Models/Requests/GetSessionsResponseBody.md - docs/Models/Requests/GetSessionsResponse.md - docs/Models/Requests/GetSessionHistoryErrors.md + - docs/Models/Requests/GetSessionHistorySessionsResponseBody.md + - docs/Models/Requests/GetSessionHistoryMetadata.md + - docs/Models/Requests/GetSessionHistoryMediaContainer.md - docs/Models/Requests/GetSessionHistoryResponseBody.md - docs/Models/Requests/GetSessionHistoryResponse.md - docs/Models/Requests/GetTranscodeSessionsErrors.md @@ -625,6 +764,9 @@ generatedFiles: - docs/Models/Requests/StopTranscodeSessionResponseBody.md - docs/Models/Requests/StopTranscodeSessionResponse.md - docs/Models/Requests/GetUpdateStatusErrors.md + - docs/Models/Requests/GetUpdateStatusUpdaterResponseBody.md + - docs/Models/Requests/Release.md + - docs/Models/Requests/GetUpdateStatusMediaContainer.md - docs/Models/Requests/GetUpdateStatusResponseBody.md - docs/Models/Requests/GetUpdateStatusResponse.md - docs/Models/Requests/Download.md diff --git a/PlexAPI/Activities.cs b/PlexAPI/Activities.cs index af88109..d86f3a2 100644 --- a/PlexAPI/Activities.cs +++ b/PlexAPI/Activities.cs @@ -70,10 +70,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; diff --git a/PlexAPI/Butler.cs b/PlexAPI/Butler.cs index 3aa8115..693dc68 100644 --- a/PlexAPI/Butler.cs +++ b/PlexAPI/Butler.cs @@ -97,10 +97,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; diff --git a/PlexAPI/Hubs.cs b/PlexAPI/Hubs.cs index 82a75a6..446ee78 100644 --- a/PlexAPI/Hubs.cs +++ b/PlexAPI/Hubs.cs @@ -59,10 +59,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; @@ -103,7 +103,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -112,7 +121,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -149,7 +158,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -158,7 +176,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; diff --git a/PlexAPI/Library.cs b/PlexAPI/Library.cs index 8c07ab2..bdde534 100644 --- a/PlexAPI/Library.cs +++ b/PlexAPI/Library.cs @@ -66,25 +66,45 @@ namespace PlexAPI /// Get Library Details /// /// - /// Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are:
+ /// ## Library Details Endpoint
///
- /// - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here:
- /// - Primary: (e.g. all, On Deck) These are still used in some clients to provide "shortcuts" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users.
- /// - Secondary: These are marked with `secondary="1"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation.
- /// - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there's a completely obsolete entry marked `search="1"` which used to be used to allow clients to build search dialogs on the fly.
- /// - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won't render any filtering controls. The `Type` object contains:
- /// - `key`: This provides the root endpoint returning the actual media list for the type.
- /// - `type`: This is the metadata type for the type (if a standard Plex type).
- /// - `title`: The title for for the content of this type (e.g. "Movies").
- /// - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API.
- /// - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with.
- /// - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter.
- /// - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a "Genre" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element.
- /// - `title`: The title for the filter.
- /// - Each `Sort` object contains a description of the sort field.
- /// - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending).
- /// - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort.
- /// - `title`: The title of the field.
+ /// This endpoint provides comprehensive details about the library, focusing on organizational aspects rather than the content itself.
+ ///
+ /// The details include:
+ ///
+ /// ### Directories
+ /// Organized into three categories:
+ ///
+ /// - **Primary Directories**:
+ /// - Used in some clients for quick access to media subsets (e.g., "All", "On Deck").
+ /// - Most can be replicated via media queries.
+ /// - Customizable by users.
+ ///
+ /// - **Secondary Directories**:
+ /// - Marked with `secondary="1"`.
+ /// - Used in older clients for structured navigation.
+ ///
+ /// - **Special Directories**:
+ /// - Includes a "By Folder" entry for filesystem-based browsing.
+ /// - Contains an obsolete `search="1"` entry for on-the-fly search dialog creation.
+ ///
+ /// ### Types
+ /// Each type in the library comes with a set of filters and sorts, aiding in building dynamic media controls:
+ ///
+ /// - **Type Object Attributes**:
+ /// - `key`: Endpoint for the media list of this type.
+ /// - `type`: Metadata type (if standard Plex type).
+ /// - `title`: Title for this content type (e.g., "Movies").
+ ///
+ /// - **Filter Objects**:
+ /// - Subset of the media query language.
+ /// - Attributes include `filter` (name), `filterType` (data type), `key` (endpoint for value range), and `title`.
+ ///
+ /// - **Sort Objects**:
+ /// - Description of sort fields.
+ /// - Attributes include `defaultDirection` (asc/desc), `descKey` and `key` (sort parameters), and `title`.
+ ///
+ /// > **Note**: Filters and sorts are optional; without them, no filtering controls are rendered.
/// ///
/// @@ -103,11 +123,31 @@ namespace PlexAPI /// Get Library Items /// /// - /// This endpoint will return a list of library items filtered by the filter and type provided
+ /// Fetches details from a specific section of the library identified by a section key and a tag. The tag parameter accepts the following values:
+ /// - `all`: All items in the section.
+ /// - `unwatched`: Items that have not been played.
+ /// - `newest`: Items that are recently released.
+ /// - `recentlyAdded`: Items that are recently added to the library.
+ /// - `recentlyViewed`: Items that were recently viewed.
+ /// - `onDeck`: Items to continue watching.
+ /// - `collection`: Items categorized by collection.
+ /// - `edition`: Items categorized by edition.
+ /// - `genre`: Items categorized by genre.
+ /// - `year`: Items categorized by year of release.
+ /// - `decade`: Items categorized by decade.
+ /// - `director`: Items categorized by director.
+ /// - `actor`: Items categorized by starring actor.
+ /// - `country`: Items categorized by country of origin.
+ /// - `contentRating`: Items categorized by content rating.
+ /// - `rating`: Items categorized by rating.
+ /// - `resolution`: Items categorized by resolution.
+ /// - `firstCharacter`: Items categorized by the first letter.
+ /// - `folder`: Items categorized by folder.
+ /// - `search?type=1`: Search functionality within the section.
/// ///
/// - Task GetLibraryItemsAsync(double sectionId, double? type = null, string? filter = null); + Task GetLibraryItemsAsync(long sectionId, Tag tag); /// /// Refresh Library @@ -119,26 +159,6 @@ namespace PlexAPI /// Task RefreshLibraryAsync(double sectionId); - /// - /// Get Latest Library Items - /// - /// - /// This endpoint will return a list of the latest library items filtered by the filter and type provided
- /// - ///
- ///
- Task GetLatestLibraryItemsAsync(double sectionId, double type, string? filter = null); - - /// - /// Get Common Library Items - /// - /// - /// Represents a "Common" item. It contains only the common attributes of the items selected by the provided filter
- /// - ///
- ///
- Task GetCommonLibraryItemsAsync(double sectionId, double type, string? filter = null); - /// /// Get Items Metadata /// @@ -181,10 +201,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; @@ -439,16 +459,15 @@ namespace PlexAPI } - public async Task GetLibraryItemsAsync(double sectionId, double? type = null, string? filter = null) + public async Task GetLibraryItemsAsync(long sectionId, Tag tag) { var request = new GetLibraryItemsRequest() { SectionId = sectionId, - Type = type, - Filter = filter, + Tag = tag, }; string baseUrl = this.SDKConfiguration.GetTemplatedServerDetails(); - var urlString = URLBuilder.Build(baseUrl, "/library/sections/{sectionId}/all", request); + var urlString = URLBuilder.Build(baseUrl, "/library/sections/{sectionId}/{tag}", request); var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString); httpRequest.Headers.Add("user-agent", _userAgent); @@ -467,12 +486,7 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) - { - - return response; - } - if((response.StatusCode == 401)) + if((response.StatusCode == 200)) { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { @@ -529,98 +543,6 @@ namespace PlexAPI } - public async Task GetLatestLibraryItemsAsync(double sectionId, double type, string? filter = null) - { - var request = new GetLatestLibraryItemsRequest() - { - SectionId = sectionId, - Type = type, - Filter = filter, - }; - string baseUrl = this.SDKConfiguration.GetTemplatedServerDetails(); - var urlString = URLBuilder.Build(baseUrl, "/library/sections/{sectionId}/latest", request); - - var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString); - httpRequest.Headers.Add("user-agent", _userAgent); - - - var client = _securityClient; - - var httpResponse = await client.SendAsync(httpRequest); - - var contentType = httpResponse.Content.Headers.ContentType?.MediaType; - - var response = new GetLatestLibraryItemsResponse - { - StatusCode = (int)httpResponse.StatusCode, - ContentType = contentType, - RawResponse = httpResponse - }; - - if((response.StatusCode == 200) || (response.StatusCode == 400)) - { - - return response; - } - if((response.StatusCode == 401)) - { - if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) - { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); - } - - return response; - } - return response; - } - - - public async Task GetCommonLibraryItemsAsync(double sectionId, double type, string? filter = null) - { - var request = new GetCommonLibraryItemsRequest() - { - SectionId = sectionId, - Type = type, - Filter = filter, - }; - string baseUrl = this.SDKConfiguration.GetTemplatedServerDetails(); - var urlString = URLBuilder.Build(baseUrl, "/library/sections/{sectionId}/common", request); - - var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString); - httpRequest.Headers.Add("user-agent", _userAgent); - - - var client = _securityClient; - - var httpResponse = await client.SendAsync(httpRequest); - - var contentType = httpResponse.Content.Headers.ContentType?.MediaType; - - var response = new GetCommonLibraryItemsResponse - { - StatusCode = (int)httpResponse.StatusCode, - ContentType = contentType, - RawResponse = httpResponse - }; - - if((response.StatusCode == 200) || (response.StatusCode == 400) || (response.StatusCode == 404)) - { - - return response; - } - if((response.StatusCode == 401)) - { - if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) - { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); - } - - return response; - } - return response; - } - - public async Task GetMetadataAsync(double ratingKey) { var request = new GetMetadataRequest() @@ -647,7 +569,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -656,7 +587,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -691,7 +622,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -700,7 +640,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; diff --git a/PlexAPI/Log.cs b/PlexAPI/Log.cs index 78a42b5..f3a0e84 100644 --- a/PlexAPI/Log.cs +++ b/PlexAPI/Log.cs @@ -42,11 +42,31 @@ namespace PlexAPI /// Logging a multi-line message /// /// - /// This endpoint will write multiple lines to the main Plex Media Server log in a single request. It takes a set of query strings as would normally sent to the above GET endpoint as a linefeed-separated block of POST data. The parameters for each query string match as above.
+ /// This endpoint allows for the batch addition of log entries to the main Plex Media Server log.
+ /// It accepts a text/plain request body, where each line represents a distinct log entry.
+ /// Each log entry consists of URL-encoded key-value pairs, specifying log attributes such as 'level', 'message', and 'source'.
+ ///
+ /// Log entries are separated by a newline character (`\n`).
+ /// Each entry's parameters should be URL-encoded to ensure accurate parsing and handling of special characters.
+ /// This method is efficient for logging multiple entries in a single API call, reducing the overhead of multiple individual requests.
+ ///
+ /// The 'level' parameter specifies the log entry's severity or importance, with the following integer values:
+ /// - `0`: Error - Critical issues that require immediate attention.
+ /// - `1`: Warning - Important events that are not critical but may indicate potential issues.
+ /// - `2`: Info - General informational messages about system operation.
+ /// - `3`: Debug - Detailed information useful for debugging purposes.
+ /// - `4`: Verbose - Highly detailed diagnostic information for in-depth analysis.
+ ///
+ /// The 'message' parameter contains the log text, and 'source' identifies the log message's origin (e.g., an application name or module).
+ ///
+ /// Example of a single log entry format:
+ /// `level=4&message=Sample%20log%20entry&source=applicationName`
+ ///
+ /// Ensure each parameter is properly URL-encoded to avoid interpretation issues.
/// ///
///
- Task LogMultiLineAsync(); + Task LogMultiLineAsync(string request); /// /// Enabling Papertrail @@ -70,10 +90,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; @@ -133,7 +153,7 @@ namespace PlexAPI } - public async Task LogMultiLineAsync() + public async Task LogMultiLineAsync(string request) { string baseUrl = this.SDKConfiguration.GetTemplatedServerDetails(); var urlString = baseUrl + "/log"; @@ -141,6 +161,15 @@ namespace PlexAPI var httpRequest = new HttpRequestMessage(HttpMethod.Post, urlString); httpRequest.Headers.Add("user-agent", _userAgent); + var serializedBody = RequestBodySerializer.Serialize(request, "Request", "string"); + if (serializedBody == null) + { + throw new ArgumentNullException("request body is required"); + } + else + { + httpRequest.Content = serializedBody; + } var client = _securityClient; diff --git a/PlexAPI/Media.cs b/PlexAPI/Media.cs index b820ba6..d84427c 100644 --- a/PlexAPI/Media.cs +++ b/PlexAPI/Media.cs @@ -68,10 +68,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; diff --git a/PlexAPI/Models/Requests/AddPlaylistContentsMediaContainer.cs b/PlexAPI/Models/Requests/AddPlaylistContentsMediaContainer.cs new file mode 100644 index 0000000..bf3d39d --- /dev/null +++ b/PlexAPI/Models/Requests/AddPlaylistContentsMediaContainer.cs @@ -0,0 +1,31 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class AddPlaylistContentsMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("leafCountAdded")] + public int? LeafCountAdded { get; set; } + + [JsonProperty("leafCountRequested")] + public int? LeafCountRequested { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/AddPlaylistContentsMetadata.cs b/PlexAPI/Models/Requests/AddPlaylistContentsMetadata.cs new file mode 100644 index 0000000..9a385cf --- /dev/null +++ b/PlexAPI/Models/Requests/AddPlaylistContentsMetadata.cs @@ -0,0 +1,57 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class AddPlaylistContentsMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("smart")] + public bool? Smart { get; set; } + + [JsonProperty("playlistType")] + public string? PlaylistType { get; set; } + + [JsonProperty("composite")] + public string? Composite { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("leafCount")] + public int? LeafCount { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/AddPlaylistContentsPlaylistsResponseBody.cs b/PlexAPI/Models/Requests/AddPlaylistContentsPlaylistsResponseBody.cs new file mode 100644 index 0000000..ffeb18a --- /dev/null +++ b/PlexAPI/Models/Requests/AddPlaylistContentsPlaylistsResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class AddPlaylistContentsPlaylistsResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/AddPlaylistContentsRequest.cs b/PlexAPI/Models/Requests/AddPlaylistContentsRequest.cs index 503e821..d406862 100644 --- a/PlexAPI/Models/Requests/AddPlaylistContentsRequest.cs +++ b/PlexAPI/Models/Requests/AddPlaylistContentsRequest.cs @@ -31,6 +31,6 @@ namespace PlexAPI.Models.Requests /// the play queue to add to a playlist /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=playQueueID")] - public double PlayQueueID { get; set; } = default!; + public double? PlayQueueID { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/AddPlaylistContentsResponse.cs b/PlexAPI/Models/Requests/AddPlaylistContentsResponse.cs index 43efc9f..86188c2 100644 --- a/PlexAPI/Models/Requests/AddPlaylistContentsResponse.cs +++ b/PlexAPI/Models/Requests/AddPlaylistContentsResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// Playlist Updated + /// + public AddPlaylistContentsResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public AddPlaylistContentsResponseBody? Object { get; set; } + public AddPlaylistContentsPlaylistsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/AddPlaylistContentsResponseBody.cs b/PlexAPI/Models/Requests/AddPlaylistContentsResponseBody.cs index 721d328..e1fd777 100644 --- a/PlexAPI/Models/Requests/AddPlaylistContentsResponseBody.cs +++ b/PlexAPI/Models/Requests/AddPlaylistContentsResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// Playlist Updated /// public class AddPlaylistContentsResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public AddPlaylistContentsMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/CreatePlaylistMediaContainer.cs b/PlexAPI/Models/Requests/CreatePlaylistMediaContainer.cs new file mode 100644 index 0000000..093ba2c --- /dev/null +++ b/PlexAPI/Models/Requests/CreatePlaylistMediaContainer.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class CreatePlaylistMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/CreatePlaylistMetadata.cs b/PlexAPI/Models/Requests/CreatePlaylistMetadata.cs new file mode 100644 index 0000000..5cea70e --- /dev/null +++ b/PlexAPI/Models/Requests/CreatePlaylistMetadata.cs @@ -0,0 +1,66 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class CreatePlaylistMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("smart")] + public bool? Smart { get; set; } + + [JsonProperty("playlistType")] + public string? PlaylistType { get; set; } + + [JsonProperty("icon")] + public string? Icon { get; set; } + + [JsonProperty("viewCount")] + public int? ViewCount { get; set; } + + [JsonProperty("lastViewedAt")] + public int? LastViewedAt { get; set; } + + [JsonProperty("leafCount")] + public int? LeafCount { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + + [JsonProperty("composite")] + public string? Composite { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLatestLibraryItemsResponseBody.cs b/PlexAPI/Models/Requests/CreatePlaylistPlaylistsResponseBody.cs similarity index 84% rename from PlexAPI/Models/Requests/GetLatestLibraryItemsResponseBody.cs rename to PlexAPI/Models/Requests/CreatePlaylistPlaylistsResponseBody.cs index 096ee9f..71c2810 100644 --- a/PlexAPI/Models/Requests/GetLatestLibraryItemsResponseBody.cs +++ b/PlexAPI/Models/Requests/CreatePlaylistPlaylistsResponseBody.cs @@ -16,10 +16,10 @@ namespace PlexAPI.Models.Requests /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public class GetLatestLibraryItemsResponseBody + public class CreatePlaylistPlaylistsResponseBody { [JsonProperty("errors")] - public List? Errors { get; set; } + public List? Errors { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/CreatePlaylistRequest.cs b/PlexAPI/Models/Requests/CreatePlaylistRequest.cs index 1322724..081be8c 100644 --- a/PlexAPI/Models/Requests/CreatePlaylistRequest.cs +++ b/PlexAPI/Models/Requests/CreatePlaylistRequest.cs @@ -37,7 +37,7 @@ namespace PlexAPI.Models.Requests /// the content URI for the playlist /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=uri")] - public string? Uri { get; set; } + public string Uri { get; set; } = default!; /// /// the play queue to copy to a playlist diff --git a/PlexAPI/Models/Requests/CreatePlaylistResponse.cs b/PlexAPI/Models/Requests/CreatePlaylistResponse.cs index 16bfa70..eb1fce4 100644 --- a/PlexAPI/Models/Requests/CreatePlaylistResponse.cs +++ b/PlexAPI/Models/Requests/CreatePlaylistResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// returns all playlists + /// + public CreatePlaylistResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public CreatePlaylistResponseBody? Object { get; set; } + public CreatePlaylistPlaylistsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/CreatePlaylistResponseBody.cs b/PlexAPI/Models/Requests/CreatePlaylistResponseBody.cs index d9c5415..2927888 100644 --- a/PlexAPI/Models/Requests/CreatePlaylistResponseBody.cs +++ b/PlexAPI/Models/Requests/CreatePlaylistResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// returns all playlists /// public class CreatePlaylistResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public CreatePlaylistMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Force.cs b/PlexAPI/Models/Requests/Force.cs index 6dad1fd..884aed8 100644 --- a/PlexAPI/Models/Requests/Force.cs +++ b/PlexAPI/Models/Requests/Force.cs @@ -12,10 +12,12 @@ namespace PlexAPI.Models.Requests { /// - /// force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist.
+ /// Force overwriting of duplicate playlists.
/// /// - /// The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.
+ /// By default, a playlist file uploaded with the same path will overwrite the existing playlist.
+ /// The `force` argument is used to disable overwriting.
+ /// If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.
/// ///
///
diff --git a/PlexAPI/Models/Requests/GetAvailableClientsResponse.cs b/PlexAPI/Models/Requests/GetAvailableClientsResponse.cs index 3b54663..e31b7d3 100644 --- a/PlexAPI/Models/Requests/GetAvailableClientsResponse.cs +++ b/PlexAPI/Models/Requests/GetAvailableClientsResponse.cs @@ -10,7 +10,6 @@ #nullable enable namespace PlexAPI.Models.Requests { - using System.Collections.Generic; using System.Net.Http; using System; @@ -35,11 +34,11 @@ namespace PlexAPI.Models.Requests /// /// Available Clients /// - public List? ResponseBodies { get; set; } + public GetAvailableClientsResponseBody? TwoHundredApplicationJsonObject { get; set; } /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetAvailableClientsResponseBody? Object { get; set; } + public GetAvailableClientsServerResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetAvailableClientsResponseBody.cs b/PlexAPI/Models/Requests/GetAvailableClientsResponseBody.cs index 523a4b5..2a8fc1b 100644 --- a/PlexAPI/Models/Requests/GetAvailableClientsResponseBody.cs +++ b/PlexAPI/Models/Requests/GetAvailableClientsResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// Available Clients /// public class GetAvailableClientsResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetAvailableClientsMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetAvailableClientsServerResponseBody.cs b/PlexAPI/Models/Requests/GetAvailableClientsServerResponseBody.cs new file mode 100644 index 0000000..77b6ca2 --- /dev/null +++ b/PlexAPI/Models/Requests/GetAvailableClientsServerResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetAvailableClientsServerResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetCommonLibraryItemsRequest.cs b/PlexAPI/Models/Requests/GetCommonLibraryItemsRequest.cs deleted file mode 100644 index e66c5f5..0000000 --- a/PlexAPI/Models/Requests/GetCommonLibraryItemsRequest.cs +++ /dev/null @@ -1,36 +0,0 @@ - -//------------------------------------------------------------------------------ -// -// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 class GetCommonLibraryItemsRequest - { - - /// - /// the Id of the library to query - /// - [SpeakeasyMetadata("pathParam:style=simple,explode=false,name=sectionId")] - public double SectionId { get; set; } = default!; - - /// - /// item type - /// - [SpeakeasyMetadata("queryParam:style=form,explode=true,name=type")] - public double Type { get; set; } = default!; - - /// - /// the filter parameter - /// - [SpeakeasyMetadata("queryParam:style=form,explode=true,name=filter")] - public string? Filter { get; set; } - } -} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetCommonLibraryItemsResponse.cs b/PlexAPI/Models/Requests/GetCommonLibraryItemsResponse.cs deleted file mode 100644 index 28bebc1..0000000 --- a/PlexAPI/Models/Requests/GetCommonLibraryItemsResponse.cs +++ /dev/null @@ -1,39 +0,0 @@ - -//------------------------------------------------------------------------------ -// -// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Net.Http; - using System; - - public class GetCommonLibraryItemsResponse - { - - /// - /// HTTP response content type for this operation - /// - public string? ContentType { get; set; } = default!; - - /// - /// HTTP response status code for this operation - /// - public int StatusCode { get; set; } = default!; - - /// - /// Raw HTTP response; suitable for custom response parsing - /// - public HttpResponseMessage RawResponse { get; set; } = default!; - - /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. - /// - public GetCommonLibraryItemsResponseBody? Object { get; set; } - } -} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetCommonLibraryItemsResponseBody.cs b/PlexAPI/Models/Requests/GetGlobalHubsHubsResponseBody.cs similarity index 84% rename from PlexAPI/Models/Requests/GetCommonLibraryItemsResponseBody.cs rename to PlexAPI/Models/Requests/GetGlobalHubsHubsResponseBody.cs index bd3f50b..a2c6675 100644 --- a/PlexAPI/Models/Requests/GetCommonLibraryItemsResponseBody.cs +++ b/PlexAPI/Models/Requests/GetGlobalHubsHubsResponseBody.cs @@ -16,10 +16,10 @@ namespace PlexAPI.Models.Requests /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public class GetCommonLibraryItemsResponseBody + public class GetGlobalHubsHubsResponseBody { [JsonProperty("errors")] - public List? Errors { get; set; } + public List? Errors { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetGlobalHubsMediaContainer.cs b/PlexAPI/Models/Requests/GetGlobalHubsMediaContainer.cs new file mode 100644 index 0000000..5ec4c7d --- /dev/null +++ b/PlexAPI/Models/Requests/GetGlobalHubsMediaContainer.cs @@ -0,0 +1,31 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetGlobalHubsMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("allowSync")] + public bool? AllowSync { get; set; } + + [JsonProperty("identifier")] + public string? Identifier { get; set; } + + [JsonProperty("Hub")] + public List? Hub { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetGlobalHubsMetadata.cs b/PlexAPI/Models/Requests/GetGlobalHubsMetadata.cs new file mode 100644 index 0000000..e4bf220 --- /dev/null +++ b/PlexAPI/Models/Requests/GetGlobalHubsMetadata.cs @@ -0,0 +1,69 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetGlobalHubsMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("titleSort")] + public string? TitleSort { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("smart")] + public bool? Smart { get; set; } + + [JsonProperty("playlistType")] + public string? PlaylistType { get; set; } + + [JsonProperty("composite")] + public string? Composite { get; set; } + + [JsonProperty("icon")] + public string? Icon { get; set; } + + [JsonProperty("viewCount")] + public int? ViewCount { get; set; } + + [JsonProperty("lastViewedAt")] + public int? LastViewedAt { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("leafCount")] + public int? LeafCount { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetGlobalHubsResponse.cs b/PlexAPI/Models/Requests/GetGlobalHubsResponse.cs index 2df48d4..00cde9b 100644 --- a/PlexAPI/Models/Requests/GetGlobalHubsResponse.cs +++ b/PlexAPI/Models/Requests/GetGlobalHubsResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// returns global hubs + /// + public GetGlobalHubsResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetGlobalHubsResponseBody? Object { get; set; } + public GetGlobalHubsHubsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetGlobalHubsResponseBody.cs b/PlexAPI/Models/Requests/GetGlobalHubsResponseBody.cs index 8fcdec3..564bb76 100644 --- a/PlexAPI/Models/Requests/GetGlobalHubsResponseBody.cs +++ b/PlexAPI/Models/Requests/GetGlobalHubsResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// returns global hubs /// public class GetGlobalHubsResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetGlobalHubsMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLatestLibraryItemsRequest.cs b/PlexAPI/Models/Requests/GetLatestLibraryItemsRequest.cs deleted file mode 100644 index 6e602ab..0000000 --- a/PlexAPI/Models/Requests/GetLatestLibraryItemsRequest.cs +++ /dev/null @@ -1,36 +0,0 @@ - -//------------------------------------------------------------------------------ -// -// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 class GetLatestLibraryItemsRequest - { - - /// - /// the Id of the library to query - /// - [SpeakeasyMetadata("pathParam:style=simple,explode=false,name=sectionId")] - public double SectionId { get; set; } = default!; - - /// - /// item type - /// - [SpeakeasyMetadata("queryParam:style=form,explode=true,name=type")] - public double Type { get; set; } = default!; - - /// - /// the filter parameter - /// - [SpeakeasyMetadata("queryParam:style=form,explode=true,name=filter")] - public string? Filter { get; set; } - } -} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLatestLibraryItemsResponse.cs b/PlexAPI/Models/Requests/GetLatestLibraryItemsResponse.cs deleted file mode 100644 index 0577d41..0000000 --- a/PlexAPI/Models/Requests/GetLatestLibraryItemsResponse.cs +++ /dev/null @@ -1,39 +0,0 @@ - -//------------------------------------------------------------------------------ -// -// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Net.Http; - using System; - - public class GetLatestLibraryItemsResponse - { - - /// - /// HTTP response content type for this operation - /// - public string? ContentType { get; set; } = default!; - - /// - /// HTTP response status code for this operation - /// - public int StatusCode { get; set; } = default!; - - /// - /// Raw HTTP response; suitable for custom response parsing - /// - public HttpResponseMessage RawResponse { get; set; } = default!; - - /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. - /// - public GetLatestLibraryItemsResponseBody? Object { get; set; } - } -} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/ResponseBody.cs b/PlexAPI/Models/Requests/GetLibraryHubsCountry.cs similarity index 76% rename from PlexAPI/Models/Requests/ResponseBody.cs rename to PlexAPI/Models/Requests/GetLibraryHubsCountry.cs index 065e625..05f81ce 100644 --- a/PlexAPI/Models/Requests/ResponseBody.cs +++ b/PlexAPI/Models/Requests/GetLibraryHubsCountry.cs @@ -12,10 +12,10 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - public class ResponseBody + public class GetLibraryHubsCountry { - [JsonProperty("MediaContainer")] - public GetAvailableClientsMediaContainer? MediaContainer { get; set; } + [JsonProperty("tag")] + public string? Tag { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsDirector.cs b/PlexAPI/Models/Requests/GetLibraryHubsDirector.cs new file mode 100644 index 0000000..1ec4de8 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsDirector.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryHubsDirector + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsGenre.cs b/PlexAPI/Models/Requests/GetLibraryHubsGenre.cs new file mode 100644 index 0000000..e280d26 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsGenre.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryHubsGenre + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsHub.cs b/PlexAPI/Models/Requests/GetLibraryHubsHub.cs new file mode 100644 index 0000000..2dd0fae --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsHub.cs @@ -0,0 +1,55 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetLibraryHubsHub + { + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("hubIdentifier")] + public string? HubIdentifier { get; set; } + + [JsonProperty("context")] + public string? Context { get; set; } + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("more")] + public bool? More { get; set; } + + [JsonProperty("style")] + public string? Style { get; set; } + + [JsonProperty("hubKey")] + public string? HubKey { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + + [JsonProperty("promoted")] + public bool? Promoted { get; set; } + + [JsonProperty("random")] + public bool? Random { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsHubsResponseBody.cs b/PlexAPI/Models/Requests/GetLibraryHubsHubsResponseBody.cs new file mode 100644 index 0000000..e5075d6 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsHubsResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetLibraryHubsHubsResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsMedia.cs b/PlexAPI/Models/Requests/GetLibraryHubsMedia.cs new file mode 100644 index 0000000..8fa1a8d --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsMedia.cs @@ -0,0 +1,70 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetLibraryHubsMedia + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("bitrate")] + public int? Bitrate { get; set; } + + [JsonProperty("width")] + public int? Width { get; set; } + + [JsonProperty("height")] + public int? Height { get; set; } + + [JsonProperty("aspectRatio")] + public double? AspectRatio { get; set; } + + [JsonProperty("audioChannels")] + public int? AudioChannels { get; set; } + + [JsonProperty("audioCodec")] + public string? AudioCodec { get; set; } + + [JsonProperty("videoCodec")] + public string? VideoCodec { get; set; } + + [JsonProperty("videoResolution")] + public string? VideoResolution { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("videoFrameRate")] + public string? VideoFrameRate { get; set; } + + [JsonProperty("optimizedForStreaming")] + public int? OptimizedForStreaming { get; set; } + + [JsonProperty("audioProfile")] + public string? AudioProfile { get; set; } + + [JsonProperty("has64bitOffsets")] + public bool? Has64bitOffsets { get; set; } + + [JsonProperty("videoProfile")] + public string? VideoProfile { get; set; } + + [JsonProperty("Part")] + public List? Part { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsMediaContainer.cs b/PlexAPI/Models/Requests/GetLibraryHubsMediaContainer.cs new file mode 100644 index 0000000..22eb80b --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsMediaContainer.cs @@ -0,0 +1,40 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetLibraryHubsMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("allowSync")] + public bool? AllowSync { get; set; } + + [JsonProperty("identifier")] + public string? Identifier { get; set; } + + [JsonProperty("librarySectionID")] + public int? LibrarySectionID { get; set; } + + [JsonProperty("librarySectionTitle")] + public string? LibrarySectionTitle { get; set; } + + [JsonProperty("librarySectionUUID")] + public string? LibrarySectionUUID { get; set; } + + [JsonProperty("Hub")] + public List? Hub { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsMetadata.cs b/PlexAPI/Models/Requests/GetLibraryHubsMetadata.cs new file mode 100644 index 0000000..7d8d749 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsMetadata.cs @@ -0,0 +1,122 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 NodaTime; + using System.Collections.Generic; + + public class GetLibraryHubsMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("studio")] + public string? Studio { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("librarySectionTitle")] + public string? LibrarySectionTitle { get; set; } + + [JsonProperty("librarySectionID")] + public int? LibrarySectionID { get; set; } + + [JsonProperty("librarySectionKey")] + public string? LibrarySectionKey { get; set; } + + [JsonProperty("contentRating")] + public string? ContentRating { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("rating")] + public double? Rating { get; set; } + + [JsonProperty("audienceRating")] + public double? AudienceRating { get; set; } + + [JsonProperty("viewCount")] + public int? ViewCount { get; set; } + + [JsonProperty("lastViewedAt")] + public int? LastViewedAt { get; set; } + + [JsonProperty("year")] + public int? Year { get; set; } + + [JsonProperty("tagline")] + public string? Tagline { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("art")] + public string? Art { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("originallyAvailableAt")] + public LocalDate? OriginallyAvailableAt { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + + [JsonProperty("audienceRatingImage")] + public string? AudienceRatingImage { get; set; } + + [JsonProperty("primaryExtraKey")] + public string? PrimaryExtraKey { get; set; } + + [JsonProperty("ratingImage")] + public string? RatingImage { get; set; } + + [JsonProperty("Media")] + public List? Media { get; set; } + + [JsonProperty("Genre")] + public List? Genre { get; set; } + + [JsonProperty("Country")] + public List? Country { get; set; } + + [JsonProperty("Director")] + public List? Director { get; set; } + + [JsonProperty("Role")] + public List? Role { get; set; } + + [JsonProperty("Writer")] + public List? Writer { get; set; } + + [JsonProperty("skipCount")] + public int? SkipCount { get; set; } + + [JsonProperty("chapterSource")] + public string? ChapterSource { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsPart.cs b/PlexAPI/Models/Requests/GetLibraryHubsPart.cs new file mode 100644 index 0000000..8811030 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsPart.cs @@ -0,0 +1,48 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryHubsPart + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("file")] + public string? File { get; set; } + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("audioProfile")] + public string? AudioProfile { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("has64bitOffsets")] + public bool? Has64bitOffsets { get; set; } + + [JsonProperty("optimizedForStreaming")] + public bool? OptimizedForStreaming { get; set; } + + [JsonProperty("videoProfile")] + public string? VideoProfile { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsResponse.cs b/PlexAPI/Models/Requests/GetLibraryHubsResponse.cs index 6832618..7c3f752 100644 --- a/PlexAPI/Models/Requests/GetLibraryHubsResponse.cs +++ b/PlexAPI/Models/Requests/GetLibraryHubsResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// The hubs specific to the library + /// + public GetLibraryHubsResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetLibraryHubsResponseBody? Object { get; set; } + public GetLibraryHubsHubsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsResponseBody.cs b/PlexAPI/Models/Requests/GetLibraryHubsResponseBody.cs index f7306b2..314b40b 100644 --- a/PlexAPI/Models/Requests/GetLibraryHubsResponseBody.cs +++ b/PlexAPI/Models/Requests/GetLibraryHubsResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// The hubs specific to the library /// public class GetLibraryHubsResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetLibraryHubsMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsRole.cs b/PlexAPI/Models/Requests/GetLibraryHubsRole.cs new file mode 100644 index 0000000..3238651 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsRole.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryHubsRole + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryHubsWriter.cs b/PlexAPI/Models/Requests/GetLibraryHubsWriter.cs new file mode 100644 index 0000000..74b1cdb --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryHubsWriter.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryHubsWriter + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsCountry.cs b/PlexAPI/Models/Requests/GetLibraryItemsCountry.cs new file mode 100644 index 0000000..77e61f2 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsCountry.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryItemsCountry + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsDirector.cs b/PlexAPI/Models/Requests/GetLibraryItemsDirector.cs new file mode 100644 index 0000000..7208810 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsDirector.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryItemsDirector + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsGenre.cs b/PlexAPI/Models/Requests/GetLibraryItemsGenre.cs new file mode 100644 index 0000000..b70009b --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsGenre.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryItemsGenre + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsMedia.cs b/PlexAPI/Models/Requests/GetLibraryItemsMedia.cs new file mode 100644 index 0000000..6762cb5 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsMedia.cs @@ -0,0 +1,61 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetLibraryItemsMedia + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("bitrate")] + public int? Bitrate { get; set; } + + [JsonProperty("width")] + public int? Width { get; set; } + + [JsonProperty("height")] + public int? Height { get; set; } + + [JsonProperty("aspectRatio")] + public double? AspectRatio { get; set; } + + [JsonProperty("audioChannels")] + public int? AudioChannels { get; set; } + + [JsonProperty("audioCodec")] + public string? AudioCodec { get; set; } + + [JsonProperty("videoCodec")] + public string? VideoCodec { get; set; } + + [JsonProperty("videoResolution")] + public string? VideoResolution { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("videoFrameRate")] + public string? VideoFrameRate { get; set; } + + [JsonProperty("videoProfile")] + public string? VideoProfile { get; set; } + + [JsonProperty("Part")] + public List? Part { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsMediaContainer.cs b/PlexAPI/Models/Requests/GetLibraryItemsMediaContainer.cs new file mode 100644 index 0000000..774d5a0 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsMediaContainer.cs @@ -0,0 +1,64 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetLibraryItemsMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("allowSync")] + public bool? AllowSync { get; set; } + + [JsonProperty("art")] + public string? Art { get; set; } + + [JsonProperty("identifier")] + public string? Identifier { get; set; } + + [JsonProperty("librarySectionID")] + public int? LibrarySectionID { get; set; } + + [JsonProperty("librarySectionTitle")] + public string? LibrarySectionTitle { get; set; } + + [JsonProperty("librarySectionUUID")] + public string? LibrarySectionUUID { get; set; } + + [JsonProperty("mediaTagPrefix")] + public string? MediaTagPrefix { get; set; } + + [JsonProperty("mediaTagVersion")] + public int? MediaTagVersion { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("title1")] + public string? Title1 { get; set; } + + [JsonProperty("title2")] + public string? Title2 { get; set; } + + [JsonProperty("viewGroup")] + public string? ViewGroup { get; set; } + + [JsonProperty("viewMode")] + public int? ViewMode { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsMetadata.cs b/PlexAPI/Models/Requests/GetLibraryItemsMetadata.cs new file mode 100644 index 0000000..9a7ecb5 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsMetadata.cs @@ -0,0 +1,122 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 NodaTime; + using System.Collections.Generic; + + public class GetLibraryItemsMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("studio")] + public string? Studio { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("contentRating")] + public string? ContentRating { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("rating")] + public double? Rating { get; set; } + + [JsonProperty("audienceRating")] + public double? AudienceRating { get; set; } + + [JsonProperty("year")] + public int? Year { get; set; } + + [JsonProperty("tagline")] + public string? Tagline { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("art")] + public string? Art { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("originallyAvailableAt")] + public LocalDate? OriginallyAvailableAt { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + + [JsonProperty("audienceRatingImage")] + public string? AudienceRatingImage { get; set; } + + [JsonProperty("chapterSource")] + public string? ChapterSource { get; set; } + + [JsonProperty("primaryExtraKey")] + public string? PrimaryExtraKey { get; set; } + + [JsonProperty("ratingImage")] + public string? RatingImage { get; set; } + + [JsonProperty("Media")] + public List? Media { get; set; } + + [JsonProperty("Genre")] + public List? Genre { get; set; } + + [JsonProperty("Country")] + public List? Country { get; set; } + + [JsonProperty("Director")] + public List? Director { get; set; } + + [JsonProperty("Writer")] + public List? Writer { get; set; } + + [JsonProperty("Role")] + public List? Role { get; set; } + + [JsonProperty("titleSort")] + public string? TitleSort { get; set; } + + [JsonProperty("viewCount")] + public int? ViewCount { get; set; } + + [JsonProperty("lastViewedAt")] + public int? LastViewedAt { get; set; } + + [JsonProperty("originalTitle")] + public string? OriginalTitle { get; set; } + + [JsonProperty("viewOffset")] + public int? ViewOffset { get; set; } + + [JsonProperty("skipCount")] + public int? SkipCount { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsPart.cs b/PlexAPI/Models/Requests/GetLibraryItemsPart.cs new file mode 100644 index 0000000..1e10f04 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsPart.cs @@ -0,0 +1,39 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryItemsPart + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("file")] + public string? File { get; set; } + + [JsonProperty("size")] + public long? Size { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("videoProfile")] + public string? VideoProfile { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsRequest.cs b/PlexAPI/Models/Requests/GetLibraryItemsRequest.cs index d1b03a2..d7c195c 100644 --- a/PlexAPI/Models/Requests/GetLibraryItemsRequest.cs +++ b/PlexAPI/Models/Requests/GetLibraryItemsRequest.cs @@ -19,18 +19,12 @@ namespace PlexAPI.Models.Requests /// the Id of the library to query /// [SpeakeasyMetadata("pathParam:style=simple,explode=false,name=sectionId")] - public double SectionId { get; set; } = default!; + public long SectionId { get; set; } = default!; /// - /// item type + /// A key representing a specific tag within the section. /// - [SpeakeasyMetadata("queryParam:style=form,explode=true,name=type")] - public double? Type { get; set; } - - /// - /// the filter parameter - /// - [SpeakeasyMetadata("queryParam:style=form,explode=true,name=filter")] - public string? Filter { get; set; } + [SpeakeasyMetadata("pathParam:style=simple,explode=false,name=tag")] + public Tag Tag { get; set; } = default!; } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsResponse.cs b/PlexAPI/Models/Requests/GetLibraryItemsResponse.cs index 27e5487..1b8451b 100644 --- a/PlexAPI/Models/Requests/GetLibraryItemsResponse.cs +++ b/PlexAPI/Models/Requests/GetLibraryItemsResponse.cs @@ -32,7 +32,7 @@ namespace PlexAPI.Models.Requests public HttpResponseMessage RawResponse { get; set; } = default!; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// The contents of the library by section and tag /// public GetLibraryItemsResponseBody? Object { get; set; } } diff --git a/PlexAPI/Models/Requests/GetLibraryItemsResponseBody.cs b/PlexAPI/Models/Requests/GetLibraryItemsResponseBody.cs index 16106e8..41fb8b4 100644 --- a/PlexAPI/Models/Requests/GetLibraryItemsResponseBody.cs +++ b/PlexAPI/Models/Requests/GetLibraryItemsResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// The contents of the library by section and tag /// public class GetLibraryItemsResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetLibraryItemsMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsRole.cs b/PlexAPI/Models/Requests/GetLibraryItemsRole.cs new file mode 100644 index 0000000..b2ea536 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsRole.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryItemsRole + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsWriter.cs b/PlexAPI/Models/Requests/GetLibraryItemsWriter.cs new file mode 100644 index 0000000..5338999 --- /dev/null +++ b/PlexAPI/Models/Requests/GetLibraryItemsWriter.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetLibraryItemsWriter + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataChildrenDirectory.cs b/PlexAPI/Models/Requests/GetMetadataChildrenDirectory.cs new file mode 100644 index 0000000..98cca4a --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataChildrenDirectory.cs @@ -0,0 +1,33 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetMetadataChildrenDirectory + { + + [JsonProperty("leafCount")] + public int? LeafCount { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("viewedLeafCount")] + public int? ViewedLeafCount { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataChildrenLibraryResponseBody.cs b/PlexAPI/Models/Requests/GetMetadataChildrenLibraryResponseBody.cs new file mode 100644 index 0000000..9f48a45 --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataChildrenLibraryResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetMetadataChildrenLibraryResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataChildrenMediaContainer.cs b/PlexAPI/Models/Requests/GetMetadataChildrenMediaContainer.cs new file mode 100644 index 0000000..faa9994 --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataChildrenMediaContainer.cs @@ -0,0 +1,88 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetMetadataChildrenMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("allowSync")] + public bool? AllowSync { get; set; } + + [JsonProperty("art")] + public string? Art { get; set; } + + [JsonProperty("identifier")] + public string? Identifier { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("librarySectionID")] + public int? LibrarySectionID { get; set; } + + [JsonProperty("librarySectionTitle")] + public string? LibrarySectionTitle { get; set; } + + [JsonProperty("librarySectionUUID")] + public string? LibrarySectionUUID { get; set; } + + [JsonProperty("mediaTagPrefix")] + public string? MediaTagPrefix { get; set; } + + [JsonProperty("mediaTagVersion")] + public int? MediaTagVersion { get; set; } + + [JsonProperty("nocache")] + public bool? Nocache { get; set; } + + [JsonProperty("parentIndex")] + public int? ParentIndex { get; set; } + + [JsonProperty("parentTitle")] + public string? ParentTitle { get; set; } + + [JsonProperty("parentYear")] + public int? ParentYear { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("theme")] + public string? Theme { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("title1")] + public string? Title1 { get; set; } + + [JsonProperty("title2")] + public string? Title2 { get; set; } + + [JsonProperty("viewGroup")] + public string? ViewGroup { get; set; } + + [JsonProperty("viewMode")] + public int? ViewMode { get; set; } + + [JsonProperty("Directory")] + public List? Directory { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataChildrenMetadata.cs b/PlexAPI/Models/Requests/GetMetadataChildrenMetadata.cs new file mode 100644 index 0000000..855a57c --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataChildrenMetadata.cs @@ -0,0 +1,99 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetMetadataChildrenMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("parentRatingKey")] + public string? ParentRatingKey { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("parentGuid")] + public string? ParentGuid { get; set; } + + [JsonProperty("parentStudio")] + public string? ParentStudio { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("parentKey")] + public string? ParentKey { get; set; } + + [JsonProperty("parentTitle")] + public string? ParentTitle { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("index")] + public int? Index { get; set; } + + [JsonProperty("parentIndex")] + public int? ParentIndex { get; set; } + + [JsonProperty("viewCount")] + public int? ViewCount { get; set; } + + [JsonProperty("lastViewedAt")] + public int? LastViewedAt { get; set; } + + [JsonProperty("parentYear")] + public int? ParentYear { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("art")] + public string? Art { get; set; } + + [JsonProperty("parentThumb")] + public string? ParentThumb { get; set; } + + [JsonProperty("parentTheme")] + public string? ParentTheme { get; set; } + + [JsonProperty("leafCount")] + public int? LeafCount { get; set; } + + [JsonProperty("viewedLeafCount")] + public int? ViewedLeafCount { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + + [JsonProperty("userRating")] + public int? UserRating { get; set; } + + [JsonProperty("skipCount")] + public int? SkipCount { get; set; } + + [JsonProperty("lastRatedAt")] + public int? LastRatedAt { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataChildrenResponse.cs b/PlexAPI/Models/Requests/GetMetadataChildrenResponse.cs index e78a991..2268b35 100644 --- a/PlexAPI/Models/Requests/GetMetadataChildrenResponse.cs +++ b/PlexAPI/Models/Requests/GetMetadataChildrenResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// The children of the library item. + /// + public GetMetadataChildrenResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetMetadataChildrenResponseBody? Object { get; set; } + public GetMetadataChildrenLibraryResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataChildrenResponseBody.cs b/PlexAPI/Models/Requests/GetMetadataChildrenResponseBody.cs index 43042e9..23b3e8c 100644 --- a/PlexAPI/Models/Requests/GetMetadataChildrenResponseBody.cs +++ b/PlexAPI/Models/Requests/GetMetadataChildrenResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// The children of the library item. /// public class GetMetadataChildrenResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetMetadataChildrenMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLibraryItemsErrors.cs b/PlexAPI/Models/Requests/GetMetadataCountry.cs similarity index 64% rename from PlexAPI/Models/Requests/GetLibraryItemsErrors.cs rename to PlexAPI/Models/Requests/GetMetadataCountry.cs index ca68265..50d44d9 100644 --- a/PlexAPI/Models/Requests/GetLibraryItemsErrors.cs +++ b/PlexAPI/Models/Requests/GetMetadataCountry.cs @@ -12,16 +12,16 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - public class GetLibraryItemsErrors + public class GetMetadataCountry { - [JsonProperty("code")] - public double? Code { get; set; } + [JsonProperty("id")] + public int? Id { get; set; } - [JsonProperty("message")] - public string? Message { get; set; } + [JsonProperty("filter")] + public string? Filter { get; set; } - [JsonProperty("status")] - public double? Status { get; set; } + [JsonProperty("tag")] + public string? Tag { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataDirector.cs b/PlexAPI/Models/Requests/GetMetadataDirector.cs new file mode 100644 index 0000000..1edc0f4 --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataDirector.cs @@ -0,0 +1,33 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetMetadataDirector + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("filter")] + public string? Filter { get; set; } + + [JsonProperty("tag")] + public string? Tag { get; set; } + + [JsonProperty("tagKey")] + public string? TagKey { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetCommonLibraryItemsErrors.cs b/PlexAPI/Models/Requests/GetMetadataGenre.cs similarity index 64% rename from PlexAPI/Models/Requests/GetCommonLibraryItemsErrors.cs rename to PlexAPI/Models/Requests/GetMetadataGenre.cs index 2b5300e..978c2c8 100644 --- a/PlexAPI/Models/Requests/GetCommonLibraryItemsErrors.cs +++ b/PlexAPI/Models/Requests/GetMetadataGenre.cs @@ -12,16 +12,16 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - public class GetCommonLibraryItemsErrors + public class GetMetadataGenre { - [JsonProperty("code")] - public double? Code { get; set; } + [JsonProperty("id")] + public int? Id { get; set; } - [JsonProperty("message")] - public string? Message { get; set; } + [JsonProperty("filter")] + public string? Filter { get; set; } - [JsonProperty("status")] - public double? Status { get; set; } + [JsonProperty("tag")] + public string? Tag { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataLibraryResponseBody.cs b/PlexAPI/Models/Requests/GetMetadataLibraryResponseBody.cs new file mode 100644 index 0000000..f5e995d --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataLibraryResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetMetadataLibraryResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataMedia.cs b/PlexAPI/Models/Requests/GetMetadataMedia.cs new file mode 100644 index 0000000..e2bfd1c --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataMedia.cs @@ -0,0 +1,70 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetMetadataMedia + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("bitrate")] + public int? Bitrate { get; set; } + + [JsonProperty("width")] + public int? Width { get; set; } + + [JsonProperty("height")] + public int? Height { get; set; } + + [JsonProperty("aspectRatio")] + public double? AspectRatio { get; set; } + + [JsonProperty("audioChannels")] + public int? AudioChannels { get; set; } + + [JsonProperty("audioCodec")] + public string? AudioCodec { get; set; } + + [JsonProperty("videoCodec")] + public string? VideoCodec { get; set; } + + [JsonProperty("videoResolution")] + public string? VideoResolution { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("videoFrameRate")] + public string? VideoFrameRate { get; set; } + + [JsonProperty("optimizedForStreaming")] + public int? OptimizedForStreaming { get; set; } + + [JsonProperty("audioProfile")] + public string? AudioProfile { get; set; } + + [JsonProperty("has64bitOffsets")] + public bool? Has64bitOffsets { get; set; } + + [JsonProperty("videoProfile")] + public string? VideoProfile { get; set; } + + [JsonProperty("Part")] + public List? Part { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataMediaContainer.cs b/PlexAPI/Models/Requests/GetMetadataMediaContainer.cs new file mode 100644 index 0000000..a53c364 --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataMediaContainer.cs @@ -0,0 +1,46 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetMetadataMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("allowSync")] + public bool? AllowSync { get; set; } + + [JsonProperty("identifier")] + public string? Identifier { get; set; } + + [JsonProperty("librarySectionID")] + public int? LibrarySectionID { get; set; } + + [JsonProperty("librarySectionTitle")] + public string? LibrarySectionTitle { get; set; } + + [JsonProperty("librarySectionUUID")] + public string? LibrarySectionUUID { get; set; } + + [JsonProperty("mediaTagPrefix")] + public string? MediaTagPrefix { get; set; } + + [JsonProperty("mediaTagVersion")] + public int? MediaTagVersion { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataMetadata.cs b/PlexAPI/Models/Requests/GetMetadataMetadata.cs new file mode 100644 index 0000000..b2c1862 --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataMetadata.cs @@ -0,0 +1,119 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 NodaTime; + using System.Collections.Generic; + + public class GetMetadataMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("studio")] + public string? Studio { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("librarySectionTitle")] + public string? LibrarySectionTitle { get; set; } + + [JsonProperty("librarySectionID")] + public int? LibrarySectionID { get; set; } + + [JsonProperty("librarySectionKey")] + public string? LibrarySectionKey { get; set; } + + [JsonProperty("contentRating")] + public string? ContentRating { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("rating")] + public double? Rating { get; set; } + + [JsonProperty("audienceRating")] + public double? AudienceRating { get; set; } + + [JsonProperty("year")] + public int? Year { get; set; } + + [JsonProperty("tagline")] + public string? Tagline { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("art")] + public string? Art { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("originallyAvailableAt")] + public LocalDate? OriginallyAvailableAt { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + + [JsonProperty("audienceRatingImage")] + public string? AudienceRatingImage { get; set; } + + [JsonProperty("hasPremiumPrimaryExtra")] + public string? HasPremiumPrimaryExtra { get; set; } + + [JsonProperty("ratingImage")] + public string? RatingImage { get; set; } + + [JsonProperty("Media")] + public List? Media { get; set; } + + [JsonProperty("Genre")] + public List? Genre { get; set; } + + [JsonProperty("Country")] + public List? Country { get; set; } + + [JsonProperty("Guid")] + public List? Guids { get; set; } + + [JsonProperty("Rating")] + public List? Ratings { get; set; } + + [JsonProperty("Director")] + public List? Director { get; set; } + + [JsonProperty("Writer")] + public List? Writer { get; set; } + + [JsonProperty("Role")] + public List? Role { get; set; } + + [JsonProperty("Producer")] + public List? Producer { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataPart.cs b/PlexAPI/Models/Requests/GetMetadataPart.cs new file mode 100644 index 0000000..ec6cd08 --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataPart.cs @@ -0,0 +1,52 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetMetadataPart + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("file")] + public string? File { get; set; } + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("audioProfile")] + public string? AudioProfile { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("has64bitOffsets")] + public bool? Has64bitOffsets { get; set; } + + [JsonProperty("optimizedForStreaming")] + public bool? OptimizedForStreaming { get; set; } + + [JsonProperty("videoProfile")] + public string? VideoProfile { get; set; } + + [JsonProperty("Stream")] + public List? Stream { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataResponse.cs b/PlexAPI/Models/Requests/GetMetadataResponse.cs index 292dbc1..80a6731 100644 --- a/PlexAPI/Models/Requests/GetMetadataResponse.cs +++ b/PlexAPI/Models/Requests/GetMetadataResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// The metadata of the library item. + /// + public GetMetadataResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetMetadataResponseBody? Object { get; set; } + public GetMetadataLibraryResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataResponseBody.cs b/PlexAPI/Models/Requests/GetMetadataResponseBody.cs index 5bd9e39..82dd996 100644 --- a/PlexAPI/Models/Requests/GetMetadataResponseBody.cs +++ b/PlexAPI/Models/Requests/GetMetadataResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// The metadata of the library item. /// public class GetMetadataResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetMetadataMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataRole.cs b/PlexAPI/Models/Requests/GetMetadataRole.cs new file mode 100644 index 0000000..c026a5d --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataRole.cs @@ -0,0 +1,36 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetMetadataRole + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("filter")] + public string? Filter { get; set; } + + [JsonProperty("tag")] + public string? Tag { get; set; } + + [JsonProperty("tagKey")] + public string? TagKey { get; set; } + + [JsonProperty("role")] + public string? Role { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetMetadataWriter.cs b/PlexAPI/Models/Requests/GetMetadataWriter.cs new file mode 100644 index 0000000..e1e1371 --- /dev/null +++ b/PlexAPI/Models/Requests/GetMetadataWriter.cs @@ -0,0 +1,33 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetMetadataWriter + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("filter")] + public string? Filter { get; set; } + + [JsonProperty("tag")] + public string? Tag { get; set; } + + [JsonProperty("tagKey")] + public string? TagKey { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetOnDeckGuids.cs b/PlexAPI/Models/Requests/GetOnDeckGuids.cs new file mode 100644 index 0000000..42251bb --- /dev/null +++ b/PlexAPI/Models/Requests/GetOnDeckGuids.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetOnDeckGuids + { + + [JsonProperty("id")] + public string? Id { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetOnDeckMetadata.cs b/PlexAPI/Models/Requests/GetOnDeckMetadata.cs index 2b1ac66..e9b7288 100644 --- a/PlexAPI/Models/Requests/GetOnDeckMetadata.cs +++ b/PlexAPI/Models/Requests/GetOnDeckMetadata.cs @@ -123,6 +123,6 @@ namespace PlexAPI.Models.Requests public List? Media { get; set; } [JsonProperty("Guid")] - public List? Guids { get; set; } + public List? Guids { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetOnDeckPart.cs b/PlexAPI/Models/Requests/GetOnDeckPart.cs index d0a3633..5078bf2 100644 --- a/PlexAPI/Models/Requests/GetOnDeckPart.cs +++ b/PlexAPI/Models/Requests/GetOnDeckPart.cs @@ -41,6 +41,6 @@ namespace PlexAPI.Models.Requests public string? VideoProfile { get; set; } [JsonProperty("Stream")] - public List? Stream { get; set; } + public List? Stream { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetOnDeckStream.cs b/PlexAPI/Models/Requests/GetOnDeckStream.cs new file mode 100644 index 0000000..44675ee --- /dev/null +++ b/PlexAPI/Models/Requests/GetOnDeckStream.cs @@ -0,0 +1,87 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetOnDeckStream + { + + [JsonProperty("id")] + public double? Id { get; set; } + + [JsonProperty("streamType")] + public double? StreamType { get; set; } + + [JsonProperty("default")] + public bool? Default { get; set; } + + [JsonProperty("codec")] + public string? Codec { get; set; } + + [JsonProperty("index")] + public double? Index { get; set; } + + [JsonProperty("bitrate")] + public double? Bitrate { get; set; } + + [JsonProperty("language")] + public string? Language { get; set; } + + [JsonProperty("languageTag")] + public string? LanguageTag { get; set; } + + [JsonProperty("languageCode")] + public string? LanguageCode { get; set; } + + [JsonProperty("bitDepth")] + public double? BitDepth { get; set; } + + [JsonProperty("chromaLocation")] + public string? ChromaLocation { get; set; } + + [JsonProperty("chromaSubsampling")] + public string? ChromaSubsampling { get; set; } + + [JsonProperty("codedHeight")] + public double? CodedHeight { get; set; } + + [JsonProperty("codedWidth")] + public double? CodedWidth { get; set; } + + [JsonProperty("colorRange")] + public string? ColorRange { get; set; } + + [JsonProperty("frameRate")] + public double? FrameRate { get; set; } + + [JsonProperty("height")] + public double? Height { get; set; } + + [JsonProperty("level")] + public double? Level { get; set; } + + [JsonProperty("profile")] + public string? Profile { get; set; } + + [JsonProperty("refFrames")] + public double? RefFrames { get; set; } + + [JsonProperty("width")] + public double? Width { get; set; } + + [JsonProperty("displayTitle")] + public string? DisplayTitle { get; set; } + + [JsonProperty("extendedDisplayTitle")] + public string? ExtendedDisplayTitle { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsCountry.cs b/PlexAPI/Models/Requests/GetPlaylistContentsCountry.cs new file mode 100644 index 0000000..03225c4 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsCountry.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetPlaylistContentsCountry + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsDirector.cs b/PlexAPI/Models/Requests/GetPlaylistContentsDirector.cs new file mode 100644 index 0000000..dfb652a --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsDirector.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetPlaylistContentsDirector + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsGenre.cs b/PlexAPI/Models/Requests/GetPlaylistContentsGenre.cs new file mode 100644 index 0000000..8bfdc67 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsGenre.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetPlaylistContentsGenre + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsMedia.cs b/PlexAPI/Models/Requests/GetPlaylistContentsMedia.cs new file mode 100644 index 0000000..8b2fc98 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsMedia.cs @@ -0,0 +1,70 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetPlaylistContentsMedia + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("bitrate")] + public int? Bitrate { get; set; } + + [JsonProperty("width")] + public int? Width { get; set; } + + [JsonProperty("height")] + public int? Height { get; set; } + + [JsonProperty("aspectRatio")] + public double? AspectRatio { get; set; } + + [JsonProperty("audioChannels")] + public int? AudioChannels { get; set; } + + [JsonProperty("audioCodec")] + public string? AudioCodec { get; set; } + + [JsonProperty("videoCodec")] + public string? VideoCodec { get; set; } + + [JsonProperty("videoResolution")] + public string? VideoResolution { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("videoFrameRate")] + public string? VideoFrameRate { get; set; } + + [JsonProperty("optimizedForStreaming")] + public int? OptimizedForStreaming { get; set; } + + [JsonProperty("audioProfile")] + public string? AudioProfile { get; set; } + + [JsonProperty("has64bitOffsets")] + public bool? Has64bitOffsets { get; set; } + + [JsonProperty("videoProfile")] + public string? VideoProfile { get; set; } + + [JsonProperty("Part")] + public List? Part { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsMediaContainer.cs b/PlexAPI/Models/Requests/GetPlaylistContentsMediaContainer.cs new file mode 100644 index 0000000..89d1f85 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsMediaContainer.cs @@ -0,0 +1,46 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetPlaylistContentsMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("composite")] + public string? Composite { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("leafCount")] + public int? LeafCount { get; set; } + + [JsonProperty("playlistType")] + public string? PlaylistType { get; set; } + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("smart")] + public bool? Smart { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsMetadata.cs b/PlexAPI/Models/Requests/GetPlaylistContentsMetadata.cs new file mode 100644 index 0000000..cafa1ea --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsMetadata.cs @@ -0,0 +1,116 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 NodaTime; + using System.Collections.Generic; + + public class GetPlaylistContentsMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("studio")] + public string? Studio { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("titleSort")] + public string? TitleSort { get; set; } + + [JsonProperty("librarySectionTitle")] + public string? LibrarySectionTitle { get; set; } + + [JsonProperty("librarySectionID")] + public int? LibrarySectionID { get; set; } + + [JsonProperty("librarySectionKey")] + public string? LibrarySectionKey { get; set; } + + [JsonProperty("contentRating")] + public string? ContentRating { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("rating")] + public double? Rating { get; set; } + + [JsonProperty("audienceRating")] + public double? AudienceRating { get; set; } + + [JsonProperty("year")] + public int? Year { get; set; } + + [JsonProperty("tagline")] + public string? Tagline { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("art")] + public string? Art { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("originallyAvailableAt")] + public LocalDate? OriginallyAvailableAt { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + + [JsonProperty("audienceRatingImage")] + public string? AudienceRatingImage { get; set; } + + [JsonProperty("hasPremiumExtras")] + public string? HasPremiumExtras { get; set; } + + [JsonProperty("hasPremiumPrimaryExtra")] + public string? HasPremiumPrimaryExtra { get; set; } + + [JsonProperty("ratingImage")] + public string? RatingImage { get; set; } + + [JsonProperty("Media")] + public List? Media { get; set; } + + [JsonProperty("Genre")] + public List? Genre { get; set; } + + [JsonProperty("Country")] + public List? Country { get; set; } + + [JsonProperty("Director")] + public List? Director { get; set; } + + [JsonProperty("Writer")] + public List? Writer { get; set; } + + [JsonProperty("Role")] + public List? Role { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsPart.cs b/PlexAPI/Models/Requests/GetPlaylistContentsPart.cs new file mode 100644 index 0000000..b63a834 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsPart.cs @@ -0,0 +1,48 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetPlaylistContentsPart + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("file")] + public string? File { get; set; } + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("audioProfile")] + public string? AudioProfile { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("has64bitOffsets")] + public bool? Has64bitOffsets { get; set; } + + [JsonProperty("optimizedForStreaming")] + public bool? OptimizedForStreaming { get; set; } + + [JsonProperty("videoProfile")] + public string? VideoProfile { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsPlaylistsResponseBody.cs b/PlexAPI/Models/Requests/GetPlaylistContentsPlaylistsResponseBody.cs new file mode 100644 index 0000000..8b72868 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsPlaylistsResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetPlaylistContentsPlaylistsResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsResponse.cs b/PlexAPI/Models/Requests/GetPlaylistContentsResponse.cs index aa4ab5a..05ab405 100644 --- a/PlexAPI/Models/Requests/GetPlaylistContentsResponse.cs +++ b/PlexAPI/Models/Requests/GetPlaylistContentsResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// The playlist contents + /// + public GetPlaylistContentsResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetPlaylistContentsResponseBody? Object { get; set; } + public GetPlaylistContentsPlaylistsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsResponseBody.cs b/PlexAPI/Models/Requests/GetPlaylistContentsResponseBody.cs index 3685ef7..1b39a72 100644 --- a/PlexAPI/Models/Requests/GetPlaylistContentsResponseBody.cs +++ b/PlexAPI/Models/Requests/GetPlaylistContentsResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// The playlist contents /// public class GetPlaylistContentsResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetPlaylistContentsMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsRole.cs b/PlexAPI/Models/Requests/GetPlaylistContentsRole.cs new file mode 100644 index 0000000..a69318a --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsRole.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetPlaylistContentsRole + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistContentsWriter.cs b/PlexAPI/Models/Requests/GetPlaylistContentsWriter.cs new file mode 100644 index 0000000..b4518c3 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistContentsWriter.cs @@ -0,0 +1,21 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetPlaylistContentsWriter + { + + [JsonProperty("tag")] + public string? Tag { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistMediaContainer.cs b/PlexAPI/Models/Requests/GetPlaylistMediaContainer.cs new file mode 100644 index 0000000..890afe8 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistMediaContainer.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetPlaylistMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistMetadata.cs b/PlexAPI/Models/Requests/GetPlaylistMetadata.cs new file mode 100644 index 0000000..925b56b --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistMetadata.cs @@ -0,0 +1,63 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetPlaylistMetadata + { + + [JsonProperty("content")] + public string? Content { get; set; } + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("smart")] + public bool? Smart { get; set; } + + [JsonProperty("playlistType")] + public string? PlaylistType { get; set; } + + [JsonProperty("composite")] + public string? Composite { get; set; } + + [JsonProperty("icon")] + public string? Icon { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("leafCount")] + public int? LeafCount { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistPlaylistsResponseBody.cs b/PlexAPI/Models/Requests/GetPlaylistPlaylistsResponseBody.cs new file mode 100644 index 0000000..f23488b --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistPlaylistsResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetPlaylistPlaylistsResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistResponse.cs b/PlexAPI/Models/Requests/GetPlaylistResponse.cs index 703e361..beef724 100644 --- a/PlexAPI/Models/Requests/GetPlaylistResponse.cs +++ b/PlexAPI/Models/Requests/GetPlaylistResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// The playlist + /// + public GetPlaylistResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetPlaylistResponseBody? Object { get; set; } + public GetPlaylistPlaylistsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistResponseBody.cs b/PlexAPI/Models/Requests/GetPlaylistResponseBody.cs index e7f28f1..28291d8 100644 --- a/PlexAPI/Models/Requests/GetPlaylistResponseBody.cs +++ b/PlexAPI/Models/Requests/GetPlaylistResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// The playlist /// public class GetPlaylistResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetPlaylistMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistsMediaContainer.cs b/PlexAPI/Models/Requests/GetPlaylistsMediaContainer.cs new file mode 100644 index 0000000..acb6cf5 --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistsMediaContainer.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetPlaylistsMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistsMetadata.cs b/PlexAPI/Models/Requests/GetPlaylistsMetadata.cs new file mode 100644 index 0000000..a60668c --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistsMetadata.cs @@ -0,0 +1,66 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetPlaylistsMetadata + { + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("summary")] + public string? Summary { get; set; } + + [JsonProperty("smart")] + public bool? Smart { get; set; } + + [JsonProperty("playlistType")] + public string? PlaylistType { get; set; } + + [JsonProperty("composite")] + public string? Composite { get; set; } + + [JsonProperty("icon")] + public string? Icon { get; set; } + + [JsonProperty("viewCount")] + public int? ViewCount { get; set; } + + [JsonProperty("lastViewedAt")] + public int? LastViewedAt { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("leafCount")] + public int? LeafCount { get; set; } + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistsPlaylistsResponseBody.cs b/PlexAPI/Models/Requests/GetPlaylistsPlaylistsResponseBody.cs new file mode 100644 index 0000000..5723d8b --- /dev/null +++ b/PlexAPI/Models/Requests/GetPlaylistsPlaylistsResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetPlaylistsPlaylistsResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistsResponse.cs b/PlexAPI/Models/Requests/GetPlaylistsResponse.cs index 1d12c60..4067d22 100644 --- a/PlexAPI/Models/Requests/GetPlaylistsResponse.cs +++ b/PlexAPI/Models/Requests/GetPlaylistsResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// returns all playlists + /// + public GetPlaylistsResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetPlaylistsResponseBody? Object { get; set; } + public GetPlaylistsPlaylistsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetPlaylistsResponseBody.cs b/PlexAPI/Models/Requests/GetPlaylistsResponseBody.cs index 6924055..e18fe7e 100644 --- a/PlexAPI/Models/Requests/GetPlaylistsResponseBody.cs +++ b/PlexAPI/Models/Requests/GetPlaylistsResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// returns all playlists /// public class GetPlaylistsResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetPlaylistsMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetServerIdentityResponse.cs b/PlexAPI/Models/Requests/GetServerIdentityResponse.cs index 1584341..c3ff7d1 100644 --- a/PlexAPI/Models/Requests/GetServerIdentityResponse.cs +++ b/PlexAPI/Models/Requests/GetServerIdentityResponse.cs @@ -32,7 +32,7 @@ namespace PlexAPI.Models.Requests public HttpResponseMessage RawResponse { get; set; } = default!; /// - /// The Transcode Sessions + /// The Server Identity information /// public GetServerIdentityResponseBody? TwoHundredApplicationJsonObject { get; set; } diff --git a/PlexAPI/Models/Requests/GetServerIdentityResponseBody.cs b/PlexAPI/Models/Requests/GetServerIdentityResponseBody.cs index cfe3a39..0f092dc 100644 --- a/PlexAPI/Models/Requests/GetServerIdentityResponseBody.cs +++ b/PlexAPI/Models/Requests/GetServerIdentityResponseBody.cs @@ -13,7 +13,7 @@ namespace PlexAPI.Models.Requests using Newtonsoft.Json; /// - /// The Transcode Sessions + /// The Server Identity information /// public class GetServerIdentityResponseBody { diff --git a/PlexAPI/Models/Requests/GetSessionHistoryMediaContainer.cs b/PlexAPI/Models/Requests/GetSessionHistoryMediaContainer.cs new file mode 100644 index 0000000..da08e47 --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionHistoryMediaContainer.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetSessionHistoryMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionHistoryMetadata.cs b/PlexAPI/Models/Requests/GetSessionHistoryMetadata.cs new file mode 100644 index 0000000..70e1ea5 --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionHistoryMetadata.cs @@ -0,0 +1,76 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 NodaTime; + + public class GetSessionHistoryMetadata + { + + [JsonProperty("historyKey")] + public string? HistoryKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("librarySectionID")] + public string? LibrarySectionID { get; set; } + + [JsonProperty("parentKey")] + public string? ParentKey { get; set; } + + [JsonProperty("grandparentKey")] + public string? GrandparentKey { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("grandparentTitle")] + public string? GrandparentTitle { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("parentThumb")] + public string? ParentThumb { get; set; } + + [JsonProperty("grandparentThumb")] + public string? GrandparentThumb { get; set; } + + [JsonProperty("grandparentArt")] + public string? GrandparentArt { get; set; } + + [JsonProperty("index")] + public int? Index { get; set; } + + [JsonProperty("parentIndex")] + public int? ParentIndex { get; set; } + + [JsonProperty("originallyAvailableAt")] + public LocalDate? OriginallyAvailableAt { get; set; } + + [JsonProperty("viewedAt")] + public int? ViewedAt { get; set; } + + [JsonProperty("accountID")] + public int? AccountID { get; set; } + + [JsonProperty("deviceID")] + public int? DeviceID { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionHistoryResponse.cs b/PlexAPI/Models/Requests/GetSessionHistoryResponse.cs index 954501d..4948041 100644 --- a/PlexAPI/Models/Requests/GetSessionHistoryResponse.cs +++ b/PlexAPI/Models/Requests/GetSessionHistoryResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// List of Plex Sessions + /// + public GetSessionHistoryResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetSessionHistoryResponseBody? Object { get; set; } + public GetSessionHistorySessionsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionHistoryResponseBody.cs b/PlexAPI/Models/Requests/GetSessionHistoryResponseBody.cs index 0210955..65e8f0d 100644 --- a/PlexAPI/Models/Requests/GetSessionHistoryResponseBody.cs +++ b/PlexAPI/Models/Requests/GetSessionHistoryResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// List of Plex Sessions /// public class GetSessionHistoryResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetSessionHistoryMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionHistorySessionsResponseBody.cs b/PlexAPI/Models/Requests/GetSessionHistorySessionsResponseBody.cs new file mode 100644 index 0000000..4ef1f2c --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionHistorySessionsResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetSessionHistorySessionsResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionsMedia.cs b/PlexAPI/Models/Requests/GetSessionsMedia.cs new file mode 100644 index 0000000..0446ce3 --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionsMedia.cs @@ -0,0 +1,43 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetSessionsMedia + { + + [JsonProperty("audioChannels")] + public int? AudioChannels { get; set; } + + [JsonProperty("audioCodec")] + public string? AudioCodec { get; set; } + + [JsonProperty("bitrate")] + public int? Bitrate { get; set; } + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("id")] + public string? Id { get; set; } + + [JsonProperty("selected")] + public bool? Selected { get; set; } + + [JsonProperty("Part")] + public List? Part { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionsMediaContainer.cs b/PlexAPI/Models/Requests/GetSessionsMediaContainer.cs new file mode 100644 index 0000000..05262bf --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionsMediaContainer.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetSessionsMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionsMetadata.cs b/PlexAPI/Models/Requests/GetSessionsMetadata.cs new file mode 100644 index 0000000..664dc58 --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionsMetadata.cs @@ -0,0 +1,130 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetSessionsMetadata + { + + [JsonProperty("addedAt")] + public int? AddedAt { get; set; } + + [JsonProperty("art")] + public string? Art { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("grandparentArt")] + public string? GrandparentArt { get; set; } + + [JsonProperty("grandparentGuid")] + public string? GrandparentGuid { get; set; } + + [JsonProperty("grandparentKey")] + public string? GrandparentKey { get; set; } + + [JsonProperty("grandparentRatingKey")] + public string? GrandparentRatingKey { get; set; } + + [JsonProperty("grandparentThumb")] + public string? GrandparentThumb { get; set; } + + [JsonProperty("grandparentTitle")] + public string? GrandparentTitle { get; set; } + + [JsonProperty("guid")] + public string? Guid { get; set; } + + [JsonProperty("index")] + public int? Index { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("librarySectionID")] + public string? LibrarySectionID { get; set; } + + [JsonProperty("librarySectionKey")] + public string? LibrarySectionKey { get; set; } + + [JsonProperty("librarySectionTitle")] + public string? LibrarySectionTitle { get; set; } + + [JsonProperty("musicAnalysisVersion")] + public string? MusicAnalysisVersion { get; set; } + + [JsonProperty("parentGuid")] + public string? ParentGuid { get; set; } + + [JsonProperty("parentIndex")] + public int? ParentIndex { get; set; } + + [JsonProperty("parentKey")] + public string? ParentKey { get; set; } + + [JsonProperty("parentRatingKey")] + public string? ParentRatingKey { get; set; } + + [JsonProperty("parentStudio")] + public string? ParentStudio { get; set; } + + [JsonProperty("parentThumb")] + public string? ParentThumb { get; set; } + + [JsonProperty("parentTitle")] + public string? ParentTitle { get; set; } + + [JsonProperty("parentYear")] + public int? ParentYear { get; set; } + + [JsonProperty("ratingCount")] + public int? RatingCount { get; set; } + + [JsonProperty("ratingKey")] + public string? RatingKey { get; set; } + + [JsonProperty("sessionKey")] + public string? SessionKey { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("titleSort")] + public string? TitleSort { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("updatedAt")] + public int? UpdatedAt { get; set; } + + [JsonProperty("viewOffset")] + public int? ViewOffset { get; set; } + + [JsonProperty("Media")] + public List? Media { get; set; } + + [JsonProperty("User")] + public User? User { get; set; } + + [JsonProperty("Player")] + public Player? Player { get; set; } + + [JsonProperty("Session")] + public Session? Session { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionsPart.cs b/PlexAPI/Models/Requests/GetSessionsPart.cs new file mode 100644 index 0000000..2fc2e25 --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionsPart.cs @@ -0,0 +1,49 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetSessionsPart + { + + [JsonProperty("container")] + public string? Container { get; set; } + + [JsonProperty("duration")] + public int? Duration { get; set; } + + [JsonProperty("file")] + public string? File { get; set; } + + [JsonProperty("hasThumbnail")] + public string? HasThumbnail { get; set; } + + [JsonProperty("id")] + public string? Id { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("decision")] + public string? Decision { get; set; } + + [JsonProperty("selected")] + public bool? Selected { get; set; } + + [JsonProperty("Stream")] + public List? Stream { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionsResponse.cs b/PlexAPI/Models/Requests/GetSessionsResponse.cs index 7923a73..b9a6f8e 100644 --- a/PlexAPI/Models/Requests/GetSessionsResponse.cs +++ b/PlexAPI/Models/Requests/GetSessionsResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// List of Active Plex Sessions + /// + public GetSessionsResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetSessionsResponseBody? Object { get; set; } + public GetSessionsSessionsResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionsResponseBody.cs b/PlexAPI/Models/Requests/GetSessionsResponseBody.cs index ec22211..13a6128 100644 --- a/PlexAPI/Models/Requests/GetSessionsResponseBody.cs +++ b/PlexAPI/Models/Requests/GetSessionsResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// List of Active Plex Sessions /// public class GetSessionsResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetSessionsMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionsSessionsResponseBody.cs b/PlexAPI/Models/Requests/GetSessionsSessionsResponseBody.cs new file mode 100644 index 0000000..020f534 --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionsSessionsResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetSessionsSessionsResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetSessionsStream.cs b/PlexAPI/Models/Requests/GetSessionsStream.cs new file mode 100644 index 0000000..198b187 --- /dev/null +++ b/PlexAPI/Models/Requests/GetSessionsStream.cs @@ -0,0 +1,78 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class GetSessionsStream + { + + [JsonProperty("albumGain")] + public string? AlbumGain { get; set; } + + [JsonProperty("albumPeak")] + public string? AlbumPeak { get; set; } + + [JsonProperty("albumRange")] + public string? AlbumRange { get; set; } + + [JsonProperty("audioChannelLayout")] + public string? AudioChannelLayout { get; set; } + + [JsonProperty("bitDepth")] + public int? BitDepth { get; set; } + + [JsonProperty("bitrate")] + public int? Bitrate { get; set; } + + [JsonProperty("channels")] + public int? Channels { get; set; } + + [JsonProperty("codec")] + public string? Codec { get; set; } + + [JsonProperty("displayTitle")] + public string? DisplayTitle { get; set; } + + [JsonProperty("extendedDisplayTitle")] + public string? ExtendedDisplayTitle { get; set; } + + [JsonProperty("gain")] + public string? Gain { get; set; } + + [JsonProperty("id")] + public string? Id { get; set; } + + [JsonProperty("index")] + public int? Index { get; set; } + + [JsonProperty("loudness")] + public string? Loudness { get; set; } + + [JsonProperty("lra")] + public string? Lra { get; set; } + + [JsonProperty("peak")] + public string? Peak { get; set; } + + [JsonProperty("samplingRate")] + public int? SamplingRate { get; set; } + + [JsonProperty("selected")] + public bool? Selected { get; set; } + + [JsonProperty("streamType")] + public int? StreamType { get; set; } + + [JsonProperty("location")] + public string? Location { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetTranscodeSessionsMediaContainer.cs b/PlexAPI/Models/Requests/GetTranscodeSessionsMediaContainer.cs index 3182faf..96936b8 100644 --- a/PlexAPI/Models/Requests/GetTranscodeSessionsMediaContainer.cs +++ b/PlexAPI/Models/Requests/GetTranscodeSessionsMediaContainer.cs @@ -17,7 +17,7 @@ namespace PlexAPI.Models.Requests { [JsonProperty("size")] - public double? Size { get; set; } + public int? Size { get; set; } [JsonProperty("TranscodeSession")] public List? TranscodeSession { get; set; } diff --git a/PlexAPI/Models/Requests/GetUpdateStatusMediaContainer.cs b/PlexAPI/Models/Requests/GetUpdateStatusMediaContainer.cs new file mode 100644 index 0000000..b55ffbc --- /dev/null +++ b/PlexAPI/Models/Requests/GetUpdateStatusMediaContainer.cs @@ -0,0 +1,37 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class GetUpdateStatusMediaContainer + { + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("canInstall")] + public bool? CanInstall { get; set; } + + [JsonProperty("checkedAt")] + public int? CheckedAt { get; set; } + + [JsonProperty("downloadURL")] + public string? DownloadURL { get; set; } + + [JsonProperty("status")] + public int? Status { get; set; } + + [JsonProperty("Release")] + public List? Release { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetUpdateStatusResponse.cs b/PlexAPI/Models/Requests/GetUpdateStatusResponse.cs index 447db53..16df09b 100644 --- a/PlexAPI/Models/Requests/GetUpdateStatusResponse.cs +++ b/PlexAPI/Models/Requests/GetUpdateStatusResponse.cs @@ -31,9 +31,14 @@ namespace PlexAPI.Models.Requests /// public HttpResponseMessage RawResponse { get; set; } = default!; + /// + /// The Server Updates + /// + public GetUpdateStatusResponseBody? TwoHundredApplicationJsonObject { get; set; } + /// /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. /// - public GetUpdateStatusResponseBody? Object { get; set; } + public GetUpdateStatusUpdaterResponseBody? FourHundredAndOneApplicationJsonObject { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetUpdateStatusResponseBody.cs b/PlexAPI/Models/Requests/GetUpdateStatusResponseBody.cs index ee42cb0..ff3441e 100644 --- a/PlexAPI/Models/Requests/GetUpdateStatusResponseBody.cs +++ b/PlexAPI/Models/Requests/GetUpdateStatusResponseBody.cs @@ -11,15 +11,14 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - using System.Collections.Generic; /// - /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// The Server Updates /// public class GetUpdateStatusResponseBody { - [JsonProperty("errors")] - public List? Errors { get; set; } + [JsonProperty("MediaContainer")] + public GetUpdateStatusMediaContainer? MediaContainer { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetUpdateStatusUpdaterResponseBody.cs b/PlexAPI/Models/Requests/GetUpdateStatusUpdaterResponseBody.cs new file mode 100644 index 0000000..f28b108 --- /dev/null +++ b/PlexAPI/Models/Requests/GetUpdateStatusUpdaterResponseBody.cs @@ -0,0 +1,25 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + /// + /// Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + /// + public class GetUpdateStatusUpdaterResponseBody + { + + [JsonProperty("errors")] + public List? Errors { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Hub.cs b/PlexAPI/Models/Requests/Hub.cs new file mode 100644 index 0000000..a097ebb --- /dev/null +++ b/PlexAPI/Models/Requests/Hub.cs @@ -0,0 +1,52 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System.Collections.Generic; + + public class Hub + { + + [JsonProperty("hubKey")] + public string? HubKey { get; set; } + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("type")] + public string? Type { get; set; } + + [JsonProperty("hubIdentifier")] + public string? HubIdentifier { get; set; } + + [JsonProperty("context")] + public string? Context { get; set; } + + [JsonProperty("size")] + public int? Size { get; set; } + + [JsonProperty("more")] + public bool? More { get; set; } + + [JsonProperty("style")] + public string? Style { get; set; } + + [JsonProperty("promoted")] + public bool? Promoted { get; set; } + + [JsonProperty("Metadata")] + public List? Metadata { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Level.cs b/PlexAPI/Models/Requests/Level.cs index 10ef2a6..b20ae6b 100644 --- a/PlexAPI/Models/Requests/Level.cs +++ b/PlexAPI/Models/Requests/Level.cs @@ -17,7 +17,7 @@ namespace PlexAPI.Models.Requests /// /// 0: Error
/// 1: Warning
- /// 2: Info
+ /// 2: Info
/// 3: Debug
/// 4: Verbose
/// diff --git a/PlexAPI/Models/Requests/LogLineRequest.cs b/PlexAPI/Models/Requests/LogLineRequest.cs index d9fddc6..a1dbb15 100644 --- a/PlexAPI/Models/Requests/LogLineRequest.cs +++ b/PlexAPI/Models/Requests/LogLineRequest.cs @@ -21,7 +21,7 @@ namespace PlexAPI.Models.Requests /// /// 0: Error
/// 1: Warning
- /// 2: Info
+ /// 2: Info
/// 3: Debug
/// 4: Verbose
/// diff --git a/PlexAPI/Models/Requests/Player.cs b/PlexAPI/Models/Requests/Player.cs new file mode 100644 index 0000000..e149c23 --- /dev/null +++ b/PlexAPI/Models/Requests/Player.cs @@ -0,0 +1,63 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class Player + { + + [JsonProperty("address")] + public string? Address { get; set; } + + [JsonProperty("machineIdentifier")] + public string? MachineIdentifier { get; set; } + + [JsonProperty("model")] + public string? Model { get; set; } + + [JsonProperty("platform")] + public string? Platform { get; set; } + + [JsonProperty("platformVersion")] + public string? PlatformVersion { get; set; } + + [JsonProperty("product")] + public string? Product { get; set; } + + [JsonProperty("profile")] + public string? Profile { get; set; } + + [JsonProperty("remotePublicAddress")] + public string? RemotePublicAddress { get; set; } + + [JsonProperty("state")] + public string? State { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + + [JsonProperty("version")] + public string? Version { get; set; } + + [JsonProperty("local")] + public bool? Local { get; set; } + + [JsonProperty("relayed")] + public bool? Relayed { get; set; } + + [JsonProperty("secure")] + public bool? Secure { get; set; } + + [JsonProperty("userID")] + public int? UserID { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Producer.cs b/PlexAPI/Models/Requests/Producer.cs new file mode 100644 index 0000000..93d7933 --- /dev/null +++ b/PlexAPI/Models/Requests/Producer.cs @@ -0,0 +1,33 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class Producer + { + + [JsonProperty("id")] + public int? Id { get; set; } + + [JsonProperty("filter")] + public string? Filter { get; set; } + + [JsonProperty("tag")] + public string? Tag { get; set; } + + [JsonProperty("tagKey")] + public string? TagKey { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/GetLatestLibraryItemsErrors.cs b/PlexAPI/Models/Requests/Ratings.cs similarity index 64% rename from PlexAPI/Models/Requests/GetLatestLibraryItemsErrors.cs rename to PlexAPI/Models/Requests/Ratings.cs index 1f31aae..c2a56a7 100644 --- a/PlexAPI/Models/Requests/GetLatestLibraryItemsErrors.cs +++ b/PlexAPI/Models/Requests/Ratings.cs @@ -12,16 +12,16 @@ namespace PlexAPI.Models.Requests { using Newtonsoft.Json; - public class GetLatestLibraryItemsErrors + public class Ratings { - [JsonProperty("code")] - public double? Code { get; set; } + [JsonProperty("image")] + public string? Image { get; set; } - [JsonProperty("message")] - public string? Message { get; set; } + [JsonProperty("value")] + public double? Value { get; set; } - [JsonProperty("status")] - public double? Status { get; set; } + [JsonProperty("type")] + public string? Type { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Release.cs b/PlexAPI/Models/Requests/Release.cs new file mode 100644 index 0000000..d0402ac --- /dev/null +++ b/PlexAPI/Models/Requests/Release.cs @@ -0,0 +1,36 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class Release + { + + [JsonProperty("key")] + public string? Key { get; set; } + + [JsonProperty("version")] + public string? Version { get; set; } + + [JsonProperty("added")] + public string? Added { get; set; } + + [JsonProperty("fixed")] + public string? Fixed { get; set; } + + [JsonProperty("downloadURL")] + public string? DownloadURL { get; set; } + + [JsonProperty("state")] + public string? State { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Session.cs b/PlexAPI/Models/Requests/Session.cs new file mode 100644 index 0000000..fa21ae3 --- /dev/null +++ b/PlexAPI/Models/Requests/Session.cs @@ -0,0 +1,27 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class Session + { + + [JsonProperty("id")] + public string? Id { get; set; } + + [JsonProperty("bandwidth")] + public int? Bandwidth { get; set; } + + [JsonProperty("location")] + public string? Location { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Stream.cs b/PlexAPI/Models/Requests/Stream.cs index 93c655a..4f39883 100644 --- a/PlexAPI/Models/Requests/Stream.cs +++ b/PlexAPI/Models/Requests/Stream.cs @@ -16,10 +16,10 @@ namespace PlexAPI.Models.Requests { [JsonProperty("id")] - public double? Id { get; set; } + public int? Id { get; set; } [JsonProperty("streamType")] - public double? StreamType { get; set; } + public int? StreamType { get; set; } [JsonProperty("default")] public bool? Default { get; set; } @@ -28,10 +28,76 @@ namespace PlexAPI.Models.Requests public string? Codec { get; set; } [JsonProperty("index")] - public double? Index { get; set; } + public int? Index { get; set; } [JsonProperty("bitrate")] - public double? Bitrate { get; set; } + public int? Bitrate { get; set; } + + [JsonProperty("bitDepth")] + public int? BitDepth { get; set; } + + [JsonProperty("chromaLocation")] + public string? ChromaLocation { get; set; } + + [JsonProperty("chromaSubsampling")] + public string? ChromaSubsampling { get; set; } + + [JsonProperty("codedHeight")] + public int? CodedHeight { get; set; } + + [JsonProperty("codedWidth")] + public int? CodedWidth { get; set; } + + [JsonProperty("colorPrimaries")] + public string? ColorPrimaries { get; set; } + + [JsonProperty("colorRange")] + public string? ColorRange { get; set; } + + [JsonProperty("colorSpace")] + public string? ColorSpace { get; set; } + + [JsonProperty("colorTrc")] + public string? ColorTrc { get; set; } + + [JsonProperty("frameRate")] + public int? FrameRate { get; set; } + + [JsonProperty("hasScalingMatrix")] + public bool? HasScalingMatrix { get; set; } + + [JsonProperty("height")] + public int? Height { get; set; } + + [JsonProperty("level")] + public int? Level { get; set; } + + [JsonProperty("profile")] + public string? Profile { get; set; } + + [JsonProperty("refFrames")] + public int? RefFrames { get; set; } + + [JsonProperty("scanType")] + public string? ScanType { get; set; } + + [JsonProperty("streamIdentifier")] + public string? StreamIdentifier { get; set; } + + [JsonProperty("width")] + public int? Width { get; set; } + + [JsonProperty("displayTitle")] + public string? DisplayTitle { get; set; } + + [JsonProperty("extendedDisplayTitle")] + public string? ExtendedDisplayTitle { get; set; } + + [JsonProperty("selected")] + public bool? Selected { get; set; } + + [JsonProperty("channels")] + public int? Channels { get; set; } [JsonProperty("language")] public string? Language { get; set; } @@ -42,46 +108,7 @@ namespace PlexAPI.Models.Requests [JsonProperty("languageCode")] public string? LanguageCode { get; set; } - [JsonProperty("bitDepth")] - public double? BitDepth { get; set; } - - [JsonProperty("chromaLocation")] - public string? ChromaLocation { get; set; } - - [JsonProperty("chromaSubsampling")] - public string? ChromaSubsampling { get; set; } - - [JsonProperty("codedHeight")] - public double? CodedHeight { get; set; } - - [JsonProperty("codedWidth")] - public double? CodedWidth { get; set; } - - [JsonProperty("colorRange")] - public string? ColorRange { get; set; } - - [JsonProperty("frameRate")] - public double? FrameRate { get; set; } - - [JsonProperty("height")] - public double? Height { get; set; } - - [JsonProperty("level")] - public double? Level { get; set; } - - [JsonProperty("profile")] - public string? Profile { get; set; } - - [JsonProperty("refFrames")] - public double? RefFrames { get; set; } - - [JsonProperty("width")] - public double? Width { get; set; } - - [JsonProperty("displayTitle")] - public string? DisplayTitle { get; set; } - - [JsonProperty("extendedDisplayTitle")] - public string? ExtendedDisplayTitle { get; set; } + [JsonProperty("samplingRate")] + public int? SamplingRate { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/Tag.cs b/PlexAPI/Models/Requests/Tag.cs new file mode 100644 index 0000000..e35f011 --- /dev/null +++ b/PlexAPI/Models/Requests/Tag.cs @@ -0,0 +1,96 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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 System; + + /// + /// A key representing a specific tag within the section. + /// + public enum Tag + { + [JsonProperty("all")] + All, + [JsonProperty("unwatched")] + Unwatched, + [JsonProperty("newest")] + Newest, + [JsonProperty("recentlyAdded")] + RecentlyAdded, + [JsonProperty("recentlyViewed")] + RecentlyViewed, + [JsonProperty("onDeck")] + OnDeck, + [JsonProperty("collection")] + Collection, + [JsonProperty("edition")] + Edition, + [JsonProperty("genre")] + Genre, + [JsonProperty("year")] + Year, + [JsonProperty("decade")] + Decade, + [JsonProperty("director")] + Director, + [JsonProperty("actor")] + Actor, + [JsonProperty("country")] + Country, + [JsonProperty("contentRating")] + ContentRating, + [JsonProperty("rating")] + Rating, + [JsonProperty("resolution")] + Resolution, + [JsonProperty("firstCharacter")] + FirstCharacter, + [JsonProperty("folder")] + Folder, + [JsonProperty("search?type=1")] + SearchTypeEqual1, + } + + public static class TagExtension + { + public static string Value(this Tag value) + { + return ((JsonPropertyAttribute)value.GetType().GetMember(value.ToString())[0].GetCustomAttributes(typeof(JsonPropertyAttribute), false)[0]).PropertyName ?? value.ToString(); + } + + public static Tag ToEnum(this string value) + { + foreach(var field in typeof(Tag).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 Tag) + { + return (Tag)enumVal; + } + } + } + + throw new Exception($"Unknown value {value} for enum Tag"); + } + } + +} \ No newline at end of file diff --git a/PlexAPI/Models/Requests/TranscodeSession.cs b/PlexAPI/Models/Requests/TranscodeSession.cs index 184104a..c9af84c 100644 --- a/PlexAPI/Models/Requests/TranscodeSession.cs +++ b/PlexAPI/Models/Requests/TranscodeSession.cs @@ -28,7 +28,7 @@ namespace PlexAPI.Models.Requests public double? Progress { get; set; } [JsonProperty("size")] - public double? Size { get; set; } + public int? Size { get; set; } [JsonProperty("speed")] public double? Speed { get; set; } @@ -37,7 +37,10 @@ namespace PlexAPI.Models.Requests public bool? Error { get; set; } [JsonProperty("duration")] - public double? Duration { get; set; } + public int? Duration { get; set; } + + [JsonProperty("remaining")] + public int? Remaining { get; set; } [JsonProperty("context")] public string? Context { get; set; } @@ -54,6 +57,9 @@ namespace PlexAPI.Models.Requests [JsonProperty("audioDecision")] public string? AudioDecision { get; set; } + [JsonProperty("subtitleDecision")] + public string? SubtitleDecision { get; set; } + [JsonProperty("protocol")] public string? Protocol { get; set; } @@ -67,7 +73,7 @@ namespace PlexAPI.Models.Requests public string? AudioCodec { get; set; } [JsonProperty("audioChannels")] - public double? AudioChannels { get; set; } + public int? AudioChannels { get; set; } [JsonProperty("transcodeHwRequested")] public bool? TranscodeHwRequested { get; set; } diff --git a/PlexAPI/Models/Requests/UpdatePlaylistRequest.cs b/PlexAPI/Models/Requests/UpdatePlaylistRequest.cs index 7ec6062..aa02222 100644 --- a/PlexAPI/Models/Requests/UpdatePlaylistRequest.cs +++ b/PlexAPI/Models/Requests/UpdatePlaylistRequest.cs @@ -20,5 +20,17 @@ namespace PlexAPI.Models.Requests /// [SpeakeasyMetadata("pathParam:style=simple,explode=false,name=playlistID")] public double PlaylistID { get; set; } = default!; + + /// + /// name of the playlist + /// + [SpeakeasyMetadata("queryParam:style=form,explode=true,name=title")] + public string? Title { get; set; } + + /// + /// summary description of the playlist + /// + [SpeakeasyMetadata("queryParam:style=form,explode=true,name=summary")] + public string? Summary { get; set; } } } \ No newline at end of file diff --git a/PlexAPI/Models/Requests/UploadPlaylistRequest.cs b/PlexAPI/Models/Requests/UploadPlaylistRequest.cs index c1a3a30..245b693 100644 --- a/PlexAPI/Models/Requests/UploadPlaylistRequest.cs +++ b/PlexAPI/Models/Requests/UploadPlaylistRequest.cs @@ -31,10 +31,12 @@ namespace PlexAPI.Models.Requests public string Path { get; set; } = default!; /// - /// force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist.
+ /// Force overwriting of duplicate playlists.
/// /// - /// The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.
+ /// By default, a playlist file uploaded with the same path will overwrite the existing playlist.
+ /// The `force` argument is used to disable overwriting.
+ /// If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.
/// ///
///
diff --git a/PlexAPI/Models/Requests/User.cs b/PlexAPI/Models/Requests/User.cs new file mode 100644 index 0000000..eabead9 --- /dev/null +++ b/PlexAPI/Models/Requests/User.cs @@ -0,0 +1,27 @@ + +//------------------------------------------------------------------------------ +// +// This code was generated by Speakeasy (https://speakeasyapi.dev). 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; + + public class User + { + + [JsonProperty("id")] + public string? Id { get; set; } + + [JsonProperty("thumb")] + public string? Thumb { get; set; } + + [JsonProperty("title")] + public string? Title { get; set; } + } +} \ No newline at end of file diff --git a/PlexAPI/Playlists.cs b/PlexAPI/Playlists.cs index 90415f6..48ed235 100644 --- a/PlexAPI/Playlists.cs +++ b/PlexAPI/Playlists.cs @@ -36,7 +36,7 @@ namespace PlexAPI /// /// /// Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass:
- /// - `uri` - The content URI for what we're playing (e.g. `library://...`).
+ /// - `uri` - The content URI for what we're playing (e.g. `server://1234/com.plexapp.plugins.library/library/metadata/1`).
/// - `playQueueID` - To create a playlist from an existing play queue.
/// ///
@@ -81,7 +81,7 @@ namespace PlexAPI /// ///
/// - Task UpdatePlaylistAsync(double playlistID); + Task UpdatePlaylistAsync(double playlistID, string? title = null, string? summary = null); /// /// Retrieve Playlist Contents @@ -110,12 +110,12 @@ namespace PlexAPI /// Adding to a Playlist /// /// - /// Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist.
+ /// Adds a generator to a playlist, same parameters as the POST to create. With a dumb playlist, this adds the specified items to the playlist.
/// With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist.
/// ///
///
- Task AddPlaylistContentsAsync(double playlistID, string uri, double playQueueID); + Task AddPlaylistContentsAsync(double playlistID, string uri, double? playQueueID = null); /// /// Upload Playlist @@ -142,10 +142,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; @@ -181,7 +181,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -190,7 +199,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -207,7 +216,7 @@ namespace PlexAPI Smart = smart, }; string baseUrl = this.SDKConfiguration.GetTemplatedServerDetails(); - var urlString = URLBuilder.Build(baseUrl, "/playlists/all", request); + var urlString = URLBuilder.Build(baseUrl, "/playlists", request); var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString); httpRequest.Headers.Add("user-agent", _userAgent); @@ -226,7 +235,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -235,7 +253,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -270,7 +288,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -279,7 +306,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -332,11 +359,13 @@ namespace PlexAPI } - public async Task UpdatePlaylistAsync(double playlistID) + public async Task UpdatePlaylistAsync(double playlistID, string? title = null, string? summary = null) { var request = new UpdatePlaylistRequest() { PlaylistID = playlistID, + Title = title, + Summary = summary, }; string baseUrl = this.SDKConfiguration.GetTemplatedServerDetails(); var urlString = URLBuilder.Build(baseUrl, "/playlists/{playlistID}", request); @@ -403,7 +432,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -412,7 +450,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -465,7 +503,7 @@ namespace PlexAPI } - public async Task AddPlaylistContentsAsync(double playlistID, string uri, double playQueueID) + public async Task AddPlaylistContentsAsync(double playlistID, string uri, double? playQueueID = null) { var request = new AddPlaylistContentsRequest() { @@ -493,7 +531,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -502,7 +549,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; diff --git a/PlexAPI/PlexAPI.csproj b/PlexAPI/PlexAPI.csproj index eeb27ff..ca7a0e9 100644 --- a/PlexAPI/PlexAPI.csproj +++ b/PlexAPI/PlexAPI.csproj @@ -2,7 +2,7 @@ true Plex-API - 0.1.4 + 0.1.5 LukeHagar net5.0 enable diff --git a/PlexAPI/PlexAPISDK.cs b/PlexAPI/PlexAPISDK.cs index 8931cd0..33ebb48 100644 --- a/PlexAPI/PlexAPISDK.cs +++ b/PlexAPI/PlexAPISDK.cs @@ -235,10 +235,10 @@ namespace PlexAPI public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; diff --git a/PlexAPI/Search.cs b/PlexAPI/Search.cs index c96e7eb..9bfd7a9 100644 --- a/PlexAPI/Search.cs +++ b/PlexAPI/Search.cs @@ -83,10 +83,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; diff --git a/PlexAPI/Security.cs b/PlexAPI/Security.cs index 5a567a5..659da76 100644 --- a/PlexAPI/Security.cs +++ b/PlexAPI/Security.cs @@ -61,10 +61,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; diff --git a/PlexAPI/Server.cs b/PlexAPI/Server.cs index 68b1105..052854a 100644 --- a/PlexAPI/Server.cs +++ b/PlexAPI/Server.cs @@ -13,7 +13,6 @@ namespace PlexAPI using Newtonsoft.Json; using PlexAPI.Models.Requests; using PlexAPI.Utils; - using System.Collections.Generic; using System.Net.Http.Headers; using System.Net.Http; using System.Threading.Tasks; @@ -114,10 +113,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; @@ -255,7 +254,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.ResponseBodies = JsonConvert.DeserializeObject>(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -269,7 +268,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; diff --git a/PlexAPI/Sessions.cs b/PlexAPI/Sessions.cs index 995e74b..8cd0760 100644 --- a/PlexAPI/Sessions.cs +++ b/PlexAPI/Sessions.cs @@ -76,10 +76,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; @@ -115,7 +115,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -124,7 +133,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -155,7 +164,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -164,7 +182,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; @@ -248,7 +266,7 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 204) || (response.StatusCode == 400)) { return response; diff --git a/PlexAPI/Updater.cs b/PlexAPI/Updater.cs index 6ab2c3b..9265140 100644 --- a/PlexAPI/Updater.cs +++ b/PlexAPI/Updater.cs @@ -70,10 +70,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; @@ -109,7 +109,16 @@ namespace PlexAPI RawResponse = httpResponse }; - if((response.StatusCode == 200) || (response.StatusCode == 400)) + if((response.StatusCode == 200)) + { + if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) + { + response.TwoHundredApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + } + + return response; + } + if((response.StatusCode == 400)) { return response; @@ -118,7 +127,7 @@ namespace PlexAPI { if(Utilities.IsContentTypeMatch("application/json",response.ContentType)) { - response.Object = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); + response.FourHundredAndOneApplicationJsonObject = JsonConvert.DeserializeObject(await httpResponse.Content.ReadAsStringAsync(), new JsonSerializerSettings(){ NullValueHandling = NullValueHandling.Ignore, Converters = new JsonConverter[] { new FlexibleObjectDeserializer(), new EnumSerializer() }}); } return response; diff --git a/PlexAPI/Video.cs b/PlexAPI/Video.cs index 9ba7356..88e8173 100644 --- a/PlexAPI/Video.cs +++ b/PlexAPI/Video.cs @@ -58,10 +58,10 @@ namespace PlexAPI { public SDKConfig SDKConfiguration { get; private set; } private const string _language = "csharp"; - private const string _sdkVersion = "0.1.4"; + private const string _sdkVersion = "0.1.5"; private const string _sdkGenVersion = "2.237.3"; private const string _openapiDocVersion = "0.0.3"; - private const string _userAgent = "speakeasy-sdk/csharp 0.1.4 2.237.3 0.0.3 Plex-API"; + private const string _userAgent = "speakeasy-sdk/csharp 0.1.5 2.237.3 0.0.3 Plex-API"; private string _serverUrl = ""; private ISpeakeasyHttpClient _defaultClient; private ISpeakeasyHttpClient _securityClient; diff --git a/README.md b/README.md index cae7558..32329e7 100644 --- a/README.md +++ b/README.md @@ -90,8 +90,6 @@ var res = await sdk.Server.GetServerCapabilitiesAsync(); * [DeleteLibrary](docs/sdks/library/README.md#deletelibrary) - Delete Library Section * [GetLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items * [RefreshLibrary](docs/sdks/library/README.md#refreshlibrary) - Refresh Library -* [GetLatestLibraryItems](docs/sdks/library/README.md#getlatestlibraryitems) - Get Latest Library Items -* [GetCommonLibraryItems](docs/sdks/library/README.md#getcommonlibraryitems) - Get Common Library Items * [GetMetadata](docs/sdks/library/README.md#getmetadata) - Get Items Metadata * [GetMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children * [GetOnDeck](docs/sdks/library/README.md#getondeck) - Get On Deck diff --git a/RELEASES.md b/RELEASES.md index b0f0b56..99eaf2c 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -46,4 +46,12 @@ Based on: - OpenAPI Doc 0.0.3 - Speakeasy CLI 1.148.0 (2.237.3) https://github.com/speakeasy-api/speakeasy ### Generated -- [csharp v0.1.4] . \ No newline at end of file +- [csharp v0.1.4] . + +## 2024-01-22 17:16:22 +### Changes +Based on: +- OpenAPI Doc 0.0.3 +- Speakeasy CLI 1.148.0 (2.237.3) https://github.com/speakeasy-api/speakeasy +### Generated +- [csharp v0.1.5] . \ No newline at end of file diff --git a/docs/Models/Requests/AddPlaylistContentsMediaContainer.md b/docs/Models/Requests/AddPlaylistContentsMediaContainer.md new file mode 100644 index 0000000..1f0cc4e --- /dev/null +++ b/docs/Models/Requests/AddPlaylistContentsMediaContainer.md @@ -0,0 +1,11 @@ +# AddPlaylistContentsMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LeafCountAdded` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LeafCountRequested` | *int* | :heavy_minus_sign: | N/A | 1 | +| `Metadata` | List<[AddPlaylistContentsMetadata](../../Models/Requests/AddPlaylistContentsMetadata.md)> | :heavy_minus_sign: | N/A | [{"addedAt":1705716458,"composite":"/playlists/94/composite/1705800070","duration":423000,"guid":"com.plexapp.agents.none://972e3047-83d6-4848-a000-261f0af26ba2","key":"/playlists/94/items","leafCount":3,"playlistType":"video","ratingKey":"94","smart":false,"summary":"One of my great playlists","title":"A great playlist","type":"playlist","updatedAt":1705800070}] | \ No newline at end of file diff --git a/docs/Models/Requests/AddPlaylistContentsMetadata.md b/docs/Models/Requests/AddPlaylistContentsMetadata.md new file mode 100644 index 0000000..0c671f3 --- /dev/null +++ b/docs/Models/Requests/AddPlaylistContentsMetadata.md @@ -0,0 +1,20 @@ +# AddPlaylistContentsMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 94 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /playlists/94/items | +| `Guid` | *string* | :heavy_minus_sign: | N/A | com.plexapp.agents.none://972e3047-83d6-4848-a000-261f0af26ba2 | +| `Type` | *string* | :heavy_minus_sign: | N/A | playlist | +| `Title` | *string* | :heavy_minus_sign: | N/A | A great playlist | +| `Summary` | *string* | :heavy_minus_sign: | N/A | One of my great playlists | +| `Smart` | *bool* | :heavy_minus_sign: | N/A | false | +| `PlaylistType` | *string* | :heavy_minus_sign: | N/A | video | +| `Composite` | *string* | :heavy_minus_sign: | N/A | /playlists/94/composite/1705800070 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 423000 | +| `LeafCount` | *int* | :heavy_minus_sign: | N/A | 3 | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1705716458 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1705800070 | \ No newline at end of file diff --git a/docs/Models/Requests/AddPlaylistContentsPlaylistsResponseBody.md b/docs/Models/Requests/AddPlaylistContentsPlaylistsResponseBody.md new file mode 100644 index 0000000..49f3445 --- /dev/null +++ b/docs/Models/Requests/AddPlaylistContentsPlaylistsResponseBody.md @@ -0,0 +1,10 @@ +# AddPlaylistContentsPlaylistsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `Errors` | List<[AddPlaylistContentsErrors](../../Models/Requests/AddPlaylistContentsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/AddPlaylistContentsRequest.md b/docs/Models/Requests/AddPlaylistContentsRequest.md index 0ddcf13..acd256d 100644 --- a/docs/Models/Requests/AddPlaylistContentsRequest.md +++ b/docs/Models/Requests/AddPlaylistContentsRequest.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | -| `PlaylistID` | *double* | :heavy_check_mark: | the ID of the playlist | | -| `Uri` | *string* | :heavy_check_mark: | the content URI for the playlist | library://.. | -| `PlayQueueID` | *double* | :heavy_check_mark: | the play queue to add to a playlist | 123 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `PlaylistID` | *double* | :heavy_check_mark: | the ID of the playlist | | +| `Uri` | *string* | :heavy_check_mark: | the content URI for the playlist | server://12345/com.plexapp.plugins.library/library/metadata/1 | +| `PlayQueueID` | *double* | :heavy_minus_sign: | the play queue to add to a playlist | 123 | \ No newline at end of file diff --git a/docs/Models/Requests/AddPlaylistContentsResponse.md b/docs/Models/Requests/AddPlaylistContentsResponse.md index e8efc15..f71f512 100644 --- a/docs/Models/Requests/AddPlaylistContentsResponse.md +++ b/docs/Models/Requests/AddPlaylistContentsResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [AddPlaylistContentsResponseBody](../../Models/Requests/AddPlaylistContentsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [AddPlaylistContentsResponseBody](../../Models/Requests/AddPlaylistContentsResponseBody.md) | :heavy_minus_sign: | Playlist Updated | +| `FourHundredAndOneApplicationJsonObject` | [AddPlaylistContentsPlaylistsResponseBody](../../Models/Requests/AddPlaylistContentsPlaylistsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/AddPlaylistContentsResponseBody.md b/docs/Models/Requests/AddPlaylistContentsResponseBody.md index d3bd605..04a778a 100644 --- a/docs/Models/Requests/AddPlaylistContentsResponseBody.md +++ b/docs/Models/Requests/AddPlaylistContentsResponseBody.md @@ -1,10 +1,10 @@ # AddPlaylistContentsResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +Playlist Updated ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `Errors` | List<[AddPlaylistContentsErrors](../../Models/Requests/AddPlaylistContentsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `MediaContainer` | [AddPlaylistContentsMediaContainer](../../Models/Requests/AddPlaylistContentsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/CreatePlaylistMediaContainer.md b/docs/Models/Requests/CreatePlaylistMediaContainer.md new file mode 100644 index 0000000..dff74e7 --- /dev/null +++ b/docs/Models/Requests/CreatePlaylistMediaContainer.md @@ -0,0 +1,9 @@ +# CreatePlaylistMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 7 | +| `Metadata` | List<[CreatePlaylistMetadata](../../Models/Requests/CreatePlaylistMetadata.md)> | :heavy_minus_sign: | N/A | [{"addedAt":1705719589,"composite":"/playlists/96/composite/1705724593","duration":141000,"guid":"com.plexapp.agents.none://a2f92937-1408-40e2-b022-63a8a9377e55","icon":"playlist://image.smart","key":"/playlists/96/items","lastViewedAt":1705719589,"leafCount":1,"playlistType":"video","ratingKey":"96","smart":false,"summary":"What a great playlist","title":"A Great Playlist","type":"playlist","updatedAt":1705724593,"viewCount":1}] | \ No newline at end of file diff --git a/docs/Models/Requests/CreatePlaylistMetadata.md b/docs/Models/Requests/CreatePlaylistMetadata.md new file mode 100644 index 0000000..843ac2a --- /dev/null +++ b/docs/Models/Requests/CreatePlaylistMetadata.md @@ -0,0 +1,23 @@ +# CreatePlaylistMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 96 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /playlists/96/items | +| `Guid` | *string* | :heavy_minus_sign: | N/A | com.plexapp.agents.none://a2f92937-1408-40e2-b022-63a8a9377e55 | +| `Type` | *string* | :heavy_minus_sign: | N/A | playlist | +| `Title` | *string* | :heavy_minus_sign: | N/A | A Great Playlist | +| `Summary` | *string* | :heavy_minus_sign: | N/A | What a great playlist | +| `Smart` | *bool* | :heavy_minus_sign: | N/A | false | +| `PlaylistType` | *string* | :heavy_minus_sign: | N/A | video | +| `Icon` | *string* | :heavy_minus_sign: | N/A | playlist://image.smart | +| `ViewCount` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LastViewedAt` | *int* | :heavy_minus_sign: | N/A | 1705719589 | +| `LeafCount` | *int* | :heavy_minus_sign: | N/A | 1 | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1705719589 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1705724593 | +| `Composite` | *string* | :heavy_minus_sign: | N/A | /playlists/96/composite/1705724593 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 141000 | \ No newline at end of file diff --git a/docs/Models/Requests/CreatePlaylistPlaylistsResponseBody.md b/docs/Models/Requests/CreatePlaylistPlaylistsResponseBody.md new file mode 100644 index 0000000..3b17793 --- /dev/null +++ b/docs/Models/Requests/CreatePlaylistPlaylistsResponseBody.md @@ -0,0 +1,10 @@ +# CreatePlaylistPlaylistsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | +| `Errors` | List<[CreatePlaylistErrors](../../Models/Requests/CreatePlaylistErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/CreatePlaylistRequest.md b/docs/Models/Requests/CreatePlaylistRequest.md index e37bf58..549ea1b 100644 --- a/docs/Models/Requests/CreatePlaylistRequest.md +++ b/docs/Models/Requests/CreatePlaylistRequest.md @@ -8,5 +8,5 @@ | `Title` | *string* | :heavy_check_mark: | name of the playlist | | `Type` | [Type](../../Models/Requests/Type.md) | :heavy_check_mark: | type of playlist to create | | `Smart` | [Smart](../../Models/Requests/Smart.md) | :heavy_check_mark: | whether the playlist is smart or not | -| `Uri` | *string* | :heavy_minus_sign: | the content URI for the playlist | +| `Uri` | *string* | :heavy_check_mark: | the content URI for the playlist | | `PlayQueueID` | *double* | :heavy_minus_sign: | the play queue to copy to a playlist | \ No newline at end of file diff --git a/docs/Models/Requests/CreatePlaylistResponse.md b/docs/Models/Requests/CreatePlaylistResponse.md index 856cf87..fd10314 100644 --- a/docs/Models/Requests/CreatePlaylistResponse.md +++ b/docs/Models/Requests/CreatePlaylistResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [CreatePlaylistResponseBody](../../Models/Requests/CreatePlaylistResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [CreatePlaylistResponseBody](../../Models/Requests/CreatePlaylistResponseBody.md) | :heavy_minus_sign: | returns all playlists | +| `FourHundredAndOneApplicationJsonObject` | [CreatePlaylistPlaylistsResponseBody](../../Models/Requests/CreatePlaylistPlaylistsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/CreatePlaylistResponseBody.md b/docs/Models/Requests/CreatePlaylistResponseBody.md index 1f71a02..bf3e855 100644 --- a/docs/Models/Requests/CreatePlaylistResponseBody.md +++ b/docs/Models/Requests/CreatePlaylistResponseBody.md @@ -1,10 +1,10 @@ # CreatePlaylistResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +returns all playlists ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | -| `Errors` | List<[CreatePlaylistErrors](../../Models/Requests/CreatePlaylistErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `MediaContainer` | [CreatePlaylistMediaContainer](../../Models/Requests/CreatePlaylistMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/Force.md b/docs/Models/Requests/Force.md index 1cdfc16..f640748 100644 --- a/docs/Models/Requests/Force.md +++ b/docs/Models/Requests/Force.md @@ -1,7 +1,9 @@ # Force -force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. -The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. +Force overwriting of duplicate playlists. +By default, a playlist file uploaded with the same path will overwrite the existing playlist. +The `force` argument is used to disable overwriting. +If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. diff --git a/docs/Models/Requests/GetAvailableClientsResponse.md b/docs/Models/Requests/GetAvailableClientsResponse.md index 43dbf24..be9b2dc 100644 --- a/docs/Models/Requests/GetAvailableClientsResponse.md +++ b/docs/Models/Requests/GetAvailableClientsResponse.md @@ -8,5 +8,5 @@ | `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 | -| `ResponseBodies` | List<[ResponseBody](../../Models/Requests/ResponseBody.md)> | :heavy_minus_sign: | Available Clients | -| `Object` | [GetAvailableClientsResponseBody](../../Models/Requests/GetAvailableClientsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetAvailableClientsResponseBody](../../Models/Requests/GetAvailableClientsResponseBody.md) | :heavy_minus_sign: | Available Clients | +| `FourHundredAndOneApplicationJsonObject` | [GetAvailableClientsServerResponseBody](../../Models/Requests/GetAvailableClientsServerResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetAvailableClientsResponseBody.md b/docs/Models/Requests/GetAvailableClientsResponseBody.md index daca51c..a485679 100644 --- a/docs/Models/Requests/GetAvailableClientsResponseBody.md +++ b/docs/Models/Requests/GetAvailableClientsResponseBody.md @@ -1,10 +1,10 @@ # GetAvailableClientsResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +Available Clients ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `Errors` | List<[GetAvailableClientsErrors](../../Models/Requests/GetAvailableClientsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `MediaContainer` | [GetAvailableClientsMediaContainer](../../Models/Requests/GetAvailableClientsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetAvailableClientsServerResponseBody.md b/docs/Models/Requests/GetAvailableClientsServerResponseBody.md new file mode 100644 index 0000000..5ee47d0 --- /dev/null +++ b/docs/Models/Requests/GetAvailableClientsServerResponseBody.md @@ -0,0 +1,10 @@ +# GetAvailableClientsServerResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `Errors` | List<[GetAvailableClientsErrors](../../Models/Requests/GetAvailableClientsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetCommonLibraryItemsErrors.md b/docs/Models/Requests/GetCommonLibraryItemsErrors.md deleted file mode 100644 index ee9c402..0000000 --- a/docs/Models/Requests/GetCommonLibraryItemsErrors.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetCommonLibraryItemsErrors - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | -| `Code` | *double* | :heavy_minus_sign: | N/A | 1001 | -| `Message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated | -| `Status` | *double* | :heavy_minus_sign: | N/A | 401 | \ No newline at end of file diff --git a/docs/Models/Requests/GetCommonLibraryItemsRequest.md b/docs/Models/Requests/GetCommonLibraryItemsRequest.md deleted file mode 100644 index bbb6381..0000000 --- a/docs/Models/Requests/GetCommonLibraryItemsRequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetCommonLibraryItemsRequest - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------ | ------------------------------ | ------------------------------ | ------------------------------ | -| `SectionId` | *double* | :heavy_check_mark: | the Id of the library to query | -| `Type` | *double* | :heavy_check_mark: | item type | -| `Filter` | *string* | :heavy_minus_sign: | the filter parameter | \ No newline at end of file diff --git a/docs/Models/Requests/GetCommonLibraryItemsResponse.md b/docs/Models/Requests/GetCommonLibraryItemsResponse.md deleted file mode 100644 index 82638f5..0000000 --- a/docs/Models/Requests/GetCommonLibraryItemsResponse.md +++ /dev/null @@ -1,11 +0,0 @@ -# GetCommonLibraryItemsResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `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 | -| `Object` | [GetCommonLibraryItemsResponseBody](../../Models/Requests/GetCommonLibraryItemsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetCommonLibraryItemsResponseBody.md b/docs/Models/Requests/GetCommonLibraryItemsResponseBody.md deleted file mode 100644 index 34a40ec..0000000 --- a/docs/Models/Requests/GetCommonLibraryItemsResponseBody.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetCommonLibraryItemsResponseBody - -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. - - -## Fields - -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `Errors` | List<[GetCommonLibraryItemsErrors](../../Models/Requests/GetCommonLibraryItemsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetGlobalHubsHubsResponseBody.md b/docs/Models/Requests/GetGlobalHubsHubsResponseBody.md new file mode 100644 index 0000000..56b8714 --- /dev/null +++ b/docs/Models/Requests/GetGlobalHubsHubsResponseBody.md @@ -0,0 +1,10 @@ +# GetGlobalHubsHubsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | +| `Errors` | List<[GetGlobalHubsErrors](../../Models/Requests/GetGlobalHubsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetGlobalHubsMediaContainer.md b/docs/Models/Requests/GetGlobalHubsMediaContainer.md new file mode 100644 index 0000000..9fd0b8b --- /dev/null +++ b/docs/Models/Requests/GetGlobalHubsMediaContainer.md @@ -0,0 +1,11 @@ +# GetGlobalHubsMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 8 | +| `AllowSync` | *bool* | :heavy_minus_sign: | N/A | true | +| `Identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library | +| `Hub` | List<[Hub](../../Models/Requests/Hub.md)> | :heavy_minus_sign: | N/A | [{"Metadata":[{"addedAt":1655309388,"composite":"/playlists/50768/composite/1704333758","duration":42864000,"guid":"com.plexapp.agents.none://81658e0d-cd4e-4c73-abb9-832b2ae2037b","icon":"playlist://image.smart","key":"/playlists/50768/items","lastViewedAt":1705329935,"leafCount":178,"playlistType":"audio","ratingKey":"50768","smart":true,"summary":"All your highly rated tracks, in one convenient place.","title":"❤️ Tracks","titleSort":"Tracks","type":"playlist","updatedAt":1704333758,"viewCount":47},{"addedAt":1697993545,"composite":"/playlists/65523/composite/1698597932","duration":4864000,"guid":"com.plexapp.agents.none://1bcdd596-892b-4856-9f28-b4338c439300","key":"/playlists/65523/items","lastViewedAt":1698597949,"leafCount":19,"playlistType":"audio","ratingKey":"65523","smart":false,"summary":"","title":"Car Rides","type":"playlist","updatedAt":1698597932,"viewCount":2},{"addedAt":1679616785,"composite":"/playlists/58188/composite/1680825595","duration":12522000,"guid":"com.plexapp.agents.none://8f0441d3-2a28-4644-a2f1-b7deeb290dff","key":"/playlists/58188/items","lastViewedAt":1680825596,"leafCount":56,"playlistType":"audio","ratingKey":"58188","smart":false,"summary":"","title":"Workout","type":"playlist","updatedAt":1680825595,"viewCount":4},{"addedAt":1673372306,"composite":"/playlists/57341/composite/1673372385","duration":19119000,"guid":"com.plexapp.agents.none://bf8778c3-20a3-4619-8eb0-3c172c18ffd6","key":"/playlists/57341/items","lastViewedAt":1673372306,"leafCount":3,"playlistType":"video","ratingKey":"57341","smart":false,"summary":"","title":"January Movie Day","type":"playlist","updatedAt":1673372385,"viewCount":1},{"addedAt":1671197078,"composite":"/playlists/57302/composite/1671205874","duration":23040000,"guid":"com.plexapp.agents.none://f25064ed-05bb-4bcf-b70c-ed7514b70929","key":"/playlists/57302/items","lastViewedAt":1671206853,"leafCount":3,"playlistType":"video","ratingKey":"57302","smart":false,"summary":"","title":"December Movie Day","type":"playlist","updatedAt":1671205874,"viewCount":2},{"addedAt":1668779618,"composite":"/playlists/57070/composite/1668787730","duration":16873000,"guid":"com.plexapp.agents.none://9fee6c5b-3143-4923-813e-57bd0190056c","key":"/playlists/57070/items","lastViewedAt":1668787732,"leafCount":3,"playlistType":"video","ratingKey":"57070","smart":false,"summary":"","title":"November Movie Day","type":"playlist","updatedAt":1668787730,"viewCount":2}],"context":"hub.home.playlists","hubIdentifier":"home.playlists","hubKey":"/library/metadata/50768,65523,58188,57341,57302,57070","key":"/playlists/all?type=15\u0026sort=lastViewedAt:desc\u0026playlistType=video,audio","more":true,"promoted":true,"size":6,"style":"shelf","title":"Recent Playlists","type":"playlist"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetGlobalHubsMetadata.md b/docs/Models/Requests/GetGlobalHubsMetadata.md new file mode 100644 index 0000000..21aec4a --- /dev/null +++ b/docs/Models/Requests/GetGlobalHubsMetadata.md @@ -0,0 +1,24 @@ +# GetGlobalHubsMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 57070 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /playlists/57070/items | +| `Guid` | *string* | :heavy_minus_sign: | N/A | com.plexapp.agents.none://9fee6c5b-3143-4923-813e-57bd0190056c | +| `Type` | *string* | :heavy_minus_sign: | N/A | playlist | +| `Title` | *string* | :heavy_minus_sign: | N/A | November Movie Day | +| `TitleSort` | *string* | :heavy_minus_sign: | N/A | Tracks | +| `Summary` | *string* | :heavy_minus_sign: | N/A | | +| `Smart` | *bool* | :heavy_minus_sign: | N/A | false | +| `PlaylistType` | *string* | :heavy_minus_sign: | N/A | video | +| `Composite` | *string* | :heavy_minus_sign: | N/A | /playlists/57070/composite/1668787730 | +| `Icon` | *string* | :heavy_minus_sign: | N/A | playlist://image.smart | +| `ViewCount` | *int* | :heavy_minus_sign: | N/A | 2 | +| `LastViewedAt` | *int* | :heavy_minus_sign: | N/A | 1668787732 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 16873000 | +| `LeafCount` | *int* | :heavy_minus_sign: | N/A | 3 | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1668779618 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1668787730 | \ No newline at end of file diff --git a/docs/Models/Requests/GetGlobalHubsResponse.md b/docs/Models/Requests/GetGlobalHubsResponse.md index da3fd59..0d0bbb1 100644 --- a/docs/Models/Requests/GetGlobalHubsResponse.md +++ b/docs/Models/Requests/GetGlobalHubsResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetGlobalHubsResponseBody](../../Models/Requests/GetGlobalHubsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetGlobalHubsResponseBody](../../Models/Requests/GetGlobalHubsResponseBody.md) | :heavy_minus_sign: | returns global hubs | +| `FourHundredAndOneApplicationJsonObject` | [GetGlobalHubsHubsResponseBody](../../Models/Requests/GetGlobalHubsHubsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetGlobalHubsResponseBody.md b/docs/Models/Requests/GetGlobalHubsResponseBody.md index 78e7083..6887385 100644 --- a/docs/Models/Requests/GetGlobalHubsResponseBody.md +++ b/docs/Models/Requests/GetGlobalHubsResponseBody.md @@ -1,10 +1,10 @@ # GetGlobalHubsResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +returns global hubs ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Errors` | List<[GetGlobalHubsErrors](../../Models/Requests/GetGlobalHubsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | +| `MediaContainer` | [GetGlobalHubsMediaContainer](../../Models/Requests/GetGlobalHubsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetLatestLibraryItemsErrors.md b/docs/Models/Requests/GetLatestLibraryItemsErrors.md deleted file mode 100644 index 607cf16..0000000 --- a/docs/Models/Requests/GetLatestLibraryItemsErrors.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetLatestLibraryItemsErrors - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | -| `Code` | *double* | :heavy_minus_sign: | N/A | 1001 | -| `Message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated | -| `Status` | *double* | :heavy_minus_sign: | N/A | 401 | \ No newline at end of file diff --git a/docs/Models/Requests/GetLatestLibraryItemsRequest.md b/docs/Models/Requests/GetLatestLibraryItemsRequest.md deleted file mode 100644 index 982b390..0000000 --- a/docs/Models/Requests/GetLatestLibraryItemsRequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetLatestLibraryItemsRequest - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------ | ------------------------------ | ------------------------------ | ------------------------------ | -| `SectionId` | *double* | :heavy_check_mark: | the Id of the library to query | -| `Type` | *double* | :heavy_check_mark: | item type | -| `Filter` | *string* | :heavy_minus_sign: | the filter parameter | \ No newline at end of file diff --git a/docs/Models/Requests/GetLatestLibraryItemsResponse.md b/docs/Models/Requests/GetLatestLibraryItemsResponse.md deleted file mode 100644 index 52e92e8..0000000 --- a/docs/Models/Requests/GetLatestLibraryItemsResponse.md +++ /dev/null @@ -1,11 +0,0 @@ -# GetLatestLibraryItemsResponse - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `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 | -| `Object` | [GetLatestLibraryItemsResponseBody](../../Models/Requests/GetLatestLibraryItemsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetLatestLibraryItemsResponseBody.md b/docs/Models/Requests/GetLatestLibraryItemsResponseBody.md deleted file mode 100644 index 2d1934e..0000000 --- a/docs/Models/Requests/GetLatestLibraryItemsResponseBody.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetLatestLibraryItemsResponseBody - -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. - - -## Fields - -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `Errors` | List<[GetLatestLibraryItemsErrors](../../Models/Requests/GetLatestLibraryItemsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsCountry.md b/docs/Models/Requests/GetLibraryHubsCountry.md new file mode 100644 index 0000000..9d850ef --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsCountry.md @@ -0,0 +1,8 @@ +# GetLibraryHubsCountry + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | United States of America | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsDirector.md b/docs/Models/Requests/GetLibraryHubsDirector.md new file mode 100644 index 0000000..5597867 --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsDirector.md @@ -0,0 +1,8 @@ +# GetLibraryHubsDirector + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Nathan Greno | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsGenre.md b/docs/Models/Requests/GetLibraryHubsGenre.md new file mode 100644 index 0000000..ded856f --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsGenre.md @@ -0,0 +1,8 @@ +# GetLibraryHubsGenre + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Animation | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsHub.md b/docs/Models/Requests/GetLibraryHubsHub.md new file mode 100644 index 0000000..b68f3d5 --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsHub.md @@ -0,0 +1,19 @@ +# GetLibraryHubsHub + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/sections/1/all?sort=lastViewedAt:desc&unwatched=0&viewOffset=0 | +| `Title` | *string* | :heavy_minus_sign: | N/A | Recently Played Movies | +| `Type` | *string* | :heavy_minus_sign: | N/A | movie | +| `HubIdentifier` | *string* | :heavy_minus_sign: | N/A | movie.recentlyviewed.1 | +| `Context` | *string* | :heavy_minus_sign: | N/A | hub.movie.recentlyviewed | +| `Size` | *int* | :heavy_minus_sign: | N/A | 6 | +| `More` | *bool* | :heavy_minus_sign: | N/A | true | +| `Style` | *string* | :heavy_minus_sign: | N/A | shelf | +| `HubKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66485,66098,57249,11449,5858,14944 | +| `Metadata` | List<[GetLibraryHubsMetadata](../../Models/Requests/GetLibraryHubsMetadata.md)> | :heavy_minus_sign: | N/A | [{"Country":[{"tag":"United States of America"}],"Director":[{"tag":"Byron Howard"},{"tag":"Nathan Greno"}],"Genre":[{"tag":"Comedy"},{"tag":"Animation"}],"Media":[{"Part":[{"audioProfile":"lc","container":"mp4","duration":6017237,"file":"/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4","has64bitOffsets":false,"id":38247,"key":"/library/parts/38247/1589412494/file.mp4","optimizedForStreaming":true,"size":1545647447,"videoProfile":"high"}],"aspectRatio":1.78,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2051,"container":"mp4","duration":6017237,"has64bitOffsets":false,"height":1080,"id":38247,"optimizedForStreaming":1,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}],"Role":[{"tag":"Mandy Moore"},{"tag":"Zachary Levi"},{"tag":"Donna Murphy"}],"Writer":[{"tag":"Jacob Grimm"},{"tag":"Wilhelm Grimm"}],"addedAt":1589412494,"art":"/library/metadata/14944/art/1705739847","audienceRating":8.7,"audienceRatingImage":"rottentomatoes://image.rating.upright","chapterSource":"media","contentRating":"PG","duration":6017237,"guid":"plex://movie/5d77686eeb5d26001f1eb339","key":"/library/metadata/14944","lastViewedAt":1704936047,"librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"2010-11-24T00:00:00Z","primaryExtraKey":"/library/metadata/14952","rating":8.9,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"14944","skipCount":1,"studio":"Walt Disney Animation Studios","summary":"The magically long-haired Rapunzel has spent her entire life in a tower, but now that a runaway thief has stumbled upon her, she is about to discover the world for the first time, and who she really is.","tagline":"They're taking adventure to new lengths.","thumb":"/library/metadata/14944/thumb/1705739847","title":"Tangled","type":"movie","updatedAt":1705739847,"viewCount":1,"year":2010}] | +| `Promoted` | *bool* | :heavy_minus_sign: | N/A | true | +| `Random` | *bool* | :heavy_minus_sign: | N/A | true | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsHubsResponseBody.md b/docs/Models/Requests/GetLibraryHubsHubsResponseBody.md new file mode 100644 index 0000000..118c154 --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsHubsResponseBody.md @@ -0,0 +1,10 @@ +# GetLibraryHubsHubsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | +| `Errors` | List<[GetLibraryHubsErrors](../../Models/Requests/GetLibraryHubsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsMedia.md b/docs/Models/Requests/GetLibraryHubsMedia.md new file mode 100644 index 0000000..9d571f8 --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsMedia.md @@ -0,0 +1,24 @@ +# GetLibraryHubsMedia + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 38247 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 6017237 | +| `Bitrate` | *int* | :heavy_minus_sign: | N/A | 2051 | +| `Width` | *int* | :heavy_minus_sign: | N/A | 1920 | +| `Height` | *int* | :heavy_minus_sign: | N/A | 1080 | +| `AspectRatio` | *double* | :heavy_minus_sign: | N/A | 1.78 | +| `AudioChannels` | *int* | :heavy_minus_sign: | N/A | 2 | +| `AudioCodec` | *string* | :heavy_minus_sign: | N/A | aac | +| `VideoCodec` | *string* | :heavy_minus_sign: | N/A | h264 | +| `VideoResolution` | *string* | :heavy_minus_sign: | N/A | 1080 | +| `Container` | *string* | :heavy_minus_sign: | N/A | mp4 | +| `VideoFrameRate` | *string* | :heavy_minus_sign: | N/A | 24p | +| `OptimizedForStreaming` | *int* | :heavy_minus_sign: | N/A | 1 | +| `AudioProfile` | *string* | :heavy_minus_sign: | N/A | lc | +| `Has64bitOffsets` | *bool* | :heavy_minus_sign: | N/A | false | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | high | +| `Part` | List<[GetLibraryHubsPart](../../Models/Requests/GetLibraryHubsPart.md)> | :heavy_minus_sign: | N/A | [{"audioProfile":"lc","container":"mp4","duration":6017237,"file":"/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4","has64bitOffsets":false,"id":38247,"key":"/library/parts/38247/1589412494/file.mp4","optimizedForStreaming":true,"size":1545647447,"videoProfile":"high"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsMediaContainer.md b/docs/Models/Requests/GetLibraryHubsMediaContainer.md new file mode 100644 index 0000000..5a4f637 --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsMediaContainer.md @@ -0,0 +1,14 @@ +# GetLibraryHubsMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 7 | +| `AllowSync` | *bool* | :heavy_minus_sign: | N/A | true | +| `Identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library | +| `LibrarySectionID` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LibrarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies | +| `LibrarySectionUUID` | *string* | :heavy_minus_sign: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 | +| `Hub` | List<[GetLibraryHubsHub](../../Models/Requests/GetLibraryHubsHub.md)> | :heavy_minus_sign: | N/A | [{"Metadata":[{"Country":[{"tag":"United States of America"}],"Director":[{"tag":"Ceyda Torun"}],"Genre":[{"tag":"Documentary"}],"Media":[{"Part":[{"audioProfile":"lc","container":"mp4","duration":4736174,"file":"/movies/Kedi (2017)/Kedi (2017) 1080p x264.mp4","has64bitOffsets":false,"id":129778,"key":"/library/parts/129778/1702586883/file.mp4","optimizedForStreaming":false,"size":1410810905,"videoProfile":"high"}],"aspectRatio":1.78,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2377,"container":"mp4","duration":4736174,"has64bitOffsets":false,"height":1080,"id":129531,"optimizedForStreaming":0,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}],"Role":[{"tag":"Bülent Üstün"}],"addedAt":1702586905,"art":"/library/metadata/66485/art/1702586907","audienceRating":8.5,"audienceRatingImage":"rottentomatoes://image.rating.upright","contentRating":"Not Rated","duration":4736174,"guid":"plex://movie/5d776c3251dd69001fe38bb4","key":"/library/metadata/66485","lastViewedAt":1705786111,"librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"2017-02-10T00:00:00Z","primaryExtraKey":"/library/metadata/66486","rating":9.8,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"66485","studio":"Termite Films","summary":"A profile of an ancient city and its unique people, seen through the eyes of the most mysterious and beloved animal humans have ever known, the Cat.","tagline":"A cat meowing at your feet, looking up at you, is life smiling at you...","thumb":"/library/metadata/66485/thumb/1702586907","title":"Kedi","type":"movie","updatedAt":1702586907,"viewCount":2,"year":2017},{"Country":[{"tag":"United States of America"}],"Director":[{"tag":"Duwayne Dunham"}],"Genre":[{"tag":"Adventure"},{"tag":"Comedy"}],"Media":[{"Part":[{"audioProfile":"lc","container":"mp4","duration":5065775,"file":"/movies/Homeward Bound The Incredible Journey (1993)/Homeward Bound The Incredible Journey (1993) [BluRay] [1080p] [YTS.LT].mp4","has64bitOffsets":false,"id":129250,"key":"/library/parts/129250/1700434864/file.mp4","optimizedForStreaming":true,"size":1550855333,"videoProfile":"high"}],"aspectRatio":1.85,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2444,"container":"mp4","duration":5065775,"has64bitOffsets":false,"height":1024,"id":129003,"optimizedForStreaming":1,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1904}],"Role":[{"tag":"Michael J. Fox"},{"tag":"Sally Field"},{"tag":"Don Ameche"}],"Writer":[{"tag":"Caroline Thompson"},{"tag":"Linda Woolverton"}],"addedAt":1700434925,"art":"/library/metadata/66098/art/1703148781","audienceRating":7.1,"audienceRatingImage":"rottentomatoes://image.rating.upright","contentRating":"G","duration":5065775,"guid":"plex://movie/5d9f34f4adeb7a0021ce020f","key":"/library/metadata/66098","lastViewedAt":1705709811,"librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"1993-02-12T00:00:00Z","primaryExtraKey":"/library/metadata/66099","rating":8.7,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"66098","studio":"Touchwood Pacific Partners 1","summary":"A fun-loving American bulldog pup, a hilarious Himalayan cat, and a wise old golden retriever embark on a long trek through the rugged wilderness of the Sierra Nevada mountains in a quest to reach home and their beloved owners.","tagline":"In the classic tradition of Walt Disney Pictures comes a story about courage, adventure and friendship.","thumb":"/library/metadata/66098/thumb/1703148781","title":"Homeward Bound: The Incredible Journey","type":"movie","updatedAt":1703148781,"viewCount":2,"year":1993},{"Country":[{"tag":"Canada"},{"tag":"Ireland"}],"Director":[{"tag":"Matt Stawski"}],"Genre":[{"tag":"Comedy"},{"tag":"Family"}],"Media":[{"Part":[{"audioProfile":"lc","container":"mkv","duration":4459050,"file":"/movies/Blue's Big City Adventure (2022)/Blues.Big.City.Adventure.2022.2160p.4K.WEB.x265.10bit.AAC5.1-[YTS.MX].mkv","id":115478,"key":"/library/parts/115478/1669671340/file.mkv","size":3560750664,"videoProfile":"main 10"}],"aspectRatio":1.78,"audioChannels":6,"audioCodec":"aac","audioProfile":"lc","bitrate":6384,"container":"mkv","duration":4459050,"height":2160,"id":115470,"videoCodec":"hevc","videoFrameRate":"24p","videoProfile":"main 10","videoResolution":"4k","width":3840}],"Role":[{"tag":"Joshua Dela Cruz"},{"tag":"Steve Burns"},{"tag":"Donovan Patton"}],"Writer":[{"tag":"Traci Paige Johnson"},{"tag":"Todd Kessler"}],"addedAt":1669671356,"art":"/library/metadata/57249/art/1704274800","audienceRating":8.6,"audienceRatingImage":"rottentomatoes://image.rating.upright","contentRating":"TV-Y","duration":4459050,"guid":"plex://movie/60eff7d3e22797002c55c1cc","key":"/library/metadata/57249","lastViewedAt":1705681955,"librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"2022-11-18T00:00:00Z","primaryExtraKey":"/library/metadata/57250","rating":8.3,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"57249","skipCount":1,"studio":"Nickelodeon Movies","summary":"Josh and Blue skidoo to New York City to audition for Rainbow Puppy's Broadway musical, but they get lost when Josh accidentally left his Handy Dandy Notebook at home. This leads to a game of Blue's Clues to figure out where the audition is. Meanwhile, Tickety Tock and her friends go to New York City to find Josh and Blue and get to the audition with help from Joe and Steve.","tagline":"All They Need is You.","thumb":"/library/metadata/57249/thumb/1704274800","title":"Blue's Big City Adventure","type":"movie","updatedAt":1704274800,"viewCount":8,"year":2022},{"Country":[{"tag":"United States of America"}],"Director":[{"tag":"Dan Scanlon"}],"Genre":[{"tag":"Animation"},{"tag":"Comedy"}],"Media":[{"Part":[{"audioProfile":"ma","container":"mkv","duration":6141428,"file":"/movies/Onward (2020)/Onward (2020) Bluray-1080p.mkv","id":29291,"key":"/library/parts/29291/1589237130/file.mkv","size":8426669232,"videoProfile":"high"}],"aspectRatio":2.35,"audioChannels":8,"audioCodec":"dca-ma","audioProfile":"ma","bitrate":10977,"container":"mkv","duration":6141428,"height":804,"id":29291,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920},{"Part":[{"audioProfile":"lc","container":"mp4","duration":6142006,"file":"/movies/Onward (2020)/Onward (2020) WEBRip-1080p.mp4","has64bitOffsets":false,"id":29315,"key":"/library/parts/29315/1629002847/file.mp4","optimizedForStreaming":true,"size":2026154995,"videoProfile":"high"}],"aspectRatio":2.35,"audioChannels":6,"audioCodec":"aac","audioProfile":"lc","bitrate":2639,"container":"mp4","duration":6142006,"has64bitOffsets":false,"height":800,"id":29315,"optimizedForStreaming":1,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}],"Role":[{"tag":"Tom Holland"},{"tag":"Chris Pratt"},{"tag":"Julia Louis-Dreyfus"}],"Writer":[{"tag":"Kelsey Mann"},{"tag":"Dan Scanlon"}],"addedAt":1589237130,"art":"/library/metadata/11449/art/1705224000","audienceRating":9.5,"audienceRatingImage":"rottentomatoes://image.rating.upright","chapterSource":"media","contentRating":"PG","duration":6141428,"guid":"plex://movie/5d776edfad5437001f803cf9","key":"/library/metadata/11449","lastViewedAt":1705543126,"librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"2020-03-04T00:00:00Z","primaryExtraKey":"/library/metadata/11470","rating":8.8,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"11449","studio":"Walt Disney Pictures","summary":"In a magical world full of technological advances, elven brothers Ian and Barley Lightfoot set out on an adventure to resurrect their late father for a day.","tagline":"Their quest begineth.","thumb":"/library/metadata/11449/thumb/1705224000","title":"Onward","type":"movie","updatedAt":1705224000,"viewCount":3,"year":2020},{"Country":[{"tag":"United States of America"}],"Director":[{"tag":"Chris Buck"},{"tag":"Jennifer Lee"}],"Genre":[{"tag":"Adventure"},{"tag":"Animation"}],"Media":[{"Part":[{"audioProfile":"lc","container":"mp4","duration":6194042,"file":"/movies/Frozen II (2019)/Frozen II (2019) Bluray-1080p.mp4","has64bitOffsets":false,"id":14954,"key":"/library/parts/14954/1588207762/file.mp4","optimizedForStreaming":true,"size":1969230037,"videoProfile":"high"}],"aspectRatio":2.35,"audioChannels":6,"audioCodec":"aac","audioProfile":"lc","bitrate":2538,"container":"mp4","duration":6194042,"has64bitOffsets":false,"height":800,"id":14954,"optimizedForStreaming":1,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920},{"Part":[{"audioProfile":"lc","container":"mp4","duration":6244271,"file":"/movies/Frozen II (2019)/Frozen II (2019) WEBRip-1080p.mp4","has64bitOffsets":false,"id":14999,"key":"/library/parts/14999/1629001526/file.mp4","optimizedForStreaming":true,"size":1983357282,"videoProfile":"high"}],"aspectRatio":2.35,"audioChannels":6,"audioCodec":"aac","audioProfile":"lc","bitrate":2536,"container":"mp4","duration":6244271,"has64bitOffsets":false,"height":800,"id":14999,"optimizedForStreaming":1,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}],"Role":[{"tag":"Idina Menzel"},{"tag":"Kristen Bell"},{"tag":"Josh Gad"}],"Writer":[{"tag":"Chris Buck"},{"tag":"Hans Christian Andersen"}],"addedAt":1588207762,"art":"/library/metadata/5858/art/1704621922","audienceRating":9.2,"audienceRatingImage":"rottentomatoes://image.rating.upright","contentRating":"PG","duration":6194042,"guid":"plex://movie/5d776b85594b2b001e6dc641","key":"/library/metadata/5858","lastViewedAt":1705337663,"librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"2019-11-20T00:00:00Z","primaryExtraKey":"/library/metadata/5892","rating":7.7,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"5858","skipCount":1,"studio":"Walt Disney Pictures","summary":"Anna, Elsa, Kristoff, Olaf and Sven leave Arendelle to travel to an ancient, autumn-bound forest of an enchanted land. They set out to find the origin of Elsa's powers in order to save their kingdom.","tagline":"The past is not what it seems.","thumb":"/library/metadata/5858/thumb/1704621922","title":"Frozen II","type":"movie","updatedAt":1704621922,"viewCount":1,"year":2019},{"Country":[{"tag":"United States of America"}],"Director":[{"tag":"Byron Howard"},{"tag":"Nathan Greno"}],"Genre":[{"tag":"Comedy"},{"tag":"Animation"}],"Media":[{"Part":[{"audioProfile":"lc","container":"mp4","duration":6017237,"file":"/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4","has64bitOffsets":false,"id":38247,"key":"/library/parts/38247/1589412494/file.mp4","optimizedForStreaming":true,"size":1545647447,"videoProfile":"high"}],"aspectRatio":1.78,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2051,"container":"mp4","duration":6017237,"has64bitOffsets":false,"height":1080,"id":38247,"optimizedForStreaming":1,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}],"Role":[{"tag":"Mandy Moore"},{"tag":"Zachary Levi"},{"tag":"Donna Murphy"}],"Writer":[{"tag":"Jacob Grimm"},{"tag":"Wilhelm Grimm"}],"addedAt":1589412494,"art":"/library/metadata/14944/art/1705739847","audienceRating":8.7,"audienceRatingImage":"rottentomatoes://image.rating.upright","contentRating":"PG","duration":6017237,"guid":"plex://movie/5d77686eeb5d26001f1eb339","key":"/library/metadata/14944","lastViewedAt":1704936047,"librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"2010-11-24T00:00:00Z","primaryExtraKey":"/library/metadata/14952","rating":8.9,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"14944","studio":"Walt Disney Animation Studios","summary":"The magically long-haired Rapunzel has spent her entire life in a tower, but now that a runaway thief has stumbled upon her, she is about to discover the world for the first time, and who she really is.","tagline":"They're taking adventure to new lengths.","thumb":"/library/metadata/14944/thumb/1705739847","title":"Tangled","type":"movie","updatedAt":1705739847,"viewCount":1,"year":2010}],"context":"hub.movie.recentlyviewed","hubIdentifier":"movie.recentlyviewed.1","hubKey":"/library/metadata/66485,66098,57249,11449,5858,14944","key":"/library/sections/1/all?sort=lastViewedAt:desc\u0026unwatched=0\u0026viewOffset=0","more":true,"promoted":true,"random":true,"size":6,"style":"shelf","title":"Recently Played Movies","type":"movie"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsMetadata.md b/docs/Models/Requests/GetLibraryHubsMetadata.md new file mode 100644 index 0000000..e8053fe --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsMetadata.md @@ -0,0 +1,41 @@ +# GetLibraryHubsMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 14944 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/14944 | +| `Guid` | *string* | :heavy_minus_sign: | N/A | plex://movie/5d77686eeb5d26001f1eb339 | +| `Studio` | *string* | :heavy_minus_sign: | N/A | Walt Disney Animation Studios | +| `Type` | *string* | :heavy_minus_sign: | N/A | movie | +| `Title` | *string* | :heavy_minus_sign: | N/A | Tangled | +| `LibrarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies | +| `LibrarySectionID` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LibrarySectionKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/1 | +| `ContentRating` | *string* | :heavy_minus_sign: | N/A | PG | +| `Summary` | *string* | :heavy_minus_sign: | N/A | The magically long-haired Rapunzel has spent her entire life in a tower, but now that a runaway thief has stumbled upon her, she is about to discover the world for the first time, and who she really is. | +| `Rating` | *double* | :heavy_minus_sign: | N/A | 8.9 | +| `AudienceRating` | *double* | :heavy_minus_sign: | N/A | 8.7 | +| `ViewCount` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LastViewedAt` | *int* | :heavy_minus_sign: | N/A | 1704936047 | +| `Year` | *int* | :heavy_minus_sign: | N/A | 2010 | +| `Tagline` | *string* | :heavy_minus_sign: | N/A | They're taking adventure to new lengths. | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/14944/thumb/1705739847 | +| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/14944/art/1705739847 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 6017237 | +| `OriginallyAvailableAt` | [LocalDate](https://nodatime.org/3.1.x/api/NodaTime.LocalDate.html) | :heavy_minus_sign: | N/A | 2010-11-24 00:00:00 +0000 UTC | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1589412494 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1705739847 | +| `AudienceRatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.upright | +| `PrimaryExtraKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/14952 | +| `RatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.ripe | +| `Media` | List<[GetLibraryHubsMedia](../../Models/Requests/GetLibraryHubsMedia.md)> | :heavy_minus_sign: | N/A | [{"Part":[{"audioProfile":"lc","container":"mp4","duration":6017237,"file":"/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4","has64bitOffsets":false,"id":38247,"key":"/library/parts/38247/1589412494/file.mp4","optimizedForStreaming":true,"size":1545647447,"videoProfile":"high"}],"aspectRatio":1.78,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2051,"container":"mp4","duration":6017237,"has64bitOffsets":false,"height":1080,"id":38247,"optimizedForStreaming":1,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}] | +| `Genre` | List<[GetLibraryHubsGenre](../../Models/Requests/GetLibraryHubsGenre.md)> | :heavy_minus_sign: | N/A | [{"tag":"Animation"}] | +| `Country` | List<[GetLibraryHubsCountry](../../Models/Requests/GetLibraryHubsCountry.md)> | :heavy_minus_sign: | N/A | [{"tag":"United States of America"}] | +| `Director` | List<[GetLibraryHubsDirector](../../Models/Requests/GetLibraryHubsDirector.md)> | :heavy_minus_sign: | N/A | [{"tag":"Nathan Greno"}] | +| `Role` | List<[GetLibraryHubsRole](../../Models/Requests/GetLibraryHubsRole.md)> | :heavy_minus_sign: | N/A | [{"tag":"Donna Murphy"}] | +| `Writer` | List<[GetLibraryHubsWriter](../../Models/Requests/GetLibraryHubsWriter.md)> | :heavy_minus_sign: | N/A | [{"tag":"Wilhelm Grimm"}] | +| `SkipCount` | *int* | :heavy_minus_sign: | N/A | 1 | +| `ChapterSource` | *string* | :heavy_minus_sign: | N/A | media | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsPart.md b/docs/Models/Requests/GetLibraryHubsPart.md new file mode 100644 index 0000000..fc24c5b --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsPart.md @@ -0,0 +1,17 @@ +# GetLibraryHubsPart + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | +| `Id` | *int* | :heavy_minus_sign: | N/A | 38247 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/parts/38247/1589412494/file.mp4 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 6017237 | +| `File` | *string* | :heavy_minus_sign: | N/A | /movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4 | +| `Size` | *int* | :heavy_minus_sign: | N/A | 1545647447 | +| `AudioProfile` | *string* | :heavy_minus_sign: | N/A | lc | +| `Container` | *string* | :heavy_minus_sign: | N/A | mp4 | +| `Has64bitOffsets` | *bool* | :heavy_minus_sign: | N/A | false | +| `OptimizedForStreaming` | *bool* | :heavy_minus_sign: | N/A | true | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | high | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsResponse.md b/docs/Models/Requests/GetLibraryHubsResponse.md index a83076a..c036214 100644 --- a/docs/Models/Requests/GetLibraryHubsResponse.md +++ b/docs/Models/Requests/GetLibraryHubsResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetLibraryHubsResponseBody](../../Models/Requests/GetLibraryHubsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetLibraryHubsResponseBody](../../Models/Requests/GetLibraryHubsResponseBody.md) | :heavy_minus_sign: | The hubs specific to the library | +| `FourHundredAndOneApplicationJsonObject` | [GetLibraryHubsHubsResponseBody](../../Models/Requests/GetLibraryHubsHubsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsResponseBody.md b/docs/Models/Requests/GetLibraryHubsResponseBody.md index d8bd0b8..a4b3e57 100644 --- a/docs/Models/Requests/GetLibraryHubsResponseBody.md +++ b/docs/Models/Requests/GetLibraryHubsResponseBody.md @@ -1,10 +1,10 @@ # GetLibraryHubsResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +The hubs specific to the library ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | -| `Errors` | List<[GetLibraryHubsErrors](../../Models/Requests/GetLibraryHubsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `MediaContainer` | [GetLibraryHubsMediaContainer](../../Models/Requests/GetLibraryHubsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsRole.md b/docs/Models/Requests/GetLibraryHubsRole.md new file mode 100644 index 0000000..213e2c7 --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsRole.md @@ -0,0 +1,8 @@ +# GetLibraryHubsRole + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Donna Murphy | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryHubsWriter.md b/docs/Models/Requests/GetLibraryHubsWriter.md new file mode 100644 index 0000000..145eef5 --- /dev/null +++ b/docs/Models/Requests/GetLibraryHubsWriter.md @@ -0,0 +1,8 @@ +# GetLibraryHubsWriter + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Wilhelm Grimm | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsCountry.md b/docs/Models/Requests/GetLibraryItemsCountry.md new file mode 100644 index 0000000..ab054d4 --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsCountry.md @@ -0,0 +1,8 @@ +# GetLibraryItemsCountry + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | United States of America | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsDirector.md b/docs/Models/Requests/GetLibraryItemsDirector.md new file mode 100644 index 0000000..c4d7b1c --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsDirector.md @@ -0,0 +1,8 @@ +# GetLibraryItemsDirector + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | James Cameron | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsErrors.md b/docs/Models/Requests/GetLibraryItemsErrors.md deleted file mode 100644 index 2817f7c..0000000 --- a/docs/Models/Requests/GetLibraryItemsErrors.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetLibraryItemsErrors - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | -| `Code` | *double* | :heavy_minus_sign: | N/A | 1001 | -| `Message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated | -| `Status` | *double* | :heavy_minus_sign: | N/A | 401 | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsGenre.md b/docs/Models/Requests/GetLibraryItemsGenre.md new file mode 100644 index 0000000..1ee9c1b --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsGenre.md @@ -0,0 +1,8 @@ +# GetLibraryItemsGenre + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Adventure | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsMedia.md b/docs/Models/Requests/GetLibraryItemsMedia.md new file mode 100644 index 0000000..8c26428 --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsMedia.md @@ -0,0 +1,21 @@ +# GetLibraryItemsMedia + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 119534 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 11558112 | +| `Bitrate` | *int* | :heavy_minus_sign: | N/A | 25025 | +| `Width` | *int* | :heavy_minus_sign: | N/A | 3840 | +| `Height` | *int* | :heavy_minus_sign: | N/A | 2072 | +| `AspectRatio` | *double* | :heavy_minus_sign: | N/A | 1.85 | +| `AudioChannels` | *int* | :heavy_minus_sign: | N/A | 6 | +| `AudioCodec` | *string* | :heavy_minus_sign: | N/A | eac3 | +| `VideoCodec` | *string* | :heavy_minus_sign: | N/A | hevc | +| `VideoResolution` | *string* | :heavy_minus_sign: | N/A | 4k | +| `Container` | *string* | :heavy_minus_sign: | N/A | mkv | +| `VideoFrameRate` | *string* | :heavy_minus_sign: | N/A | 24p | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | main 10 | +| `Part` | List<[GetLibraryItemsPart](../../Models/Requests/GetLibraryItemsPart.md)> | :heavy_minus_sign: | N/A | [{"container":"mkv","duration":11558112,"file":"/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv","id":119542,"key":"/library/parts/119542/1680457526/file.mkv","size":36158371307,"videoProfile":"main 10"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsMediaContainer.md b/docs/Models/Requests/GetLibraryItemsMediaContainer.md new file mode 100644 index 0000000..ae8cf8a --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsMediaContainer.md @@ -0,0 +1,22 @@ +# GetLibraryItemsMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `Size` | *int* | :heavy_minus_sign: | N/A | 70 | +| `AllowSync` | *bool* | :heavy_minus_sign: | N/A | true | +| `Art` | *string* | :heavy_minus_sign: | N/A | /:/resources/movie-fanart.jpg | +| `Identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library | +| `LibrarySectionID` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LibrarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies | +| `LibrarySectionUUID` | *string* | :heavy_minus_sign: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 | +| `MediaTagPrefix` | *string* | :heavy_minus_sign: | N/A | /system/bundle/media/flags/ | +| `MediaTagVersion` | *int* | :heavy_minus_sign: | N/A | 1701731894 | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /:/resources/movie.png | +| `Title1` | *string* | :heavy_minus_sign: | N/A | Movies | +| `Title2` | *string* | :heavy_minus_sign: | N/A | Recently Released | +| `ViewGroup` | *string* | :heavy_minus_sign: | N/A | movie | +| `ViewMode` | *int* | :heavy_minus_sign: | N/A | 65592 | +| `Metadata` | List<[GetLibraryItemsMetadata](../../Models/Requests/GetLibraryItemsMetadata.md)> | :heavy_minus_sign: | N/A | [{"Country":[{"tag":"United States of America"}],"Director":[{"tag":"James Cameron"}],"Genre":[{"tag":"Action"},{"tag":"Adventure"}],"Media":[{"Part":[{"container":"mkv","duration":11558112,"file":"/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv","id":119542,"key":"/library/parts/119542/1680457526/file.mkv","size":36158371307,"videoProfile":"main 10"}],"aspectRatio":1.85,"audioChannels":6,"audioCodec":"eac3","bitrate":25025,"container":"mkv","duration":11558112,"height":2072,"id":119534,"videoCodec":"hevc","videoFrameRate":"24p","videoProfile":"main 10","videoResolution":"4k","width":3840}],"Role":[{"tag":"Sam Worthington"},{"tag":"Zoe Saldaña"},{"tag":"Sigourney Weaver"}],"Writer":[{"tag":"Josh Friedman"},{"tag":"James Cameron"}],"addedAt":1680457607,"art":"/library/metadata/58683/art/1703239236","audienceRating":9.2,"audienceRatingImage":"rottentomatoes://image.rating.upright","chapterSource":"media","contentRating":"PG-13","duration":11558112,"guid":"plex://movie/5d7768ba96b655001fdc0408","key":"/library/metadata/58683","lastViewedAt":1682752242,"originalTitle":"映画 ブラッククローバー 魔法帝の剣","originallyAvailableAt":"2022-12-14T00:00:00Z","primaryExtraKey":"/library/metadata/58684","rating":7.6,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"58683","skipCount":1,"studio":"20th Century Studios","summary":"Jake Sully lives with his newfound family formed on the extrasolar moon Pandora. Once a familiar threat returns to finish what was previously started, Jake must work with Neytiri and the army of the Na'vi race to protect their home.","tagline":"Return to Pandora.","thumb":"/library/metadata/58683/thumb/1703239236","title":"Avatar: The Way of Water","titleSort":"Whale","type":"movie","updatedAt":1703239236,"viewCount":1,"viewOffset":5222500,"year":2022}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsMetadata.md b/docs/Models/Requests/GetLibraryItemsMetadata.md new file mode 100644 index 0000000..415be2e --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsMetadata.md @@ -0,0 +1,41 @@ +# GetLibraryItemsMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 58683 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683 | +| `Guid` | *string* | :heavy_minus_sign: | N/A | plex://movie/5d7768ba96b655001fdc0408 | +| `Studio` | *string* | :heavy_minus_sign: | N/A | 20th Century Studios | +| `Type` | *string* | :heavy_minus_sign: | N/A | movie | +| `Title` | *string* | :heavy_minus_sign: | N/A | Avatar: The Way of Water | +| `ContentRating` | *string* | :heavy_minus_sign: | N/A | PG-13 | +| `Summary` | *string* | :heavy_minus_sign: | N/A | Jake Sully lives with his newfound family formed on the extrasolar moon Pandora. Once a familiar threat returns to finish what was previously started, Jake must work with Neytiri and the army of the Na'vi race to protect their home. | +| `Rating` | *double* | :heavy_minus_sign: | N/A | 7.6 | +| `AudienceRating` | *double* | :heavy_minus_sign: | N/A | 9.2 | +| `Year` | *int* | :heavy_minus_sign: | N/A | 2022 | +| `Tagline` | *string* | :heavy_minus_sign: | N/A | Return to Pandora. | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 | +| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 11558112 | +| `OriginallyAvailableAt` | [LocalDate](https://nodatime.org/3.1.x/api/NodaTime.LocalDate.html) | :heavy_minus_sign: | N/A | 2022-12-14 00:00:00 +0000 UTC | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1680457607 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1703239236 | +| `AudienceRatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.upright | +| `ChapterSource` | *string* | :heavy_minus_sign: | N/A | media | +| `PrimaryExtraKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58684 | +| `RatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.ripe | +| `Media` | List<[GetLibraryItemsMedia](../../Models/Requests/GetLibraryItemsMedia.md)> | :heavy_minus_sign: | N/A | [{"Part":[{"container":"mkv","duration":11558112,"file":"/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv","id":119542,"key":"/library/parts/119542/1680457526/file.mkv","size":36158371307,"videoProfile":"main 10"}],"aspectRatio":1.85,"audioChannels":6,"audioCodec":"eac3","bitrate":25025,"container":"mkv","duration":11558112,"height":2072,"id":119534,"videoCodec":"hevc","videoFrameRate":"24p","videoProfile":"main 10","videoResolution":"4k","width":3840}] | +| `Genre` | List<[GetLibraryItemsGenre](../../Models/Requests/GetLibraryItemsGenre.md)> | :heavy_minus_sign: | N/A | [{"tag":"Adventure"}] | +| `Country` | List<[GetLibraryItemsCountry](../../Models/Requests/GetLibraryItemsCountry.md)> | :heavy_minus_sign: | N/A | [{"tag":"United States of America"}] | +| `Director` | List<[GetLibraryItemsDirector](../../Models/Requests/GetLibraryItemsDirector.md)> | :heavy_minus_sign: | N/A | [{"tag":"James Cameron"}] | +| `Writer` | List<[GetLibraryItemsWriter](../../Models/Requests/GetLibraryItemsWriter.md)> | :heavy_minus_sign: | N/A | [{"tag":"James Cameron"}] | +| `Role` | List<[GetLibraryItemsRole](../../Models/Requests/GetLibraryItemsRole.md)> | :heavy_minus_sign: | N/A | [{"tag":"Sigourney Weaver"}] | +| `TitleSort` | *string* | :heavy_minus_sign: | N/A | Whale | +| `ViewCount` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LastViewedAt` | *int* | :heavy_minus_sign: | N/A | 1682752242 | +| `OriginalTitle` | *string* | :heavy_minus_sign: | N/A | 映画 ブラッククローバー 魔法帝の剣 | +| `ViewOffset` | *int* | :heavy_minus_sign: | N/A | 5222500 | +| `SkipCount` | *int* | :heavy_minus_sign: | N/A | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsPart.md b/docs/Models/Requests/GetLibraryItemsPart.md new file mode 100644 index 0000000..45e7b20 --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsPart.md @@ -0,0 +1,14 @@ +# GetLibraryItemsPart + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 119542 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/parts/119542/1680457526/file.mkv | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 11558112 | +| `File` | *string* | :heavy_minus_sign: | N/A | /movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv | +| `Size` | *long* | :heavy_minus_sign: | N/A | 36158371307 | +| `Container` | *string* | :heavy_minus_sign: | N/A | mkv | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | main 10 | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsRequest.md b/docs/Models/Requests/GetLibraryItemsRequest.md index afdbfcc..9798c6e 100644 --- a/docs/Models/Requests/GetLibraryItemsRequest.md +++ b/docs/Models/Requests/GetLibraryItemsRequest.md @@ -3,8 +3,7 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------ | ------------------------------ | ------------------------------ | ------------------------------ | -| `SectionId` | *double* | :heavy_check_mark: | the Id of the library to query | -| `Type` | *double* | :heavy_minus_sign: | item type | -| `Filter` | *string* | :heavy_minus_sign: | the filter parameter | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | +| `SectionId` | *long* | :heavy_check_mark: | the Id of the library to query | +| `Tag` | [Tag](../../Models/Requests/Tag.md) | :heavy_check_mark: | A key representing a specific tag within the section. | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsResponse.md b/docs/Models/Requests/GetLibraryItemsResponse.md index 0946f5e..4e8bbc7 100644 --- a/docs/Models/Requests/GetLibraryItemsResponse.md +++ b/docs/Models/Requests/GetLibraryItemsResponse.md @@ -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 | -| `Object` | [GetLibraryItemsResponseBody](../../Models/Requests/GetLibraryItemsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `Object` | [GetLibraryItemsResponseBody](../../Models/Requests/GetLibraryItemsResponseBody.md) | :heavy_minus_sign: | The contents of the library by section and tag | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsResponseBody.md b/docs/Models/Requests/GetLibraryItemsResponseBody.md index 08285a0..b6f586b 100644 --- a/docs/Models/Requests/GetLibraryItemsResponseBody.md +++ b/docs/Models/Requests/GetLibraryItemsResponseBody.md @@ -1,10 +1,10 @@ # GetLibraryItemsResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +The contents of the library by section and tag ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `Errors` | List<[GetLibraryItemsErrors](../../Models/Requests/GetLibraryItemsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | +| `MediaContainer` | [GetLibraryItemsMediaContainer](../../Models/Requests/GetLibraryItemsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsRole.md b/docs/Models/Requests/GetLibraryItemsRole.md new file mode 100644 index 0000000..a8858d5 --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsRole.md @@ -0,0 +1,8 @@ +# GetLibraryItemsRole + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Sigourney Weaver | \ No newline at end of file diff --git a/docs/Models/Requests/GetLibraryItemsWriter.md b/docs/Models/Requests/GetLibraryItemsWriter.md new file mode 100644 index 0000000..4fc777a --- /dev/null +++ b/docs/Models/Requests/GetLibraryItemsWriter.md @@ -0,0 +1,8 @@ +# GetLibraryItemsWriter + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | James Cameron | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataChildrenDirectory.md b/docs/Models/Requests/GetMetadataChildrenDirectory.md new file mode 100644 index 0000000..83a95f2 --- /dev/null +++ b/docs/Models/Requests/GetMetadataChildrenDirectory.md @@ -0,0 +1,12 @@ +# GetMetadataChildrenDirectory + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | +| `LeafCount` | *int* | :heavy_minus_sign: | N/A | 16 | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072/thumb/1705739923 | +| `ViewedLeafCount` | *int* | :heavy_minus_sign: | N/A | 16 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072/allLeaves | +| `Title` | *string* | :heavy_minus_sign: | N/A | All episodes | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataChildrenLibraryResponseBody.md b/docs/Models/Requests/GetMetadataChildrenLibraryResponseBody.md new file mode 100644 index 0000000..c0e4d34 --- /dev/null +++ b/docs/Models/Requests/GetMetadataChildrenLibraryResponseBody.md @@ -0,0 +1,10 @@ +# GetMetadataChildrenLibraryResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `Errors` | List<[GetMetadataChildrenErrors](../../Models/Requests/GetMetadataChildrenErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataChildrenMediaContainer.md b/docs/Models/Requests/GetMetadataChildrenMediaContainer.md new file mode 100644 index 0000000..7474622 --- /dev/null +++ b/docs/Models/Requests/GetMetadataChildrenMediaContainer.md @@ -0,0 +1,30 @@ +# GetMetadataChildrenMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 3 | +| `AllowSync` | *bool* | :heavy_minus_sign: | N/A | true | +| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072/art/1705739923 | +| `Identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library | +| `Key` | *string* | :heavy_minus_sign: | N/A | 30072 | +| `LibrarySectionID` | *int* | :heavy_minus_sign: | N/A | 2 | +| `LibrarySectionTitle` | *string* | :heavy_minus_sign: | N/A | TV Shows | +| `LibrarySectionUUID` | *string* | :heavy_minus_sign: | N/A | 4bb2521c-8ba9-459b-aaee-8ab8bc35eabd | +| `MediaTagPrefix` | *string* | :heavy_minus_sign: | N/A | /system/bundle/media/flags/ | +| `MediaTagVersion` | *int* | :heavy_minus_sign: | N/A | 1701731894 | +| `Nocache` | *bool* | :heavy_minus_sign: | N/A | true | +| `ParentIndex` | *int* | :heavy_minus_sign: | N/A | 1 | +| `ParentTitle` | *string* | :heavy_minus_sign: | N/A | Reacher | +| `ParentYear` | *int* | :heavy_minus_sign: | N/A | 2022 | +| `Summary` | *string* | :heavy_minus_sign: | N/A | When retired Military Police Officer Jack Reacher is arrested for a murder he did not commit, he finds himself in the middle of a deadly conspiracy full of dirty cops, shady businessmen, and scheming politicians. With nothing but his wits, he must figure out what is happening in Margrave, Georgia. | +| `Theme` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072/theme/1705739923 | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072/thumb/1705739923 | +| `Title1` | *string* | :heavy_minus_sign: | N/A | TV Shows | +| `Title2` | *string* | :heavy_minus_sign: | N/A | Reacher | +| `ViewGroup` | *string* | :heavy_minus_sign: | N/A | season | +| `ViewMode` | *int* | :heavy_minus_sign: | N/A | 65593 | +| `Directory` | List<[GetMetadataChildrenDirectory](../../Models/Requests/GetMetadataChildrenDirectory.md)> | :heavy_minus_sign: | N/A | [{"key":"/library/metadata/30072/allLeaves","leafCount":16,"thumb":"/library/metadata/30072/thumb/1705739923","title":"All episodes","viewedLeafCount":16}] | +| `Metadata` | List<[GetMetadataChildrenMetadata](../../Models/Requests/GetMetadataChildrenMetadata.md)> | :heavy_minus_sign: | N/A | [{"addedAt":1702602021,"art":"/library/metadata/30072/art/1705739923","guid":"plex://season/652aea6549508477c34c6000","index":2,"key":"/library/metadata/66488/children","lastRatedAt":1703881224,"lastViewedAt":1705646565,"leafCount":8,"parentGuid":"plex://show/5d9c09190aaccd001f8f42f0","parentIndex":1,"parentKey":"/library/metadata/30072","parentRatingKey":"30072","parentStudio":"Amazon Studios","parentTheme":"/library/metadata/30072/theme/1705739923","parentThumb":"/library/metadata/30072/thumb/1705739923","parentTitle":"Reacher","parentYear":2022,"ratingKey":"66488","skipCount":1,"summary":"Based on\"Bad Luck and Trouble,\" when members of Reacher's old military unit start turning up dead, Reacher has just one thing on his mind—revenge.","thumb":"/library/metadata/66488/thumb/1703065033","title":"Season 2","type":"season","updatedAt":1703065033,"userRating":9,"viewCount":11,"viewedLeafCount":8}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataChildrenMetadata.md b/docs/Models/Requests/GetMetadataChildrenMetadata.md new file mode 100644 index 0000000..12758aa --- /dev/null +++ b/docs/Models/Requests/GetMetadataChildrenMetadata.md @@ -0,0 +1,34 @@ +# GetMetadataChildrenMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 66488 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66488/children | +| `ParentRatingKey` | *string* | :heavy_minus_sign: | N/A | 30072 | +| `Guid` | *string* | :heavy_minus_sign: | N/A | plex://season/652aea6549508477c34c6000 | +| `ParentGuid` | *string* | :heavy_minus_sign: | N/A | plex://show/5d9c09190aaccd001f8f42f0 | +| `ParentStudio` | *string* | :heavy_minus_sign: | N/A | Amazon Studios | +| `Type` | *string* | :heavy_minus_sign: | N/A | season | +| `Title` | *string* | :heavy_minus_sign: | N/A | Season 2 | +| `ParentKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072 | +| `ParentTitle` | *string* | :heavy_minus_sign: | N/A | Reacher | +| `Summary` | *string* | :heavy_minus_sign: | N/A | Based on"Bad Luck and Trouble," when members of Reacher's old military unit start turning up dead, Reacher has just one thing on his mind—revenge. | +| `Index` | *int* | :heavy_minus_sign: | N/A | 2 | +| `ParentIndex` | *int* | :heavy_minus_sign: | N/A | 1 | +| `ViewCount` | *int* | :heavy_minus_sign: | N/A | 11 | +| `LastViewedAt` | *int* | :heavy_minus_sign: | N/A | 1705646565 | +| `ParentYear` | *int* | :heavy_minus_sign: | N/A | 2022 | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66488/thumb/1703065033 | +| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072/art/1705739923 | +| `ParentThumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072/thumb/1705739923 | +| `ParentTheme` | *string* | :heavy_minus_sign: | N/A | /library/metadata/30072/theme/1705739923 | +| `LeafCount` | *int* | :heavy_minus_sign: | N/A | 8 | +| `ViewedLeafCount` | *int* | :heavy_minus_sign: | N/A | 8 | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1702602021 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1703065033 | +| `UserRating` | *int* | :heavy_minus_sign: | N/A | 9 | +| `SkipCount` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LastRatedAt` | *int* | :heavy_minus_sign: | N/A | 1703881224 | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataChildrenResponse.md b/docs/Models/Requests/GetMetadataChildrenResponse.md index 8191502..ecb7304 100644 --- a/docs/Models/Requests/GetMetadataChildrenResponse.md +++ b/docs/Models/Requests/GetMetadataChildrenResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetMetadataChildrenResponseBody](../../Models/Requests/GetMetadataChildrenResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetMetadataChildrenResponseBody](../../Models/Requests/GetMetadataChildrenResponseBody.md) | :heavy_minus_sign: | The children of the library item. | +| `FourHundredAndOneApplicationJsonObject` | [GetMetadataChildrenLibraryResponseBody](../../Models/Requests/GetMetadataChildrenLibraryResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataChildrenResponseBody.md b/docs/Models/Requests/GetMetadataChildrenResponseBody.md index 916d521..e46a5ac 100644 --- a/docs/Models/Requests/GetMetadataChildrenResponseBody.md +++ b/docs/Models/Requests/GetMetadataChildrenResponseBody.md @@ -1,10 +1,10 @@ # GetMetadataChildrenResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +The children of the library item. ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `Errors` | List<[GetMetadataChildrenErrors](../../Models/Requests/GetMetadataChildrenErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `MediaContainer` | [GetMetadataChildrenMediaContainer](../../Models/Requests/GetMetadataChildrenMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataCountry.md b/docs/Models/Requests/GetMetadataCountry.md new file mode 100644 index 0000000..8d8144e --- /dev/null +++ b/docs/Models/Requests/GetMetadataCountry.md @@ -0,0 +1,10 @@ +# GetMetadataCountry + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `Id` | *int* | :heavy_minus_sign: | N/A | 116 | +| `Filter` | *string* | :heavy_minus_sign: | N/A | country=116 | +| `Tag` | *string* | :heavy_minus_sign: | N/A | United States of America | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataDirector.md b/docs/Models/Requests/GetMetadataDirector.md new file mode 100644 index 0000000..0b0d3f1 --- /dev/null +++ b/docs/Models/Requests/GetMetadataDirector.md @@ -0,0 +1,12 @@ +# GetMetadataDirector + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 130 | +| `Filter` | *string* | :heavy_minus_sign: | N/A | director=130 | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Joss Whedon | +| `TagKey` | *string* | :heavy_minus_sign: | N/A | 5d776828880197001ec90e8f | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataGenre.md b/docs/Models/Requests/GetMetadataGenre.md new file mode 100644 index 0000000..56474ab --- /dev/null +++ b/docs/Models/Requests/GetMetadataGenre.md @@ -0,0 +1,10 @@ +# GetMetadataGenre + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Id` | *int* | :heavy_minus_sign: | N/A | 184 | +| `Filter` | *string* | :heavy_minus_sign: | N/A | genre=184 | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Thriller | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataLibraryResponseBody.md b/docs/Models/Requests/GetMetadataLibraryResponseBody.md new file mode 100644 index 0000000..87989df --- /dev/null +++ b/docs/Models/Requests/GetMetadataLibraryResponseBody.md @@ -0,0 +1,10 @@ +# GetMetadataLibraryResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | +| `Errors` | List<[GetMetadataErrors](../../Models/Requests/GetMetadataErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataMedia.md b/docs/Models/Requests/GetMetadataMedia.md new file mode 100644 index 0000000..151dae9 --- /dev/null +++ b/docs/Models/Requests/GetMetadataMedia.md @@ -0,0 +1,24 @@ +# GetMetadataMedia + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `Id` | *int* | :heavy_minus_sign: | N/A | 15 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 141417 | +| `Bitrate` | *int* | :heavy_minus_sign: | N/A | 2278 | +| `Width` | *int* | :heavy_minus_sign: | N/A | 1920 | +| `Height` | *int* | :heavy_minus_sign: | N/A | 814 | +| `AspectRatio` | *double* | :heavy_minus_sign: | N/A | 2.35 | +| `AudioChannels` | *int* | :heavy_minus_sign: | N/A | 2 | +| `AudioCodec` | *string* | :heavy_minus_sign: | N/A | aac | +| `VideoCodec` | *string* | :heavy_minus_sign: | N/A | h264 | +| `VideoResolution` | *string* | :heavy_minus_sign: | N/A | 1080 | +| `Container` | *string* | :heavy_minus_sign: | N/A | mp4 | +| `VideoFrameRate` | *string* | :heavy_minus_sign: | N/A | 24p | +| `OptimizedForStreaming` | *int* | :heavy_minus_sign: | N/A | 0 | +| `AudioProfile` | *string* | :heavy_minus_sign: | N/A | lc | +| `Has64bitOffsets` | *bool* | :heavy_minus_sign: | N/A | false | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | high | +| `Part` | List<[GetMetadataPart](../../Models/Requests/GetMetadataPart.md)> | :heavy_minus_sign: | N/A | [{"Stream":[{"bitDepth":8,"bitrate":2160,"chromaLocation":"left","chromaSubsampling":14520,"codec":"h264","codedHeight":816,"codedWidth":1920,"colorPrimaries":"bt709","colorRange":"tv","colorSpace":"bt709","colorTrc":"bt709","default":true,"displayTitle":"1080p (H.264)","extendedDisplayTitle":"1080p (H.264)","frameRate":24,"hasScalingMatrix":false,"height":814,"id":30,"index":1,"level":40,"profile":"high","refFrames":4,"scanType":"progressive","streamIdentifier":"2","streamType":1,"width":1920},{"bitrate":128,"channels":2,"codec":"aac","default":true,"displayTitle":"English (AAC Stereo)","extendedDisplayTitle":"English (AAC Stereo)","id":29,"index":0,"language":"English","languageCode":"eng","languageTag":"en","profile":"lc","samplingRate":44100,"selected":true,"streamIdentifier":"1","streamType":2}],"audioProfile":"lc","container":"mp4","duration":141417,"file":"/movies/Serenity (2005)/Serenity (2005).mp4","has64bitOffsets":false,"id":15,"key":"/library/parts/15/1705637151/file.mp4","optimizedForStreaming":false,"size":40271948,"videoProfile":"high"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataMediaContainer.md b/docs/Models/Requests/GetMetadataMediaContainer.md new file mode 100644 index 0000000..99b38aa --- /dev/null +++ b/docs/Models/Requests/GetMetadataMediaContainer.md @@ -0,0 +1,16 @@ +# GetMetadataMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 1 | +| `AllowSync` | *bool* | :heavy_minus_sign: | N/A | true | +| `Identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library | +| `LibrarySectionID` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LibrarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies | +| `LibrarySectionUUID` | *string* | :heavy_minus_sign: | N/A | cfc899d7-3000-46f6-8489-b9592714ada5 | +| `MediaTagPrefix` | *string* | :heavy_minus_sign: | N/A | /system/bundle/media/flags/ | +| `MediaTagVersion` | *int* | :heavy_minus_sign: | N/A | 1698860922 | +| `Metadata` | List<[GetMetadataMetadata](../../Models/Requests/GetMetadataMetadata.md)> | :heavy_minus_sign: | N/A | [{"Country":[{"filter":"country=116","id":116,"tag":"United States of America"}],"Director":[{"filter":"director=130","id":130,"tag":"Joss Whedon","tagKey":"5d776828880197001ec90e8f","thumb":"https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg"}],"Genre":[{"filter":"genre=5","id":5,"tag":"Science Fiction"}],"Guid":[{"id":"imdb://tt0379786"}],"Media":[{"Part":[{"Stream":[{"bitDepth":8,"bitrate":2160,"chromaLocation":"left","chromaSubsampling":14520,"codec":"h264","codedHeight":816,"codedWidth":1920,"colorPrimaries":"bt709","colorRange":"tv","colorSpace":"bt709","colorTrc":"bt709","default":true,"displayTitle":"1080p (H.264)","extendedDisplayTitle":"1080p (H.264)","frameRate":24,"hasScalingMatrix":false,"height":814,"id":30,"index":1,"level":40,"profile":"high","refFrames":4,"scanType":"progressive","streamIdentifier":"2","streamType":1,"width":1920},{"bitrate":128,"channels":2,"codec":"aac","default":true,"displayTitle":"English (AAC Stereo)","extendedDisplayTitle":"English (AAC Stereo)","id":29,"index":0,"language":"English","languageCode":"eng","languageTag":"en","profile":"lc","samplingRate":44100,"selected":true,"streamIdentifier":"1","streamType":2}],"audioProfile":"lc","container":"mp4","duration":141417,"file":"/movies/Serenity (2005)/Serenity (2005).mp4","has64bitOffsets":false,"id":15,"key":"/library/parts/15/1705637151/file.mp4","optimizedForStreaming":false,"size":40271948,"videoProfile":"high"}],"aspectRatio":2.35,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2278,"container":"mp4","duration":141417,"has64bitOffsets":false,"height":814,"id":15,"optimizedForStreaming":0,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}],"Producer":[{"filter":"producer=221","id":221,"tag":"Barry Mendel","tagKey":"5d776826961905001eb90e2b","thumb":"https://metadata-static.plex.tv/8/people/87877371326a964634d18556d94547e1.jpg"}],"Rating":[{"image":"imdb://image.rating","type":"audience","value":7.8}],"Role":[{"filter":"actor=8","id":8,"role":"Malcolm \"Mal\" Reynolds","tag":"Nathan Fillion","tagKey":"5d7768286f4521001ea9945c","thumb":"https://metadata-static.plex.tv/4/people/4a2890ca346eb832500b1ed0add89d5e.jpg"}],"Writer":[{"filter":"writer=132","id":132,"tag":"Joss Whedon","tagKey":"5d776828880197001ec90e8f","thumb":"https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg"}],"addedAt":1705637164,"art":"/library/metadata/17/art/1705637165","audienceRating":9.1,"audienceRatingImage":"rottentomatoes://image.rating.upright","contentRating":"PG-13","duration":141417,"guid":"plex://movie/5d77683f6f4521001ea9dc53","hasPremiumPrimaryExtra":"1","key":"/library/metadata/17","librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"2005-09-29T00:00:00Z","rating":8.2,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"17","studio":"Universal Pictures","summary":"Serenity continues the story of the TV series it was based upon (\"Firefly\"). River Tam had a secret - one in which she's not even aware - so dangerous, no one's safe, as an Alliance operative's sent to capture her, and all others are considered irrelevant to his job.","tagline":"They aim to misbehave.","thumb":"/library/metadata/17/thumb/1705637165","title":"Serenity","type":"movie","updatedAt":1705637165,"year":2005}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataMetadata.md b/docs/Models/Requests/GetMetadataMetadata.md new file mode 100644 index 0000000..5bbcc02 --- /dev/null +++ b/docs/Models/Requests/GetMetadataMetadata.md @@ -0,0 +1,40 @@ +# GetMetadataMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 17 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17 | +| `Guid` | *string* | :heavy_minus_sign: | N/A | plex://movie/5d77683f6f4521001ea9dc53 | +| `Studio` | *string* | :heavy_minus_sign: | N/A | Universal Pictures | +| `Type` | *string* | :heavy_minus_sign: | N/A | movie | +| `Title` | *string* | :heavy_minus_sign: | N/A | Serenity | +| `LibrarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies | +| `LibrarySectionID` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LibrarySectionKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/1 | +| `ContentRating` | *string* | :heavy_minus_sign: | N/A | PG-13 | +| `Summary` | *string* | :heavy_minus_sign: | N/A | Serenity continues the story of the TV series it was based upon ("Firefly"). River Tam had a secret - one in which she's not even aware - so dangerous, no one's safe, as an Alliance operative's sent to capture her, and all others are considered irrelevant to his job. | +| `Rating` | *double* | :heavy_minus_sign: | N/A | 8.2 | +| `AudienceRating` | *double* | :heavy_minus_sign: | N/A | 9.1 | +| `Year` | *int* | :heavy_minus_sign: | N/A | 2005 | +| `Tagline` | *string* | :heavy_minus_sign: | N/A | They aim to misbehave. | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17/thumb/1705637165 | +| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17/art/1705637165 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 141417 | +| `OriginallyAvailableAt` | [LocalDate](https://nodatime.org/3.1.x/api/NodaTime.LocalDate.html) | :heavy_minus_sign: | N/A | 2005-09-29 00:00:00 +0000 UTC | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1705637164 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1705637165 | +| `AudienceRatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.upright | +| `HasPremiumPrimaryExtra` | *string* | :heavy_minus_sign: | N/A | 1 | +| `RatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.ripe | +| `Media` | List<[GetMetadataMedia](../../Models/Requests/GetMetadataMedia.md)> | :heavy_minus_sign: | N/A | [{"Part":[{"Stream":[{"bitDepth":8,"bitrate":2160,"chromaLocation":"left","chromaSubsampling":14520,"codec":"h264","codedHeight":816,"codedWidth":1920,"colorPrimaries":"bt709","colorRange":"tv","colorSpace":"bt709","colorTrc":"bt709","default":true,"displayTitle":"1080p (H.264)","extendedDisplayTitle":"1080p (H.264)","frameRate":24,"hasScalingMatrix":false,"height":814,"id":30,"index":1,"level":40,"profile":"high","refFrames":4,"scanType":"progressive","streamIdentifier":"2","streamType":1,"width":1920},{"bitrate":128,"channels":2,"codec":"aac","default":true,"displayTitle":"English (AAC Stereo)","extendedDisplayTitle":"English (AAC Stereo)","id":29,"index":0,"language":"English","languageCode":"eng","languageTag":"en","profile":"lc","samplingRate":44100,"selected":true,"streamIdentifier":"1","streamType":2}],"audioProfile":"lc","container":"mp4","duration":141417,"file":"/movies/Serenity (2005)/Serenity (2005).mp4","has64bitOffsets":false,"id":15,"key":"/library/parts/15/1705637151/file.mp4","optimizedForStreaming":false,"size":40271948,"videoProfile":"high"}],"aspectRatio":2.35,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2278,"container":"mp4","duration":141417,"has64bitOffsets":false,"height":814,"id":15,"optimizedForStreaming":0,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}] | +| `Genre` | List<[GetMetadataGenre](../../Models/Requests/GetMetadataGenre.md)> | :heavy_minus_sign: | N/A | [{"filter":"genre=184","id":184,"tag":"Thriller"}] | +| `Country` | List<[GetMetadataCountry](../../Models/Requests/GetMetadataCountry.md)> | :heavy_minus_sign: | N/A | [{"filter":"country=116","id":116,"tag":"United States of America"}] | +| `Guids` | List<[Guids](../../Models/Requests/Guids.md)> | :heavy_minus_sign: | N/A | [{"id":"tvdb://2337"}] | +| `Ratings` | List<[Ratings](../../Models/Requests/Ratings.md)> | :heavy_minus_sign: | N/A | [{"image":"themoviedb://image.rating","type":"audience","value":7.4}] | +| `Director` | List<[GetMetadataDirector](../../Models/Requests/GetMetadataDirector.md)> | :heavy_minus_sign: | N/A | [{"filter":"director=130","id":130,"tag":"Joss Whedon","tagKey":"5d776828880197001ec90e8f","thumb":"https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg"}] | +| `Writer` | List<[GetMetadataWriter](../../Models/Requests/GetMetadataWriter.md)> | :heavy_minus_sign: | N/A | [{"filter":"writer=132","id":132,"tag":"Joss Whedon","tagKey":"5d776828880197001ec90e8f","thumb":"https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg"}] | +| `Role` | List<[GetMetadataRole](../../Models/Requests/GetMetadataRole.md)> | :heavy_minus_sign: | N/A | [{"filter":"actor=220","id":220,"role":"Bar Guy (uncredited)","tag":"Dennis Keiffer","tagKey":"5d77683554f42c001f8c4708","thumb":"https://metadata-static.plex.tv/6/people/648e9a7ea1d537bccfcd7615134b78ce.jpg"}] | +| `Producer` | List<[Producer](../../Models/Requests/Producer.md)> | :heavy_minus_sign: | N/A | [{"filter":"producer=221","id":221,"tag":"Barry Mendel","tagKey":"5d776826961905001eb90e2b","thumb":"https://metadata-static.plex.tv/8/people/87877371326a964634d18556d94547e1.jpg"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataPart.md b/docs/Models/Requests/GetMetadataPart.md new file mode 100644 index 0000000..5d168b2 --- /dev/null +++ b/docs/Models/Requests/GetMetadataPart.md @@ -0,0 +1,18 @@ +# GetMetadataPart + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 15 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/parts/15/1705637151/file.mp4 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 141417 | +| `File` | *string* | :heavy_minus_sign: | N/A | /movies/Serenity (2005)/Serenity (2005).mp4 | +| `Size` | *int* | :heavy_minus_sign: | N/A | 40271948 | +| `AudioProfile` | *string* | :heavy_minus_sign: | N/A | lc | +| `Container` | *string* | :heavy_minus_sign: | N/A | mp4 | +| `Has64bitOffsets` | *bool* | :heavy_minus_sign: | N/A | false | +| `OptimizedForStreaming` | *bool* | :heavy_minus_sign: | N/A | false | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | high | +| `Stream` | List<[Stream](../../Models/Requests/Stream.md)> | :heavy_minus_sign: | N/A | [{"bitDepth":8,"bitrate":128,"channels":2,"chromaLocation":"left","chromaSubsampling":14520,"codec":"aac","codedHeight":816,"codedWidth":1920,"colorPrimaries":"bt709","colorRange":"tv","colorSpace":"bt709","colorTrc":"bt709","default":true,"displayTitle":"English (AAC Stereo)","extendedDisplayTitle":"English (AAC Stereo)","frameRate":24,"hasScalingMatrix":false,"height":814,"id":29,"index":0,"language":"English","languageCode":"eng","languageTag":"en","level":40,"profile":"lc","refFrames":4,"samplingRate":44100,"scanType":"progressive","selected":true,"streamIdentifier":"1","streamType":2,"width":1920}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataResponse.md b/docs/Models/Requests/GetMetadataResponse.md index 34a50bd..1f4269f 100644 --- a/docs/Models/Requests/GetMetadataResponse.md +++ b/docs/Models/Requests/GetMetadataResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetMetadataResponseBody](../../Models/Requests/GetMetadataResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetMetadataResponseBody](../../Models/Requests/GetMetadataResponseBody.md) | :heavy_minus_sign: | The metadata of the library item. | +| `FourHundredAndOneApplicationJsonObject` | [GetMetadataLibraryResponseBody](../../Models/Requests/GetMetadataLibraryResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataResponseBody.md b/docs/Models/Requests/GetMetadataResponseBody.md index 9ef96d7..d7c81eb 100644 --- a/docs/Models/Requests/GetMetadataResponseBody.md +++ b/docs/Models/Requests/GetMetadataResponseBody.md @@ -1,10 +1,10 @@ # GetMetadataResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +The metadata of the library item. ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `Errors` | List<[GetMetadataErrors](../../Models/Requests/GetMetadataErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | +| `MediaContainer` | [GetMetadataMediaContainer](../../Models/Requests/GetMetadataMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataRole.md b/docs/Models/Requests/GetMetadataRole.md new file mode 100644 index 0000000..9aae319 --- /dev/null +++ b/docs/Models/Requests/GetMetadataRole.md @@ -0,0 +1,13 @@ +# GetMetadataRole + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 220 | +| `Filter` | *string* | :heavy_minus_sign: | N/A | actor=220 | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Dennis Keiffer | +| `TagKey` | *string* | :heavy_minus_sign: | N/A | 5d77683554f42c001f8c4708 | +| `Role` | *string* | :heavy_minus_sign: | N/A | Bar Guy (uncredited) | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | https://metadata-static.plex.tv/6/people/648e9a7ea1d537bccfcd7615134b78ce.jpg | \ No newline at end of file diff --git a/docs/Models/Requests/GetMetadataWriter.md b/docs/Models/Requests/GetMetadataWriter.md new file mode 100644 index 0000000..5f31403 --- /dev/null +++ b/docs/Models/Requests/GetMetadataWriter.md @@ -0,0 +1,12 @@ +# GetMetadataWriter + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 132 | +| `Filter` | *string* | :heavy_minus_sign: | N/A | writer=132 | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Joss Whedon | +| `TagKey` | *string* | :heavy_minus_sign: | N/A | 5d776828880197001ec90e8f | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg | \ No newline at end of file diff --git a/docs/Models/Requests/GetOnDeckGuids.md b/docs/Models/Requests/GetOnDeckGuids.md new file mode 100644 index 0000000..3fac436 --- /dev/null +++ b/docs/Models/Requests/GetOnDeckGuids.md @@ -0,0 +1,8 @@ +# GetOnDeckGuids + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Id` | *string* | :heavy_minus_sign: | N/A | imdb://tt13303712 | \ No newline at end of file diff --git a/docs/Models/Requests/GetOnDeckMetadata.md b/docs/Models/Requests/GetOnDeckMetadata.md index 48fe3f4..0f002b2 100644 --- a/docs/Models/Requests/GetOnDeckMetadata.md +++ b/docs/Models/Requests/GetOnDeckMetadata.md @@ -40,4 +40,4 @@ | `AddedAt` | *double* | :heavy_minus_sign: | N/A | 1654258196 | | `UpdatedAt` | *double* | :heavy_minus_sign: | N/A | 1654258204 | | `Media` | List<[GetOnDeckMedia](../../Models/Requests/GetOnDeckMedia.md)> | :heavy_minus_sign: | N/A | | -| `Guids` | List<[Guids](../../Models/Requests/Guids.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file +| `Guids` | List<[GetOnDeckGuids](../../Models/Requests/GetOnDeckGuids.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/Models/Requests/GetOnDeckPart.md b/docs/Models/Requests/GetOnDeckPart.md index 3f72fa5..261128b 100644 --- a/docs/Models/Requests/GetOnDeckPart.md +++ b/docs/Models/Requests/GetOnDeckPart.md @@ -3,14 +3,14 @@ ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `Id` | *double* | :heavy_minus_sign: | N/A | 80994 | -| `Key` | *string* | :heavy_minus_sign: | N/A | /library/parts/80994/1655007810/file.mkv | -| `Duration` | *double* | :heavy_minus_sign: | N/A | 420080 | -| `File` | *string* | :heavy_minus_sign: | N/A | /tvshows/Bluey (2018)/Bluey (2018) - S02E33 - Circus.mkv | -| `Size` | *double* | :heavy_minus_sign: | N/A | 55148931 | -| `AudioProfile` | *string* | :heavy_minus_sign: | N/A | lc | -| `Container` | *string* | :heavy_minus_sign: | N/A | mkv | -| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | main | -| `Stream` | List<[Stream](../../Models/Requests/Stream.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | +| `Id` | *double* | :heavy_minus_sign: | N/A | 80994 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/parts/80994/1655007810/file.mkv | +| `Duration` | *double* | :heavy_minus_sign: | N/A | 420080 | +| `File` | *string* | :heavy_minus_sign: | N/A | /tvshows/Bluey (2018)/Bluey (2018) - S02E33 - Circus.mkv | +| `Size` | *double* | :heavy_minus_sign: | N/A | 55148931 | +| `AudioProfile` | *string* | :heavy_minus_sign: | N/A | lc | +| `Container` | *string* | :heavy_minus_sign: | N/A | mkv | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | main | +| `Stream` | List<[GetOnDeckStream](../../Models/Requests/GetOnDeckStream.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/Models/Requests/GetOnDeckStream.md b/docs/Models/Requests/GetOnDeckStream.md new file mode 100644 index 0000000..1863bf2 --- /dev/null +++ b/docs/Models/Requests/GetOnDeckStream.md @@ -0,0 +1,30 @@ +# GetOnDeckStream + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------- | ---------------------- | ---------------------- | ---------------------- | ---------------------- | +| `Id` | *double* | :heavy_minus_sign: | N/A | 211234 | +| `StreamType` | *double* | :heavy_minus_sign: | N/A | 1 | +| `Default` | *bool* | :heavy_minus_sign: | N/A | | +| `Codec` | *string* | :heavy_minus_sign: | N/A | hevc | +| `Index` | *double* | :heavy_minus_sign: | N/A | 0 | +| `Bitrate` | *double* | :heavy_minus_sign: | N/A | 918 | +| `Language` | *string* | :heavy_minus_sign: | N/A | English | +| `LanguageTag` | *string* | :heavy_minus_sign: | N/A | en | +| `LanguageCode` | *string* | :heavy_minus_sign: | N/A | eng | +| `BitDepth` | *double* | :heavy_minus_sign: | N/A | 8 | +| `ChromaLocation` | *string* | :heavy_minus_sign: | N/A | left | +| `ChromaSubsampling` | *string* | :heavy_minus_sign: | N/A | 4:2:0 | +| `CodedHeight` | *double* | :heavy_minus_sign: | N/A | 1080 | +| `CodedWidth` | *double* | :heavy_minus_sign: | N/A | 1920 | +| `ColorRange` | *string* | :heavy_minus_sign: | N/A | tv | +| `FrameRate` | *double* | :heavy_minus_sign: | N/A | 25 | +| `Height` | *double* | :heavy_minus_sign: | N/A | 1080 | +| `Level` | *double* | :heavy_minus_sign: | N/A | 120 | +| `Profile` | *string* | :heavy_minus_sign: | N/A | main | +| `RefFrames` | *double* | :heavy_minus_sign: | N/A | 1 | +| `Width` | *double* | :heavy_minus_sign: | N/A | 1920 | +| `DisplayTitle` | *string* | :heavy_minus_sign: | N/A | 1080p (HEVC Main) | +| `ExtendedDisplayTitle` | *string* | :heavy_minus_sign: | N/A | 1080p (HEVC Main) | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsCountry.md b/docs/Models/Requests/GetPlaylistContentsCountry.md new file mode 100644 index 0000000..13748e4 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsCountry.md @@ -0,0 +1,8 @@ +# GetPlaylistContentsCountry + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | United States of America | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsDirector.md b/docs/Models/Requests/GetPlaylistContentsDirector.md new file mode 100644 index 0000000..47019a5 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsDirector.md @@ -0,0 +1,8 @@ +# GetPlaylistContentsDirector + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Joss Whedon | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsGenre.md b/docs/Models/Requests/GetPlaylistContentsGenre.md new file mode 100644 index 0000000..03d45cf --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsGenre.md @@ -0,0 +1,8 @@ +# GetPlaylistContentsGenre + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Action | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsMedia.md b/docs/Models/Requests/GetPlaylistContentsMedia.md new file mode 100644 index 0000000..618af9c --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsMedia.md @@ -0,0 +1,24 @@ +# GetPlaylistContentsMedia + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `Id` | *int* | :heavy_minus_sign: | N/A | 15 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 141416 | +| `Bitrate` | *int* | :heavy_minus_sign: | N/A | 2273 | +| `Width` | *int* | :heavy_minus_sign: | N/A | 1920 | +| `Height` | *int* | :heavy_minus_sign: | N/A | 814 | +| `AspectRatio` | *double* | :heavy_minus_sign: | N/A | 2.35 | +| `AudioChannels` | *int* | :heavy_minus_sign: | N/A | 2 | +| `AudioCodec` | *string* | :heavy_minus_sign: | N/A | aac | +| `VideoCodec` | *string* | :heavy_minus_sign: | N/A | h264 | +| `VideoResolution` | *string* | :heavy_minus_sign: | N/A | 1080 | +| `Container` | *string* | :heavy_minus_sign: | N/A | mp4 | +| `VideoFrameRate` | *string* | :heavy_minus_sign: | N/A | 24p | +| `OptimizedForStreaming` | *int* | :heavy_minus_sign: | N/A | 0 | +| `AudioProfile` | *string* | :heavy_minus_sign: | N/A | lc | +| `Has64bitOffsets` | *bool* | :heavy_minus_sign: | N/A | false | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | high | +| `Part` | List<[GetPlaylistContentsPart](../../Models/Requests/GetPlaylistContentsPart.md)> | :heavy_minus_sign: | N/A | [{"audioProfile":"lc","container":"mp4","duration":141416,"file":"/movies/Serenity (2005)/Serenity (2005).mp4","has64bitOffsets":false,"id":15,"key":"/library/parts/15/1705637151/file.mp4","optimizedForStreaming":false,"size":40271948,"videoProfile":"high"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsMediaContainer.md b/docs/Models/Requests/GetPlaylistContentsMediaContainer.md new file mode 100644 index 0000000..95ae4af --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsMediaContainer.md @@ -0,0 +1,16 @@ +# GetPlaylistContentsMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `Size` | *int* | :heavy_minus_sign: | N/A | 2 | +| `Composite` | *string* | :heavy_minus_sign: | N/A | /playlists/95/composite/1705717521 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 282 | +| `LeafCount` | *int* | :heavy_minus_sign: | N/A | 2 | +| `PlaylistType` | *string* | :heavy_minus_sign: | N/A | video | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 95 | +| `Smart` | *bool* | :heavy_minus_sign: | N/A | true | +| `Title` | *string* | :heavy_minus_sign: | N/A | Smart Movie Playlist | +| `Metadata` | List<[GetPlaylistContentsMetadata](../../Models/Requests/GetPlaylistContentsMetadata.md)> | :heavy_minus_sign: | N/A | [{"Country":[{"tag":"United States of America"}],"Director":[{"tag":"Joss Whedon"}],"Genre":[{"tag":"Science Fiction"}],"Media":[{"Part":[{"audioProfile":"lc","container":"mp4","duration":141416,"file":"/movies/Serenity (2005)/Serenity (2005).mp4","has64bitOffsets":false,"id":15,"key":"/library/parts/15/1705637151/file.mp4","optimizedForStreaming":false,"size":40271948,"videoProfile":"high"}],"aspectRatio":2.35,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2273,"container":"mp4","duration":141416,"has64bitOffsets":false,"height":814,"id":15,"optimizedForStreaming":0,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}],"Role":[{"tag":"Nathan Fillion"}],"Writer":[{"tag":"Joss Whedon"}],"addedAt":1705637164,"art":"/library/metadata/17/art/1705637165","audienceRating":9.1,"audienceRatingImage":"rottentomatoes://image.rating.upright","contentRating":"PG-13","duration":141416,"guid":"plex://movie/5d77683f6f4521001ea9dc53","hasPremiumExtras":"1","hasPremiumPrimaryExtra":"1","key":"/library/metadata/17","librarySectionID":1,"librarySectionKey":"/library/sections/1","librarySectionTitle":"Movies","originallyAvailableAt":"2005-09-29T00:00:00Z","rating":8.2,"ratingImage":"rottentomatoes://image.rating.ripe","ratingKey":"17","studio":"Universal Pictures","summary":"Serenity continues the story of the TV series it was based upon (\"Firefly\"). River Tam had a secret - one in which she's not even aware - so dangerous, no one's safe, as an Alliance operative's sent to capture her, and all others are considered irrelevant to his job.","tagline":"They aim to misbehave.","thumb":"/library/metadata/17/thumb/1705637165","title":"Serenity","titleSort":"Amazing Spider-Man 2","type":"movie","updatedAt":1705637165,"year":2005}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsMetadata.md b/docs/Models/Requests/GetPlaylistContentsMetadata.md new file mode 100644 index 0000000..9a5c870 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsMetadata.md @@ -0,0 +1,39 @@ +# GetPlaylistContentsMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 17 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17 | +| `Guid` | *string* | :heavy_minus_sign: | N/A | plex://movie/5d77683f6f4521001ea9dc53 | +| `Studio` | *string* | :heavy_minus_sign: | N/A | Universal Pictures | +| `Type` | *string* | :heavy_minus_sign: | N/A | movie | +| `Title` | *string* | :heavy_minus_sign: | N/A | Serenity | +| `TitleSort` | *string* | :heavy_minus_sign: | N/A | Amazing Spider-Man 2 | +| `LibrarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies | +| `LibrarySectionID` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LibrarySectionKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/1 | +| `ContentRating` | *string* | :heavy_minus_sign: | N/A | PG-13 | +| `Summary` | *string* | :heavy_minus_sign: | N/A | Serenity continues the story of the TV series it was based upon ("Firefly"). River Tam had a secret - one in which she's not even aware - so dangerous, no one's safe, as an Alliance operative's sent to capture her, and all others are considered irrelevant to his job. | +| `Rating` | *double* | :heavy_minus_sign: | N/A | 8.2 | +| `AudienceRating` | *double* | :heavy_minus_sign: | N/A | 9.1 | +| `Year` | *int* | :heavy_minus_sign: | N/A | 2005 | +| `Tagline` | *string* | :heavy_minus_sign: | N/A | They aim to misbehave. | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17/thumb/1705637165 | +| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17/art/1705637165 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 141416 | +| `OriginallyAvailableAt` | [LocalDate](https://nodatime.org/3.1.x/api/NodaTime.LocalDate.html) | :heavy_minus_sign: | N/A | 2005-09-29 00:00:00 +0000 UTC | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1705637164 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1705637165 | +| `AudienceRatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.upright | +| `HasPremiumExtras` | *string* | :heavy_minus_sign: | N/A | 1 | +| `HasPremiumPrimaryExtra` | *string* | :heavy_minus_sign: | N/A | 1 | +| `RatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.ripe | +| `Media` | List<[GetPlaylistContentsMedia](../../Models/Requests/GetPlaylistContentsMedia.md)> | :heavy_minus_sign: | N/A | [{"Part":[{"audioProfile":"lc","container":"mp4","duration":141416,"file":"/movies/Serenity (2005)/Serenity (2005).mp4","has64bitOffsets":false,"id":15,"key":"/library/parts/15/1705637151/file.mp4","optimizedForStreaming":false,"size":40271948,"videoProfile":"high"}],"aspectRatio":2.35,"audioChannels":2,"audioCodec":"aac","audioProfile":"lc","bitrate":2273,"container":"mp4","duration":141416,"has64bitOffsets":false,"height":814,"id":15,"optimizedForStreaming":0,"videoCodec":"h264","videoFrameRate":"24p","videoProfile":"high","videoResolution":"1080","width":1920}] | +| `Genre` | List<[GetPlaylistContentsGenre](../../Models/Requests/GetPlaylistContentsGenre.md)> | :heavy_minus_sign: | N/A | [{"tag":"Action"}] | +| `Country` | List<[GetPlaylistContentsCountry](../../Models/Requests/GetPlaylistContentsCountry.md)> | :heavy_minus_sign: | N/A | [{"tag":"United States of America"}] | +| `Director` | List<[GetPlaylistContentsDirector](../../Models/Requests/GetPlaylistContentsDirector.md)> | :heavy_minus_sign: | N/A | [{"tag":"Joss Whedon"}] | +| `Writer` | List<[GetPlaylistContentsWriter](../../Models/Requests/GetPlaylistContentsWriter.md)> | :heavy_minus_sign: | N/A | [{"tag":"Joss Whedon"}] | +| `Role` | List<[GetPlaylistContentsRole](../../Models/Requests/GetPlaylistContentsRole.md)> | :heavy_minus_sign: | N/A | [{"tag":"Gina Torres"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsPart.md b/docs/Models/Requests/GetPlaylistContentsPart.md new file mode 100644 index 0000000..3f5cef4 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsPart.md @@ -0,0 +1,17 @@ +# GetPlaylistContentsPart + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 15 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/parts/15/1705637151/file.mp4 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 141416 | +| `File` | *string* | :heavy_minus_sign: | N/A | /movies/Serenity (2005)/Serenity (2005).mp4 | +| `Size` | *int* | :heavy_minus_sign: | N/A | 40271948 | +| `AudioProfile` | *string* | :heavy_minus_sign: | N/A | lc | +| `Container` | *string* | :heavy_minus_sign: | N/A | mp4 | +| `Has64bitOffsets` | *bool* | :heavy_minus_sign: | N/A | false | +| `OptimizedForStreaming` | *bool* | :heavy_minus_sign: | N/A | false | +| `VideoProfile` | *string* | :heavy_minus_sign: | N/A | high | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsPlaylistsResponseBody.md b/docs/Models/Requests/GetPlaylistContentsPlaylistsResponseBody.md new file mode 100644 index 0000000..9ed8015 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsPlaylistsResponseBody.md @@ -0,0 +1,10 @@ +# GetPlaylistContentsPlaylistsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `Errors` | List<[GetPlaylistContentsErrors](../../Models/Requests/GetPlaylistContentsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsResponse.md b/docs/Models/Requests/GetPlaylistContentsResponse.md index 6e4fb8c..69d223f 100644 --- a/docs/Models/Requests/GetPlaylistContentsResponse.md +++ b/docs/Models/Requests/GetPlaylistContentsResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetPlaylistContentsResponseBody](../../Models/Requests/GetPlaylistContentsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetPlaylistContentsResponseBody](../../Models/Requests/GetPlaylistContentsResponseBody.md) | :heavy_minus_sign: | The playlist contents | +| `FourHundredAndOneApplicationJsonObject` | [GetPlaylistContentsPlaylistsResponseBody](../../Models/Requests/GetPlaylistContentsPlaylistsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsResponseBody.md b/docs/Models/Requests/GetPlaylistContentsResponseBody.md index f8737bb..731ca64 100644 --- a/docs/Models/Requests/GetPlaylistContentsResponseBody.md +++ b/docs/Models/Requests/GetPlaylistContentsResponseBody.md @@ -1,10 +1,10 @@ # GetPlaylistContentsResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +The playlist contents ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `Errors` | List<[GetPlaylistContentsErrors](../../Models/Requests/GetPlaylistContentsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `MediaContainer` | [GetPlaylistContentsMediaContainer](../../Models/Requests/GetPlaylistContentsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsRole.md b/docs/Models/Requests/GetPlaylistContentsRole.md new file mode 100644 index 0000000..b900778 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsRole.md @@ -0,0 +1,8 @@ +# GetPlaylistContentsRole + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Gina Torres | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistContentsWriter.md b/docs/Models/Requests/GetPlaylistContentsWriter.md new file mode 100644 index 0000000..6907a5c --- /dev/null +++ b/docs/Models/Requests/GetPlaylistContentsWriter.md @@ -0,0 +1,8 @@ +# GetPlaylistContentsWriter + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Joss Whedon | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistMediaContainer.md b/docs/Models/Requests/GetPlaylistMediaContainer.md new file mode 100644 index 0000000..b2c9513 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistMediaContainer.md @@ -0,0 +1,9 @@ +# GetPlaylistMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 1 | +| `Metadata` | List<[GetPlaylistMetadata](../../Models/Requests/GetPlaylistMetadata.md)> | :heavy_minus_sign: | N/A | [{"addedAt":1705716493,"composite":"/playlists/95/composite/1705717387","content":"library://x/directory/%2Flibrary%2Fsections%2F1%2Fall%3Ftype%3D1%26push%3D1%26title%3D2%26or%3D1%26title%3DSerenity%26pop%3D1","duration":282000,"guid":"com.plexapp.agents.none://87425529-380f-44b8-a689-9a0537e7ec91","icon":"playlist://image.smart","key":"/playlists/95/items","leafCount":2,"playlistType":"video","ratingKey":"95","smart":true,"summary":"","title":"Smart Movie Playlist","type":"playlist","updatedAt":1705717387}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistMetadata.md b/docs/Models/Requests/GetPlaylistMetadata.md new file mode 100644 index 0000000..a27e24c --- /dev/null +++ b/docs/Models/Requests/GetPlaylistMetadata.md @@ -0,0 +1,22 @@ +# GetPlaylistMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | +| `Content` | *string* | :heavy_minus_sign: | N/A | library://x/directory/%2Flibrary%2Fsections%2F1%2Fall%3Ftype%3D1%26push%3D1%26title%3D2%26or%3D1%26title%3DSerenity%26pop%3D1 | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 95 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /playlists/95/items | +| `Guid` | *string* | :heavy_minus_sign: | N/A | com.plexapp.agents.none://87425529-380f-44b8-a689-9a0537e7ec91 | +| `Type` | *string* | :heavy_minus_sign: | N/A | playlist | +| `Title` | *string* | :heavy_minus_sign: | N/A | Smart Movie Playlist | +| `Summary` | *string* | :heavy_minus_sign: | N/A | | +| `Smart` | *bool* | :heavy_minus_sign: | N/A | true | +| `PlaylistType` | *string* | :heavy_minus_sign: | N/A | video | +| `Composite` | *string* | :heavy_minus_sign: | N/A | /playlists/95/composite/1705717387 | +| `Icon` | *string* | :heavy_minus_sign: | N/A | playlist://image.smart | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 282000 | +| `LeafCount` | *int* | :heavy_minus_sign: | N/A | 2 | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1705716493 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1705717387 | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistPlaylistsResponseBody.md b/docs/Models/Requests/GetPlaylistPlaylistsResponseBody.md new file mode 100644 index 0000000..016ed22 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistPlaylistsResponseBody.md @@ -0,0 +1,10 @@ +# GetPlaylistPlaylistsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | +| `Errors` | List<[GetPlaylistErrors](../../Models/Requests/GetPlaylistErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistResponse.md b/docs/Models/Requests/GetPlaylistResponse.md index 2c000f4..26fafba 100644 --- a/docs/Models/Requests/GetPlaylistResponse.md +++ b/docs/Models/Requests/GetPlaylistResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetPlaylistResponseBody](../../Models/Requests/GetPlaylistResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetPlaylistResponseBody](../../Models/Requests/GetPlaylistResponseBody.md) | :heavy_minus_sign: | The playlist | +| `FourHundredAndOneApplicationJsonObject` | [GetPlaylistPlaylistsResponseBody](../../Models/Requests/GetPlaylistPlaylistsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistResponseBody.md b/docs/Models/Requests/GetPlaylistResponseBody.md index 151b21a..bf970b4 100644 --- a/docs/Models/Requests/GetPlaylistResponseBody.md +++ b/docs/Models/Requests/GetPlaylistResponseBody.md @@ -1,10 +1,10 @@ # GetPlaylistResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +The playlist ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `Errors` | List<[GetPlaylistErrors](../../Models/Requests/GetPlaylistErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | +| `MediaContainer` | [GetPlaylistMediaContainer](../../Models/Requests/GetPlaylistMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistsMediaContainer.md b/docs/Models/Requests/GetPlaylistsMediaContainer.md new file mode 100644 index 0000000..9d327ad --- /dev/null +++ b/docs/Models/Requests/GetPlaylistsMediaContainer.md @@ -0,0 +1,9 @@ +# GetPlaylistsMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 4 | +| `Metadata` | List<[GetPlaylistsMetadata](../../Models/Requests/GetPlaylistsMetadata.md)> | :heavy_minus_sign: | N/A | [{"addedAt":1705716298,"composite":"/playlists/92/composite/1705716440","duration":7328000,"guid":"com.plexapp.agents.none://7ca5aaef-58e8-4828-9e21-c009c97f2903","icon":"playlist://image.smart","key":"/playlists/92/items","lastViewedAt":1705716298,"leafCount":32,"playlistType":"video","ratingKey":"92","smart":false,"summary":"A Great Playlist","title":"Static Playlist","type":"playlist","updatedAt":1705716440,"viewCount":1}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistsMetadata.md b/docs/Models/Requests/GetPlaylistsMetadata.md new file mode 100644 index 0000000..4bb4dc5 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistsMetadata.md @@ -0,0 +1,23 @@ +# GetPlaylistsMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 92 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /playlists/92/items | +| `Guid` | *string* | :heavy_minus_sign: | N/A | com.plexapp.agents.none://7ca5aaef-58e8-4828-9e21-c009c97f2903 | +| `Type` | *string* | :heavy_minus_sign: | N/A | playlist | +| `Title` | *string* | :heavy_minus_sign: | N/A | Static Playlist | +| `Summary` | *string* | :heavy_minus_sign: | N/A | A Great Playlist | +| `Smart` | *bool* | :heavy_minus_sign: | N/A | false | +| `PlaylistType` | *string* | :heavy_minus_sign: | N/A | video | +| `Composite` | *string* | :heavy_minus_sign: | N/A | /playlists/92/composite/1705716440 | +| `Icon` | *string* | :heavy_minus_sign: | N/A | playlist://image.smart | +| `ViewCount` | *int* | :heavy_minus_sign: | N/A | 1 | +| `LastViewedAt` | *int* | :heavy_minus_sign: | N/A | 1705716298 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 7328000 | +| `LeafCount` | *int* | :heavy_minus_sign: | N/A | 32 | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1705716298 | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1705716440 | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistsPlaylistsResponseBody.md b/docs/Models/Requests/GetPlaylistsPlaylistsResponseBody.md new file mode 100644 index 0000000..4d06d86 --- /dev/null +++ b/docs/Models/Requests/GetPlaylistsPlaylistsResponseBody.md @@ -0,0 +1,10 @@ +# GetPlaylistsPlaylistsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | +| `Errors` | List<[GetPlaylistsErrors](../../Models/Requests/GetPlaylistsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistsResponse.md b/docs/Models/Requests/GetPlaylistsResponse.md index 493e4dc..ade41e9 100644 --- a/docs/Models/Requests/GetPlaylistsResponse.md +++ b/docs/Models/Requests/GetPlaylistsResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetPlaylistsResponseBody](../../Models/Requests/GetPlaylistsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetPlaylistsResponseBody](../../Models/Requests/GetPlaylistsResponseBody.md) | :heavy_minus_sign: | returns all playlists | +| `FourHundredAndOneApplicationJsonObject` | [GetPlaylistsPlaylistsResponseBody](../../Models/Requests/GetPlaylistsPlaylistsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetPlaylistsResponseBody.md b/docs/Models/Requests/GetPlaylistsResponseBody.md index fd19ad1..8bf4ecf 100644 --- a/docs/Models/Requests/GetPlaylistsResponseBody.md +++ b/docs/Models/Requests/GetPlaylistsResponseBody.md @@ -1,10 +1,10 @@ # GetPlaylistsResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +returns all playlists ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | -| `Errors` | List<[GetPlaylistsErrors](../../Models/Requests/GetPlaylistsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | +| `MediaContainer` | [GetPlaylistsMediaContainer](../../Models/Requests/GetPlaylistsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetServerIdentityResponse.md b/docs/Models/Requests/GetServerIdentityResponse.md index 850b5b3..1048b38 100644 --- a/docs/Models/Requests/GetServerIdentityResponse.md +++ b/docs/Models/Requests/GetServerIdentityResponse.md @@ -8,5 +8,5 @@ | `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 | -| `TwoHundredApplicationJsonObject` | [GetServerIdentityResponseBody](../../Models/Requests/GetServerIdentityResponseBody.md) | :heavy_minus_sign: | The Transcode Sessions | +| `TwoHundredApplicationJsonObject` | [GetServerIdentityResponseBody](../../Models/Requests/GetServerIdentityResponseBody.md) | :heavy_minus_sign: | The Server Identity information | | `FourHundredAndOneApplicationJsonObject` | [GetServerIdentityServerResponseBody](../../Models/Requests/GetServerIdentityServerResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetServerIdentityResponseBody.md b/docs/Models/Requests/GetServerIdentityResponseBody.md index f595250..6910b0f 100644 --- a/docs/Models/Requests/GetServerIdentityResponseBody.md +++ b/docs/Models/Requests/GetServerIdentityResponseBody.md @@ -1,6 +1,6 @@ # GetServerIdentityResponseBody -The Transcode Sessions +The Server Identity information ## Fields diff --git a/docs/Models/Requests/GetSessionHistoryMediaContainer.md b/docs/Models/Requests/GetSessionHistoryMediaContainer.md new file mode 100644 index 0000000..91f8a6a --- /dev/null +++ b/docs/Models/Requests/GetSessionHistoryMediaContainer.md @@ -0,0 +1,9 @@ +# GetSessionHistoryMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 10855 | +| `Metadata` | List<[GetSessionHistoryMetadata](../../Models/Requests/GetSessionHistoryMetadata.md)> | :heavy_minus_sign: | N/A | [{"accountID":1,"deviceID":5,"grandparentArt":"/library/metadata/32132/art/1703933346","grandparentKey":"/library/metadata/32132","grandparentThumb":"/library/metadata/32132/thumb/1703933346","grandparentTitle":"Taskmaster","historyKey":"/status/sessions/history/1","index":1,"key":"/library/metadata/32171","librarySectionID":"2","originallyAvailableAt":"2022-04-14T00:00:00Z","parentIndex":13,"parentKey":"/library/metadata/32170","parentThumb":"/library/metadata/32170/thumb/1654134301","ratingKey":"32171","thumb":"/library/metadata/32171/thumb/-1","title":"The Noise That Blue Makes","type":"episode","viewedAt":1654139223}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionHistoryMetadata.md b/docs/Models/Requests/GetSessionHistoryMetadata.md new file mode 100644 index 0000000..3fdedeb --- /dev/null +++ b/docs/Models/Requests/GetSessionHistoryMetadata.md @@ -0,0 +1,26 @@ +# GetSessionHistoryMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | +| `HistoryKey` | *string* | :heavy_minus_sign: | N/A | /status/sessions/history/1 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/32171 | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 32171 | +| `LibrarySectionID` | *string* | :heavy_minus_sign: | N/A | 2 | +| `ParentKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/32170 | +| `GrandparentKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/32132 | +| `Title` | *string* | :heavy_minus_sign: | N/A | The Noise That Blue Makes | +| `GrandparentTitle` | *string* | :heavy_minus_sign: | N/A | Taskmaster | +| `Type` | *string* | :heavy_minus_sign: | N/A | episode | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/32171/thumb/-1 | +| `ParentThumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/32170/thumb/1654134301 | +| `GrandparentThumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/32132/thumb/1703933346 | +| `GrandparentArt` | *string* | :heavy_minus_sign: | N/A | /library/metadata/32132/art/1703933346 | +| `Index` | *int* | :heavy_minus_sign: | N/A | 1 | +| `ParentIndex` | *int* | :heavy_minus_sign: | N/A | 13 | +| `OriginallyAvailableAt` | [LocalDate](https://nodatime.org/3.1.x/api/NodaTime.LocalDate.html) | :heavy_minus_sign: | N/A | 2022-04-14 00:00:00 +0000 UTC | +| `ViewedAt` | *int* | :heavy_minus_sign: | N/A | 1654139223 | +| `AccountID` | *int* | :heavy_minus_sign: | N/A | 1 | +| `DeviceID` | *int* | :heavy_minus_sign: | N/A | 5 | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionHistoryResponse.md b/docs/Models/Requests/GetSessionHistoryResponse.md index b2bd344..cb25855 100644 --- a/docs/Models/Requests/GetSessionHistoryResponse.md +++ b/docs/Models/Requests/GetSessionHistoryResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetSessionHistoryResponseBody](../../Models/Requests/GetSessionHistoryResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetSessionHistoryResponseBody](../../Models/Requests/GetSessionHistoryResponseBody.md) | :heavy_minus_sign: | List of Plex Sessions | +| `FourHundredAndOneApplicationJsonObject` | [GetSessionHistorySessionsResponseBody](../../Models/Requests/GetSessionHistorySessionsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionHistoryResponseBody.md b/docs/Models/Requests/GetSessionHistoryResponseBody.md index 1b107e3..99acde5 100644 --- a/docs/Models/Requests/GetSessionHistoryResponseBody.md +++ b/docs/Models/Requests/GetSessionHistoryResponseBody.md @@ -1,10 +1,10 @@ # GetSessionHistoryResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +List of Plex Sessions ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | -| `Errors` | List<[GetSessionHistoryErrors](../../Models/Requests/GetSessionHistoryErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `MediaContainer` | [GetSessionHistoryMediaContainer](../../Models/Requests/GetSessionHistoryMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionHistorySessionsResponseBody.md b/docs/Models/Requests/GetSessionHistorySessionsResponseBody.md new file mode 100644 index 0000000..29b8b42 --- /dev/null +++ b/docs/Models/Requests/GetSessionHistorySessionsResponseBody.md @@ -0,0 +1,10 @@ +# GetSessionHistorySessionsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | +| `Errors` | List<[GetSessionHistoryErrors](../../Models/Requests/GetSessionHistoryErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionsMedia.md b/docs/Models/Requests/GetSessionsMedia.md new file mode 100644 index 0000000..085510e --- /dev/null +++ b/docs/Models/Requests/GetSessionsMedia.md @@ -0,0 +1,15 @@ +# GetSessionsMedia + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `AudioChannels` | *int* | :heavy_minus_sign: | N/A | 2 | +| `AudioCodec` | *string* | :heavy_minus_sign: | N/A | flac | +| `Bitrate` | *int* | :heavy_minus_sign: | N/A | 1014 | +| `Container` | *string* | :heavy_minus_sign: | N/A | flac | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 186240 | +| `Id` | *string* | :heavy_minus_sign: | N/A | 130355 | +| `Selected` | *bool* | :heavy_minus_sign: | N/A | true | +| `Part` | List<[GetSessionsPart](../../Models/Requests/GetSessionsPart.md)> | :heavy_minus_sign: | N/A | [{"Stream":[{"albumGain":"-12.94","albumPeak":"1.000000","albumRange":"4.751014","audioChannelLayout":"stereo","bitDepth":16,"bitrate":1014,"channels":2,"codec":"flac","displayTitle":"FLAC (Stereo)","extendedDisplayTitle":"FLAC (Stereo)","gain":"-12.94","id":"352487","index":0,"location":"direct","loudness":"-5.94","lra":"1.74","peak":"1.000000","samplingRate":44100,"selected":true,"streamType":2}],"container":"flac","decision":"directplay","duration":186240,"file":"/music/Green Day/Saviors (2024)/Green Day - Saviors - 01 - The American Dream Is Killing Me.flac","hasThumbnail":"1","id":"130625","key":"/library/parts/130625/1705543268/file.flac","selected":true,"size":23644000}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionsMediaContainer.md b/docs/Models/Requests/GetSessionsMediaContainer.md new file mode 100644 index 0000000..c84e5ee --- /dev/null +++ b/docs/Models/Requests/GetSessionsMediaContainer.md @@ -0,0 +1,9 @@ +# GetSessionsMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 1 | +| `Metadata` | List<[GetSessionsMetadata](../../Models/Requests/GetSessionsMetadata.md)> | :heavy_minus_sign: | N/A | [{"Media":[{"Part":[{"Stream":[{"albumGain":"-12.94","albumPeak":"1.000000","albumRange":"4.751014","audioChannelLayout":"stereo","bitDepth":16,"bitrate":1014,"channels":2,"codec":"flac","displayTitle":"FLAC (Stereo)","extendedDisplayTitle":"FLAC (Stereo)","gain":"-12.94","id":"352487","index":0,"location":"direct","loudness":"-5.94","lra":"1.74","peak":"1.000000","samplingRate":44100,"selected":true,"streamType":2}],"container":"flac","decision":"directplay","duration":186240,"file":"/music/Green Day/Saviors (2024)/Green Day - Saviors - 01 - The American Dream Is Killing Me.flac","hasThumbnail":"1","id":"130625","key":"/library/parts/130625/1705543268/file.flac","selected":true,"size":23644000}],"audioChannels":2,"audioCodec":"flac","bitrate":1014,"container":"flac","duration":186240,"id":"130355","selected":true}],"Player":{"address":"10.10.10.171","local":true,"machineIdentifier":"3tsdzir85m2onc3qyr255aq1","model":"standalone","platform":"windows","platformVersion":"10.0.22621","product":"Plex for Windows","profile":"Plex Desktop","relayed":false,"remotePublicAddress":"68.248.140.20","secure":true,"state":"playing","title":"DESKTOP-BL80MTD","userID":1,"version":"1.85.0.4071-21128b56"},"Session":{"bandwidth":1050,"id":"93h7e00ncblxncqw9lkfaoxi","location":"lan"},"User":{"id":"1","thumb":"https://plex.tv/users/844780fc6f8a26b5/avatar?c=1705853661","title":"Blindkitty38"},"addedAt":1705543312,"art":"/library/metadata/39904/art/1705310687","duration":186240,"grandparentArt":"/library/metadata/39904/art/1705310687","grandparentGuid":"plex://artist/5d07bbfd403c6402904a6480","grandparentKey":"/library/metadata/39904","grandparentRatingKey":"39904","grandparentThumb":"/library/metadata/39904/thumb/1705310687","grandparentTitle":"Green Day","guid":"plex://track/6535834f71f22f36f71a8e8f","index":1,"key":"/library/metadata/67085","librarySectionID":"3","librarySectionKey":"/library/sections/3","librarySectionTitle":"Music","musicAnalysisVersion":"1","parentGuid":"plex://album/65394d6d472b8ab03ef47f12","parentIndex":1,"parentKey":"/library/metadata/67084","parentRatingKey":"67084","parentStudio":"Reprise Records","parentThumb":"/library/metadata/67084/thumb/1705543314","parentTitle":"Saviors","parentYear":2024,"ratingCount":45885,"ratingKey":"67085","sessionKey":"203","thumb":"/library/metadata/67084/thumb/1705543314","title":"The American Dream Is Killing Me","titleSort":"American Dream Is Killing Me","type":"track","updatedAt":1705543314,"viewOffset":1000}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionsMetadata.md b/docs/Models/Requests/GetSessionsMetadata.md new file mode 100644 index 0000000..bf129ce --- /dev/null +++ b/docs/Models/Requests/GetSessionsMetadata.md @@ -0,0 +1,44 @@ +# GetSessionsMetadata + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `AddedAt` | *int* | :heavy_minus_sign: | N/A | 1705543312 | +| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/39904/art/1705310687 | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 186240 | +| `GrandparentArt` | *string* | :heavy_minus_sign: | N/A | /library/metadata/39904/art/1705310687 | +| `GrandparentGuid` | *string* | :heavy_minus_sign: | N/A | plex://artist/5d07bbfd403c6402904a6480 | +| `GrandparentKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/39904 | +| `GrandparentRatingKey` | *string* | :heavy_minus_sign: | N/A | 39904 | +| `GrandparentThumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/39904/thumb/1705310687 | +| `GrandparentTitle` | *string* | :heavy_minus_sign: | N/A | Green Day | +| `Guid` | *string* | :heavy_minus_sign: | N/A | plex://track/6535834f71f22f36f71a8e8f | +| `Index` | *int* | :heavy_minus_sign: | N/A | 1 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/67085 | +| `LibrarySectionID` | *string* | :heavy_minus_sign: | N/A | 3 | +| `LibrarySectionKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/3 | +| `LibrarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Music | +| `MusicAnalysisVersion` | *string* | :heavy_minus_sign: | N/A | 1 | +| `ParentGuid` | *string* | :heavy_minus_sign: | N/A | plex://album/65394d6d472b8ab03ef47f12 | +| `ParentIndex` | *int* | :heavy_minus_sign: | N/A | 1 | +| `ParentKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/67084 | +| `ParentRatingKey` | *string* | :heavy_minus_sign: | N/A | 67084 | +| `ParentStudio` | *string* | :heavy_minus_sign: | N/A | Reprise Records | +| `ParentThumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/67084/thumb/1705543314 | +| `ParentTitle` | *string* | :heavy_minus_sign: | N/A | Saviors | +| `ParentYear` | *int* | :heavy_minus_sign: | N/A | 2024 | +| `RatingCount` | *int* | :heavy_minus_sign: | N/A | 45885 | +| `RatingKey` | *string* | :heavy_minus_sign: | N/A | 67085 | +| `SessionKey` | *string* | :heavy_minus_sign: | N/A | 203 | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/67084/thumb/1705543314 | +| `Title` | *string* | :heavy_minus_sign: | N/A | The American Dream Is Killing Me | +| `TitleSort` | *string* | :heavy_minus_sign: | N/A | American Dream Is Killing Me | +| `Type` | *string* | :heavy_minus_sign: | N/A | track | +| `UpdatedAt` | *int* | :heavy_minus_sign: | N/A | 1705543314 | +| `ViewOffset` | *int* | :heavy_minus_sign: | N/A | 1000 | +| `Media` | List<[GetSessionsMedia](../../Models/Requests/GetSessionsMedia.md)> | :heavy_minus_sign: | N/A | [{"Part":[{"Stream":[{"albumGain":"-12.94","albumPeak":"1.000000","albumRange":"4.751014","audioChannelLayout":"stereo","bitDepth":16,"bitrate":1014,"channels":2,"codec":"flac","displayTitle":"FLAC (Stereo)","extendedDisplayTitle":"FLAC (Stereo)","gain":"-12.94","id":"352487","index":0,"location":"direct","loudness":"-5.94","lra":"1.74","peak":"1.000000","samplingRate":44100,"selected":true,"streamType":2}],"container":"flac","decision":"directplay","duration":186240,"file":"/music/Green Day/Saviors (2024)/Green Day - Saviors - 01 - The American Dream Is Killing Me.flac","hasThumbnail":"1","id":"130625","key":"/library/parts/130625/1705543268/file.flac","selected":true,"size":23644000}],"audioChannels":2,"audioCodec":"flac","bitrate":1014,"container":"flac","duration":186240,"id":"130355","selected":true}] | +| `User` | [User](../../Models/Requests/User.md) | :heavy_minus_sign: | N/A | | +| `Player` | [Player](../../Models/Requests/Player.md) | :heavy_minus_sign: | N/A | | +| `Session` | [Session](../../Models/Requests/Session.md) | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionsPart.md b/docs/Models/Requests/GetSessionsPart.md new file mode 100644 index 0000000..7f6490e --- /dev/null +++ b/docs/Models/Requests/GetSessionsPart.md @@ -0,0 +1,17 @@ +# GetSessionsPart + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `Container` | *string* | :heavy_minus_sign: | N/A | flac | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 186240 | +| `File` | *string* | :heavy_minus_sign: | N/A | /music/Green Day/Saviors (2024)/Green Day - Saviors - 01 - The American Dream Is Killing Me.flac | +| `HasThumbnail` | *string* | :heavy_minus_sign: | N/A | 1 | +| `Id` | *string* | :heavy_minus_sign: | N/A | 130625 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /library/parts/130625/1705543268/file.flac | +| `Size` | *int* | :heavy_minus_sign: | N/A | 23644000 | +| `Decision` | *string* | :heavy_minus_sign: | N/A | directplay | +| `Selected` | *bool* | :heavy_minus_sign: | N/A | true | +| `Stream` | List<[GetSessionsStream](../../Models/Requests/GetSessionsStream.md)> | :heavy_minus_sign: | N/A | [{"albumGain":"-12.94","albumPeak":"1.000000","albumRange":"4.751014","audioChannelLayout":"stereo","bitDepth":16,"bitrate":1014,"channels":2,"codec":"flac","displayTitle":"FLAC (Stereo)","extendedDisplayTitle":"FLAC (Stereo)","gain":"-12.94","id":"352487","index":0,"location":"direct","loudness":"-5.94","lra":"1.74","peak":"1.000000","samplingRate":44100,"selected":true,"streamType":2}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionsResponse.md b/docs/Models/Requests/GetSessionsResponse.md index a9a99cd..d03054e 100644 --- a/docs/Models/Requests/GetSessionsResponse.md +++ b/docs/Models/Requests/GetSessionsResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetSessionsResponseBody](../../Models/Requests/GetSessionsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetSessionsResponseBody](../../Models/Requests/GetSessionsResponseBody.md) | :heavy_minus_sign: | List of Active Plex Sessions | +| `FourHundredAndOneApplicationJsonObject` | [GetSessionsSessionsResponseBody](../../Models/Requests/GetSessionsSessionsResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionsResponseBody.md b/docs/Models/Requests/GetSessionsResponseBody.md index 0304481..cd0c321 100644 --- a/docs/Models/Requests/GetSessionsResponseBody.md +++ b/docs/Models/Requests/GetSessionsResponseBody.md @@ -1,10 +1,10 @@ # GetSessionsResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +List of Active Plex Sessions ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `Errors` | List<[GetSessionsErrors](../../Models/Requests/GetSessionsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | +| `MediaContainer` | [GetSessionsMediaContainer](../../Models/Requests/GetSessionsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionsSessionsResponseBody.md b/docs/Models/Requests/GetSessionsSessionsResponseBody.md new file mode 100644 index 0000000..aa3ef09 --- /dev/null +++ b/docs/Models/Requests/GetSessionsSessionsResponseBody.md @@ -0,0 +1,10 @@ +# GetSessionsSessionsResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | +| `Errors` | List<[GetSessionsErrors](../../Models/Requests/GetSessionsErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetSessionsStream.md b/docs/Models/Requests/GetSessionsStream.md new file mode 100644 index 0000000..dbe6e89 --- /dev/null +++ b/docs/Models/Requests/GetSessionsStream.md @@ -0,0 +1,27 @@ +# GetSessionsStream + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------- | ---------------------- | ---------------------- | ---------------------- | ---------------------- | +| `AlbumGain` | *string* | :heavy_minus_sign: | N/A | -12.94 | +| `AlbumPeak` | *string* | :heavy_minus_sign: | N/A | 1.000000 | +| `AlbumRange` | *string* | :heavy_minus_sign: | N/A | 4.751014 | +| `AudioChannelLayout` | *string* | :heavy_minus_sign: | N/A | stereo | +| `BitDepth` | *int* | :heavy_minus_sign: | N/A | 16 | +| `Bitrate` | *int* | :heavy_minus_sign: | N/A | 1014 | +| `Channels` | *int* | :heavy_minus_sign: | N/A | 2 | +| `Codec` | *string* | :heavy_minus_sign: | N/A | flac | +| `DisplayTitle` | *string* | :heavy_minus_sign: | N/A | FLAC (Stereo) | +| `ExtendedDisplayTitle` | *string* | :heavy_minus_sign: | N/A | FLAC (Stereo) | +| `Gain` | *string* | :heavy_minus_sign: | N/A | -12.94 | +| `Id` | *string* | :heavy_minus_sign: | N/A | 352487 | +| `Index` | *int* | :heavy_minus_sign: | N/A | 0 | +| `Loudness` | *string* | :heavy_minus_sign: | N/A | -5.94 | +| `Lra` | *string* | :heavy_minus_sign: | N/A | 1.74 | +| `Peak` | *string* | :heavy_minus_sign: | N/A | 1.000000 | +| `SamplingRate` | *int* | :heavy_minus_sign: | N/A | 44100 | +| `Selected` | *bool* | :heavy_minus_sign: | N/A | true | +| `StreamType` | *int* | :heavy_minus_sign: | N/A | 2 | +| `Location` | *string* | :heavy_minus_sign: | N/A | direct | \ No newline at end of file diff --git a/docs/Models/Requests/GetTranscodeSessionsMediaContainer.md b/docs/Models/Requests/GetTranscodeSessionsMediaContainer.md index 6487171..c2b58bc 100644 --- a/docs/Models/Requests/GetTranscodeSessionsMediaContainer.md +++ b/docs/Models/Requests/GetTranscodeSessionsMediaContainer.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `Size` | *double* | :heavy_minus_sign: | N/A | 1 | -| `TranscodeSession` | List<[TranscodeSession](../../Models/Requests/TranscodeSession.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 1 | +| `TranscodeSession` | List<[TranscodeSession](../../Models/Requests/TranscodeSession.md)> | :heavy_minus_sign: | N/A | [{"audioChannels":1,"audioCodec":"opus","audioDecision":"transcode","complete":false,"container":"mkv","context":"streaming","duration":1445695,"error":false,"key":"vv3i2q2lax92qlzul1hbd4bx","maxOffsetAvailable":29.53,"minOffsetAvailable":3.003000020980835,"progress":1.7999999523162842,"protocol":"http","remaining":53,"size":-22,"sourceAudioCodec":"aac","sourceVideoCodec":"h264","speed":25.100000381469727,"subtitleDecision":"burn","throttled":false,"timeStamp":1705895805.4919229,"transcodeHwRequested":true,"videoCodec":"h264","videoDecision":"transcode"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetUpdateStatusMediaContainer.md b/docs/Models/Requests/GetUpdateStatusMediaContainer.md new file mode 100644 index 0000000..4bea076 --- /dev/null +++ b/docs/Models/Requests/GetUpdateStatusMediaContainer.md @@ -0,0 +1,13 @@ +# GetUpdateStatusMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Size` | *int* | :heavy_minus_sign: | N/A | 1 | +| `CanInstall` | *bool* | :heavy_minus_sign: | N/A | false | +| `CheckedAt` | *int* | :heavy_minus_sign: | N/A | 1705801232 | +| `DownloadURL` | *string* | :heavy_minus_sign: | N/A | https://plex.tv/downloads/latest/5?channel=8&build=linux-x86_64&distro=redhat&X-Plex-Token=xxxxxxxxxxxxxxxxxxxx | +| `Status` | *int* | :heavy_minus_sign: | N/A | 0 | +| `Release` | List<[Release](../../Models/Requests/Release.md)> | :heavy_minus_sign: | N/A | [{"added":"(PLEASE NOTE) This version makes changes to the database which will make it compatible only with server versions 1.31.2 or higher (released March 14). You will not be able to use your database on Plex Media Server versions lower than this after this update. Please also be patient when updating to this version if you have a very large database and allow the upgrade process to finish.\n(Collections) Items added to a collection from the item context menu will now lock the collection field on the items (#12793)\n(Music) Store track genres and add filtering options (#14653)\n(Music) Support ID3v2.4 null-separated tags for genres and release type (#14653)\n(View History) No longer create a view history entry for items marked as played (#10888)\n(Web) Updated to 4.118.0","downloadURL":"https://plex.tv/downloads/latest/5?channel=8\u0026build=linux-x86_64\u0026distro=redhat\u0026X-Plex-Token=xxxxxxxxxxxxxxxxxxxx","fixed":"(Agents) Changing a 'Other Videos' type library to the modern movie agent would fail (#14483)\n(Agents) It is possible that agents are not initialised during startup on rare occasions (#14654)\n(Agents) Remove the legacy OpenSubtitles agent which is no longer supported upstream (#14667)\n(Collection) Server could become unresponsive when collection membership changes (#14612)\n(DVR) Previously watched recordings could be deleted without being watched again (#13779)\n(Libraries) When performing fix match on items from certain music libraries the language would default to Arabic (#14501)\n(Library) The Content Rating not equal to None filter does not work (#14620)\n(Search) Album search results could contain all the album's tracks too (#14486)\n(Subtitles) In some circumstances, sidecar subtitles can show up for media when they're no longer available (#14674)\n(Transcoder) HW encoding would fail on devices with no rate control (#14222)\n(Transcoder) Software transcoding on Ubuntu could cause unexpected behavior (#14605)","key":"https://plex.tv/updater/releases/5136","state":"notify","version":"1.40.0.7775-456fbaf97"}] | \ No newline at end of file diff --git a/docs/Models/Requests/GetUpdateStatusResponse.md b/docs/Models/Requests/GetUpdateStatusResponse.md index c41c0fb..db9fbda 100644 --- a/docs/Models/Requests/GetUpdateStatusResponse.md +++ b/docs/Models/Requests/GetUpdateStatusResponse.md @@ -8,4 +8,5 @@ | `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 | -| `Object` | [GetUpdateStatusResponseBody](../../Models/Requests/GetUpdateStatusResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file +| `TwoHundredApplicationJsonObject` | [GetUpdateStatusResponseBody](../../Models/Requests/GetUpdateStatusResponseBody.md) | :heavy_minus_sign: | The Server Updates | +| `FourHundredAndOneApplicationJsonObject` | [GetUpdateStatusUpdaterResponseBody](../../Models/Requests/GetUpdateStatusUpdaterResponseBody.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/Models/Requests/GetUpdateStatusResponseBody.md b/docs/Models/Requests/GetUpdateStatusResponseBody.md index fb55741..7236428 100644 --- a/docs/Models/Requests/GetUpdateStatusResponseBody.md +++ b/docs/Models/Requests/GetUpdateStatusResponseBody.md @@ -1,10 +1,10 @@ # GetUpdateStatusResponseBody -Unauthorized - Returned if the X-Plex-Token is missing from the header or query. +The Server Updates ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `Errors` | List<[GetUpdateStatusErrors](../../Models/Requests/GetUpdateStatusErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | +| `MediaContainer` | [GetUpdateStatusMediaContainer](../../Models/Requests/GetUpdateStatusMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/GetUpdateStatusUpdaterResponseBody.md b/docs/Models/Requests/GetUpdateStatusUpdaterResponseBody.md new file mode 100644 index 0000000..90c7706 --- /dev/null +++ b/docs/Models/Requests/GetUpdateStatusUpdaterResponseBody.md @@ -0,0 +1,10 @@ +# GetUpdateStatusUpdaterResponseBody + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `Errors` | List<[GetUpdateStatusErrors](../../Models/Requests/GetUpdateStatusErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/Guids.md b/docs/Models/Requests/Guids.md index 596bd01..8a7b659 100644 --- a/docs/Models/Requests/Guids.md +++ b/docs/Models/Requests/Guids.md @@ -5,4 +5,4 @@ | Field | Type | Required | Description | Example | | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | -| `Id` | *string* | :heavy_minus_sign: | N/A | imdb://tt13303712 | \ No newline at end of file +| `Id` | *string* | :heavy_minus_sign: | N/A | tvdb://2337 | \ No newline at end of file diff --git a/docs/Models/Requests/Hub.md b/docs/Models/Requests/Hub.md new file mode 100644 index 0000000..f6470ab --- /dev/null +++ b/docs/Models/Requests/Hub.md @@ -0,0 +1,18 @@ +# Hub + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `HubKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/50768,65523,58188,57341,57302,57070 | +| `Key` | *string* | :heavy_minus_sign: | N/A | /playlists/all?type=15&sort=lastViewedAt:desc&playlistType=video,audio | +| `Title` | *string* | :heavy_minus_sign: | N/A | Recent Playlists | +| `Type` | *string* | :heavy_minus_sign: | N/A | playlist | +| `HubIdentifier` | *string* | :heavy_minus_sign: | N/A | home.playlists | +| `Context` | *string* | :heavy_minus_sign: | N/A | hub.home.playlists | +| `Size` | *int* | :heavy_minus_sign: | N/A | 6 | +| `More` | *bool* | :heavy_minus_sign: | N/A | true | +| `Style` | *string* | :heavy_minus_sign: | N/A | shelf | +| `Promoted` | *bool* | :heavy_minus_sign: | N/A | true | +| `Metadata` | List<[GetGlobalHubsMetadata](../../Models/Requests/GetGlobalHubsMetadata.md)> | :heavy_minus_sign: | N/A | [{"addedAt":1668779618,"composite":"/playlists/57070/composite/1668787730","duration":16873000,"guid":"com.plexapp.agents.none://9fee6c5b-3143-4923-813e-57bd0190056c","icon":"playlist://image.smart","key":"/playlists/57070/items","lastViewedAt":1668787732,"leafCount":3,"playlistType":"video","ratingKey":"57070","smart":false,"summary":"","title":"November Movie Day","titleSort":"Tracks","type":"playlist","updatedAt":1668787730,"viewCount":2}] | \ No newline at end of file diff --git a/docs/Models/Requests/Level.md b/docs/Models/Requests/Level.md index 7be3adb..29b6537 100644 --- a/docs/Models/Requests/Level.md +++ b/docs/Models/Requests/Level.md @@ -3,7 +3,7 @@ An integer log level to write to the PMS log with. 0: Error 1: Warning -2: Info +2: Info 3: Debug 4: Verbose diff --git a/docs/Models/Requests/LogLineRequest.md b/docs/Models/Requests/LogLineRequest.md index c290546..d7bd1e5 100644 --- a/docs/Models/Requests/LogLineRequest.md +++ b/docs/Models/Requests/LogLineRequest.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Level` | [Level](../../Models/Requests/Level.md) | :heavy_check_mark: | An integer log level to write to the PMS log with.
0: Error
1: Warning
2: Info
3: Debug
4: Verbose
| | -| `Message` | *string* | :heavy_check_mark: | The text of the message to write to the log. | | -| `Source` | *string* | :heavy_check_mark: | a string indicating the source of the message. | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | +| `Level` | [Level](../../Models/Requests/Level.md) | :heavy_check_mark: | An integer log level to write to the PMS log with.
0: Error
1: Warning
2: Info
3: Debug
4: Verbose
| | +| `Message` | *string* | :heavy_check_mark: | The text of the message to write to the log. | Test log message | +| `Source` | *string* | :heavy_check_mark: | a string indicating the source of the message. | Postman | \ No newline at end of file diff --git a/docs/Models/Requests/Player.md b/docs/Models/Requests/Player.md new file mode 100644 index 0000000..b3f32f7 --- /dev/null +++ b/docs/Models/Requests/Player.md @@ -0,0 +1,22 @@ +# Player + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `Address` | *string* | :heavy_minus_sign: | N/A | 10.10.10.171 | +| `MachineIdentifier` | *string* | :heavy_minus_sign: | N/A | 3tsdzir85m2onc3qyr255aq1 | +| `Model` | *string* | :heavy_minus_sign: | N/A | standalone | +| `Platform` | *string* | :heavy_minus_sign: | N/A | windows | +| `PlatformVersion` | *string* | :heavy_minus_sign: | N/A | 10.0.22621 | +| `Product` | *string* | :heavy_minus_sign: | N/A | Plex for Windows | +| `Profile` | *string* | :heavy_minus_sign: | N/A | Plex Desktop | +| `RemotePublicAddress` | *string* | :heavy_minus_sign: | N/A | 68.248.140.20 | +| `State` | *string* | :heavy_minus_sign: | N/A | playing | +| `Title` | *string* | :heavy_minus_sign: | N/A | DESKTOP-BL80MTD | +| `Version` | *string* | :heavy_minus_sign: | N/A | 1.85.0.4071-21128b56 | +| `Local` | *bool* | :heavy_minus_sign: | N/A | true | +| `Relayed` | *bool* | :heavy_minus_sign: | N/A | false | +| `Secure` | *bool* | :heavy_minus_sign: | N/A | true | +| `UserID` | *int* | :heavy_minus_sign: | N/A | 1 | \ No newline at end of file diff --git a/docs/Models/Requests/Producer.md b/docs/Models/Requests/Producer.md new file mode 100644 index 0000000..1ea2c9e --- /dev/null +++ b/docs/Models/Requests/Producer.md @@ -0,0 +1,12 @@ +# Producer + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `Id` | *int* | :heavy_minus_sign: | N/A | 221 | +| `Filter` | *string* | :heavy_minus_sign: | N/A | producer=221 | +| `Tag` | *string* | :heavy_minus_sign: | N/A | Barry Mendel | +| `TagKey` | *string* | :heavy_minus_sign: | N/A | 5d776826961905001eb90e2b | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | https://metadata-static.plex.tv/8/people/87877371326a964634d18556d94547e1.jpg | \ No newline at end of file diff --git a/docs/Models/Requests/Ratings.md b/docs/Models/Requests/Ratings.md new file mode 100644 index 0000000..fd9a71f --- /dev/null +++ b/docs/Models/Requests/Ratings.md @@ -0,0 +1,10 @@ +# Ratings + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------- | ------------------------- | ------------------------- | ------------------------- | ------------------------- | +| `Image` | *string* | :heavy_minus_sign: | N/A | themoviedb://image.rating | +| `Value` | *double* | :heavy_minus_sign: | N/A | 7.4 | +| `Type` | *string* | :heavy_minus_sign: | N/A | audience | \ No newline at end of file diff --git a/docs/Models/Requests/Release.md b/docs/Models/Requests/Release.md new file mode 100644 index 0000000..7ccd0cf --- /dev/null +++ b/docs/Models/Requests/Release.md @@ -0,0 +1,13 @@ +# Release + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Key` | *string* | :heavy_minus_sign: | N/A | https://plex.tv/updater/releases/5136 | +| `Version` | *string* | :heavy_minus_sign: | N/A | 1.40.0.7775-456fbaf97 | +| `Added` | *string* | :heavy_minus_sign: | N/A | (PLEASE NOTE) This version makes changes to the database which will make it compatible only with server versions 1.31.2 or higher (released March 14). You will not be able to use your database on Plex Media Server versions lower than this after this update. Please also be patient when updating to this version if you have a very large database and allow the upgrade process to finish.
(Collections) Items added to a collection from the item context menu will now lock the collection field on the items (#12793)
(Music) Store track genres and add filtering options (#14653)
(Music) Support ID3v2.4 null-separated tags for genres and release type (#14653)
(View History) No longer create a view history entry for items marked as played (#10888)
(Web) Updated to 4.118.0 | +| `Fixed` | *string* | :heavy_minus_sign: | N/A | (Agents) Changing a 'Other Videos' type library to the modern movie agent would fail (#14483)
(Agents) It is possible that agents are not initialised during startup on rare occasions (#14654)
(Agents) Remove the legacy OpenSubtitles agent which is no longer supported upstream (#14667)
(Collection) Server could become unresponsive when collection membership changes (#14612)
(DVR) Previously watched recordings could be deleted without being watched again (#13779)
(Libraries) When performing fix match on items from certain music libraries the language would default to Arabic (#14501)
(Library) The Content Rating not equal to None filter does not work (#14620)
(Search) Album search results could contain all the album's tracks too (#14486)
(Subtitles) In some circumstances, sidecar subtitles can show up for media when they're no longer available (#14674)
(Transcoder) HW encoding would fail on devices with no rate control (#14222)
(Transcoder) Software transcoding on Ubuntu could cause unexpected behavior (#14605) | +| `DownloadURL` | *string* | :heavy_minus_sign: | N/A | https://plex.tv/downloads/latest/5?channel=8&build=linux-x86_64&distro=redhat&X-Plex-Token=xxxxxxxxxxxxxxxxxxxx | +| `State` | *string* | :heavy_minus_sign: | N/A | notify | \ No newline at end of file diff --git a/docs/Models/Requests/ResponseBody.md b/docs/Models/Requests/ResponseBody.md deleted file mode 100644 index 304885d..0000000 --- a/docs/Models/Requests/ResponseBody.md +++ /dev/null @@ -1,8 +0,0 @@ -# ResponseBody - - -## Fields - -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -| `MediaContainer` | [GetAvailableClientsMediaContainer](../../Models/Requests/GetAvailableClientsMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Requests/Session.md b/docs/Models/Requests/Session.md new file mode 100644 index 0000000..ce1ac4a --- /dev/null +++ b/docs/Models/Requests/Session.md @@ -0,0 +1,10 @@ +# Session + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `Id` | *string* | :heavy_minus_sign: | N/A | 93h7e00ncblxncqw9lkfaoxi | +| `Bandwidth` | *int* | :heavy_minus_sign: | N/A | 1050 | +| `Location` | *string* | :heavy_minus_sign: | N/A | lan | \ No newline at end of file diff --git a/docs/Models/Requests/Stream.md b/docs/Models/Requests/Stream.md index 9a5efb8..0865fec 100644 --- a/docs/Models/Requests/Stream.md +++ b/docs/Models/Requests/Stream.md @@ -5,26 +5,35 @@ | Field | Type | Required | Description | Example | | ---------------------- | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `Id` | *double* | :heavy_minus_sign: | N/A | 211234 | -| `StreamType` | *double* | :heavy_minus_sign: | N/A | 1 | -| `Default` | *bool* | :heavy_minus_sign: | N/A | | -| `Codec` | *string* | :heavy_minus_sign: | N/A | hevc | -| `Index` | *double* | :heavy_minus_sign: | N/A | 0 | -| `Bitrate` | *double* | :heavy_minus_sign: | N/A | 918 | +| `Id` | *int* | :heavy_minus_sign: | N/A | 29 | +| `StreamType` | *int* | :heavy_minus_sign: | N/A | 2 | +| `Default` | *bool* | :heavy_minus_sign: | N/A | true | +| `Codec` | *string* | :heavy_minus_sign: | N/A | aac | +| `Index` | *int* | :heavy_minus_sign: | N/A | 0 | +| `Bitrate` | *int* | :heavy_minus_sign: | N/A | 128 | +| `BitDepth` | *int* | :heavy_minus_sign: | N/A | 8 | +| `ChromaLocation` | *string* | :heavy_minus_sign: | N/A | left | +| `ChromaSubsampling` | *string* | :heavy_minus_sign: | N/A | 14520 | +| `CodedHeight` | *int* | :heavy_minus_sign: | N/A | 816 | +| `CodedWidth` | *int* | :heavy_minus_sign: | N/A | 1920 | +| `ColorPrimaries` | *string* | :heavy_minus_sign: | N/A | bt709 | +| `ColorRange` | *string* | :heavy_minus_sign: | N/A | tv | +| `ColorSpace` | *string* | :heavy_minus_sign: | N/A | bt709 | +| `ColorTrc` | *string* | :heavy_minus_sign: | N/A | bt709 | +| `FrameRate` | *int* | :heavy_minus_sign: | N/A | 24 | +| `HasScalingMatrix` | *bool* | :heavy_minus_sign: | N/A | false | +| `Height` | *int* | :heavy_minus_sign: | N/A | 814 | +| `Level` | *int* | :heavy_minus_sign: | N/A | 40 | +| `Profile` | *string* | :heavy_minus_sign: | N/A | lc | +| `RefFrames` | *int* | :heavy_minus_sign: | N/A | 4 | +| `ScanType` | *string* | :heavy_minus_sign: | N/A | progressive | +| `StreamIdentifier` | *string* | :heavy_minus_sign: | N/A | 1 | +| `Width` | *int* | :heavy_minus_sign: | N/A | 1920 | +| `DisplayTitle` | *string* | :heavy_minus_sign: | N/A | English (AAC Stereo) | +| `ExtendedDisplayTitle` | *string* | :heavy_minus_sign: | N/A | English (AAC Stereo) | +| `Selected` | *bool* | :heavy_minus_sign: | N/A | true | +| `Channels` | *int* | :heavy_minus_sign: | N/A | 2 | | `Language` | *string* | :heavy_minus_sign: | N/A | English | | `LanguageTag` | *string* | :heavy_minus_sign: | N/A | en | | `LanguageCode` | *string* | :heavy_minus_sign: | N/A | eng | -| `BitDepth` | *double* | :heavy_minus_sign: | N/A | 8 | -| `ChromaLocation` | *string* | :heavy_minus_sign: | N/A | left | -| `ChromaSubsampling` | *string* | :heavy_minus_sign: | N/A | 4:2:0 | -| `CodedHeight` | *double* | :heavy_minus_sign: | N/A | 1080 | -| `CodedWidth` | *double* | :heavy_minus_sign: | N/A | 1920 | -| `ColorRange` | *string* | :heavy_minus_sign: | N/A | tv | -| `FrameRate` | *double* | :heavy_minus_sign: | N/A | 25 | -| `Height` | *double* | :heavy_minus_sign: | N/A | 1080 | -| `Level` | *double* | :heavy_minus_sign: | N/A | 120 | -| `Profile` | *string* | :heavy_minus_sign: | N/A | main | -| `RefFrames` | *double* | :heavy_minus_sign: | N/A | 1 | -| `Width` | *double* | :heavy_minus_sign: | N/A | 1920 | -| `DisplayTitle` | *string* | :heavy_minus_sign: | N/A | 1080p (HEVC Main) | -| `ExtendedDisplayTitle` | *string* | :heavy_minus_sign: | N/A | 1080p (HEVC Main) | \ No newline at end of file +| `SamplingRate` | *int* | :heavy_minus_sign: | N/A | 44100 | \ No newline at end of file diff --git a/docs/Models/Requests/Tag.md b/docs/Models/Requests/Tag.md new file mode 100644 index 0000000..e5f42b9 --- /dev/null +++ b/docs/Models/Requests/Tag.md @@ -0,0 +1,29 @@ +# Tag + +A key representing a specific tag within the section. + + +## Values + +| Name | Value | +| ------------------ | ------------------ | +| `All` | all | +| `Unwatched` | unwatched | +| `Newest` | newest | +| `RecentlyAdded` | recentlyAdded | +| `RecentlyViewed` | recentlyViewed | +| `OnDeck` | onDeck | +| `Collection` | collection | +| `Edition` | edition | +| `Genre` | genre | +| `Year` | year | +| `Decade` | decade | +| `Director` | director | +| `Actor` | actor | +| `Country` | country | +| `ContentRating` | contentRating | +| `Rating` | rating | +| `Resolution` | resolution | +| `FirstCharacter` | firstCharacter | +| `Folder` | folder | +| `SearchTypeEqual1` | search?type=1 | \ No newline at end of file diff --git a/docs/Models/Requests/TranscodeSession.md b/docs/Models/Requests/TranscodeSession.md index c2c2017..994bd49 100644 --- a/docs/Models/Requests/TranscodeSession.md +++ b/docs/Models/Requests/TranscodeSession.md @@ -5,25 +5,27 @@ | Field | Type | Required | Description | Example | | ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | -| `Key` | *string* | :heavy_minus_sign: | N/A | zz7llzqlx8w9vnrsbnwhbmep | -| `Throttled` | *bool* | :heavy_minus_sign: | N/A | | -| `Complete` | *bool* | :heavy_minus_sign: | N/A | | -| `Progress` | *double* | :heavy_minus_sign: | N/A | 0.4000000059604645 | -| `Size` | *double* | :heavy_minus_sign: | N/A | -22 | -| `Speed` | *double* | :heavy_minus_sign: | N/A | 22.399999618530273 | -| `Error` | *bool* | :heavy_minus_sign: | N/A | | -| `Duration` | *double* | :heavy_minus_sign: | N/A | 2561768 | +| `Key` | *string* | :heavy_minus_sign: | N/A | vv3i2q2lax92qlzul1hbd4bx | +| `Throttled` | *bool* | :heavy_minus_sign: | N/A | false | +| `Complete` | *bool* | :heavy_minus_sign: | N/A | false | +| `Progress` | *double* | :heavy_minus_sign: | N/A | 1.7999999523162842 | +| `Size` | *int* | :heavy_minus_sign: | N/A | -22 | +| `Speed` | *double* | :heavy_minus_sign: | N/A | 25.100000381469727 | +| `Error` | *bool* | :heavy_minus_sign: | N/A | false | +| `Duration` | *int* | :heavy_minus_sign: | N/A | 1445695 | +| `Remaining` | *int* | :heavy_minus_sign: | N/A | 53 | | `Context` | *string* | :heavy_minus_sign: | N/A | streaming | | `SourceVideoCodec` | *string* | :heavy_minus_sign: | N/A | h264 | -| `SourceAudioCodec` | *string* | :heavy_minus_sign: | N/A | ac3 | +| `SourceAudioCodec` | *string* | :heavy_minus_sign: | N/A | aac | | `VideoDecision` | *string* | :heavy_minus_sign: | N/A | transcode | | `AudioDecision` | *string* | :heavy_minus_sign: | N/A | transcode | +| `SubtitleDecision` | *string* | :heavy_minus_sign: | N/A | burn | | `Protocol` | *string* | :heavy_minus_sign: | N/A | http | | `Container` | *string* | :heavy_minus_sign: | N/A | mkv | | `VideoCodec` | *string* | :heavy_minus_sign: | N/A | h264 | | `AudioCodec` | *string* | :heavy_minus_sign: | N/A | opus | -| `AudioChannels` | *double* | :heavy_minus_sign: | N/A | 2 | -| `TranscodeHwRequested` | *bool* | :heavy_minus_sign: | N/A | | -| `TimeStamp` | *double* | :heavy_minus_sign: | N/A | 1.6818695357764285e+09 | -| `MaxOffsetAvailable` | *double* | :heavy_minus_sign: | N/A | 861.778 | -| `MinOffsetAvailable` | *double* | :heavy_minus_sign: | N/A | 0 | \ No newline at end of file +| `AudioChannels` | *int* | :heavy_minus_sign: | N/A | 1 | +| `TranscodeHwRequested` | *bool* | :heavy_minus_sign: | N/A | true | +| `TimeStamp` | *double* | :heavy_minus_sign: | N/A | 1.7058958054919229e+09 | +| `MaxOffsetAvailable` | *double* | :heavy_minus_sign: | N/A | 29.53 | +| `MinOffsetAvailable` | *double* | :heavy_minus_sign: | N/A | 3.003000020980835 | \ No newline at end of file diff --git a/docs/Models/Requests/UpdatePlaylistRequest.md b/docs/Models/Requests/UpdatePlaylistRequest.md index c2cb24c..9fb8b40 100644 --- a/docs/Models/Requests/UpdatePlaylistRequest.md +++ b/docs/Models/Requests/UpdatePlaylistRequest.md @@ -3,6 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `PlaylistID` | *double* | :heavy_check_mark: | the ID of the playlist | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | +| `PlaylistID` | *double* | :heavy_check_mark: | the ID of the playlist | +| `Title` | *string* | :heavy_minus_sign: | name of the playlist | +| `Summary` | *string* | :heavy_minus_sign: | summary description of the playlist | \ No newline at end of file diff --git a/docs/Models/Requests/UploadPlaylistRequest.md b/docs/Models/Requests/UploadPlaylistRequest.md index faf7271..2bcb5c4 100644 --- a/docs/Models/Requests/UploadPlaylistRequest.md +++ b/docs/Models/Requests/UploadPlaylistRequest.md @@ -6,4 +6,4 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `Path` | *string* | :heavy_check_mark: | absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server.
If the `path` argument is a directory, that path will be scanned for playlist files to be processed.
Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it.
The GUID of each playlist is based on the filename.
If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it.
The GUID of each playlist is based on the filename.
| /home/barkley/playlist.m3u | -| `Force` | [Force](../../Models/Requests/Force.md) | :heavy_check_mark: | force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist.
The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.
| | \ No newline at end of file +| `Force` | [Force](../../Models/Requests/Force.md) | :heavy_check_mark: | Force overwriting of duplicate playlists.
By default, a playlist file uploaded with the same path will overwrite the existing playlist.
The `force` argument is used to disable overwriting.
If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.
| | \ No newline at end of file diff --git a/docs/Models/Requests/User.md b/docs/Models/Requests/User.md new file mode 100644 index 0000000..98fd8e1 --- /dev/null +++ b/docs/Models/Requests/User.md @@ -0,0 +1,10 @@ +# User + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | +| `Id` | *string* | :heavy_minus_sign: | N/A | 1 | +| `Thumb` | *string* | :heavy_minus_sign: | N/A | https://plex.tv/users/844780fc6f8a26b5/avatar?c=1705853661 | +| `Title` | *string* | :heavy_minus_sign: | N/A | Blindkitty38 | \ No newline at end of file diff --git a/docs/sdks/library/README.md b/docs/sdks/library/README.md index bed210d..03a5ced 100644 --- a/docs/sdks/library/README.md +++ b/docs/sdks/library/README.md @@ -15,8 +15,6 @@ API Calls interacting with Plex Media Server Libraries * [DeleteLibrary](#deletelibrary) - Delete Library Section * [GetLibraryItems](#getlibraryitems) - Get Library Items * [RefreshLibrary](#refreshlibrary) - Refresh Library -* [GetLatestLibraryItems](#getlatestlibraryitems) - Get Latest Library Items -* [GetCommonLibraryItems](#getcommonlibraryitems) - Get Common Library Items * [GetMetadata](#getmetadata) - Get Items Metadata * [GetMetadataChildren](#getmetadatachildren) - Get Items Children * [GetOnDeck](#getondeck) - Get On Deck @@ -116,25 +114,45 @@ var res = await sdk.Library.GetLibrariesAsync(); ## GetLibrary -Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: +## Library Details Endpoint -- A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - - Primary: (e.g. all, On Deck) These are still used in some clients to provide "shortcuts" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - - Secondary: These are marked with `secondary="1"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there's a completely obsolete entry marked `search="1"` which used to be used to allow clients to build search dialogs on the fly. -- A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won't render any filtering controls. The `Type` object contains: - - `key`: This provides the root endpoint returning the actual media list for the type. - - `type`: This is the metadata type for the type (if a standard Plex type). - - `title`: The title for for the content of this type (e.g. "Movies"). -- Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a "Genre" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - - `title`: The title for the filter. -- Each `Sort` object contains a description of the sort field. - - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - - `title`: The title of the field. +This endpoint provides comprehensive details about the library, focusing on organizational aspects rather than the content itself. + +The details include: + +### Directories +Organized into three categories: + +- **Primary Directories**: + - Used in some clients for quick access to media subsets (e.g., "All", "On Deck"). + - Most can be replicated via media queries. + - Customizable by users. + +- **Secondary Directories**: + - Marked with `secondary="1"`. + - Used in older clients for structured navigation. + +- **Special Directories**: + - Includes a "By Folder" entry for filesystem-based browsing. + - Contains an obsolete `search="1"` entry for on-the-fly search dialog creation. + +### Types +Each type in the library comes with a set of filters and sorts, aiding in building dynamic media controls: + +- **Type Object Attributes**: + - `key`: Endpoint for the media list of this type. + - `type`: Metadata type (if standard Plex type). + - `title`: Title for this content type (e.g., "Movies"). + +- **Filter Objects**: + - Subset of the media query language. + - Attributes include `filter` (name), `filterType` (data type), `key` (endpoint for value range), and `title`. + +- **Sort Objects**: + - Description of sort fields. + - Attributes include `defaultDirection` (asc/desc), `descKey` and `key` (sort parameters), and `title`. + +> **Note**: Filters and sorts are optional; without them, no filtering controls are rendered. ### Example Usage @@ -202,7 +220,27 @@ var res = await sdk.Library.DeleteLibraryAsync(SectionId: 1000D); ## GetLibraryItems -This endpoint will return a list of library items filtered by the filter and type provided +Fetches details from a specific section of the library identified by a section key and a tag. The tag parameter accepts the following values: +- `all`: All items in the section. +- `unwatched`: Items that have not been played. +- `newest`: Items that are recently released. +- `recentlyAdded`: Items that are recently added to the library. +- `recentlyViewed`: Items that were recently viewed. +- `onDeck`: Items to continue watching. +- `collection`: Items categorized by collection. +- `edition`: Items categorized by edition. +- `genre`: Items categorized by genre. +- `year`: Items categorized by year of release. +- `decade`: Items categorized by decade. +- `director`: Items categorized by director. +- `actor`: Items categorized by starring actor. +- `country`: Items categorized by country of origin. +- `contentRating`: Items categorized by content rating. +- `rating`: Items categorized by rating. +- `resolution`: Items categorized by resolution. +- `firstCharacter`: Items categorized by the first letter. +- `folder`: Items categorized by folder. +- `search?type=1`: Search functionality within the section. ### Example Usage @@ -217,18 +255,17 @@ var sdk = new PlexAPISDK( AccessToken = "", }); -var res = await sdk.Library.GetLibraryItemsAsync(SectionId: 4510.92D, Type: 760.66D, Filter: "string"); +var res = await sdk.Library.GetLibraryItemsAsync(SectionId: 451092, Tag: Tag.Unwatched); // handle response ``` ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------ | ------------------------------ | ------------------------------ | ------------------------------ | -| `SectionId` | *double* | :heavy_check_mark: | the Id of the library to query | -| `Type` | *double* | :heavy_minus_sign: | item type | -| `Filter` | *string* | :heavy_minus_sign: | the filter parameter | +| Parameter | Type | Required | Description | +| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | +| `SectionId` | *long* | :heavy_check_mark: | the Id of the library to query | +| `Tag` | [Tag](../../Models/Requests/Tag.md) | :heavy_check_mark: | A key representing a specific tag within the section. | ### Response @@ -270,78 +307,6 @@ var res = await sdk.Library.RefreshLibraryAsync(SectionId: 934.16D); **[RefreshLibraryResponse](../../Models/Requests/RefreshLibraryResponse.md)** -## GetLatestLibraryItems - -This endpoint will return a list of the latest library items filtered by the filter and type provided - - -### Example Usage - -```csharp -using PlexAPI; -using PlexAPI.Models.Components; -using PlexAPI.Models.Requests; - -var sdk = new PlexAPISDK( - security: new Models.Components.Security() { - AccessToken = "", - }); - -var res = await sdk.Library.GetLatestLibraryItemsAsync(SectionId: 7171.54D, Type: 8015.12D, Filter: "string"); - -// handle response -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ------------------------------ | ------------------------------ | ------------------------------ | ------------------------------ | -| `SectionId` | *double* | :heavy_check_mark: | the Id of the library to query | -| `Type` | *double* | :heavy_check_mark: | item type | -| `Filter` | *string* | :heavy_minus_sign: | the filter parameter | - - -### Response - -**[GetLatestLibraryItemsResponse](../../Models/Requests/GetLatestLibraryItemsResponse.md)** - - -## GetCommonLibraryItems - -Represents a "Common" item. It contains only the common attributes of the items selected by the provided filter - - -### Example Usage - -```csharp -using PlexAPI; -using PlexAPI.Models.Components; -using PlexAPI.Models.Requests; - -var sdk = new PlexAPISDK( - security: new Models.Components.Security() { - AccessToken = "", - }); - -var res = await sdk.Library.GetCommonLibraryItemsAsync(SectionId: 2710.37D, Type: 2760.31D, Filter: "string"); - -// handle response -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ------------------------------ | ------------------------------ | ------------------------------ | ------------------------------ | -| `SectionId` | *double* | :heavy_check_mark: | the Id of the library to query | -| `Type` | *double* | :heavy_check_mark: | item type | -| `Filter` | *string* | :heavy_minus_sign: | the filter parameter | - - -### Response - -**[GetCommonLibraryItemsResponse](../../Models/Requests/GetCommonLibraryItemsResponse.md)** - - ## GetMetadata This endpoint will return the metadata of a library item specified with the ratingKey. diff --git a/docs/sdks/log/README.md b/docs/sdks/log/README.md index 8730d10..122ac71 100644 --- a/docs/sdks/log/README.md +++ b/docs/sdks/log/README.md @@ -29,18 +29,18 @@ var sdk = new PlexAPISDK( AccessToken = "", }); -var res = await sdk.Log.LogLineAsync(Level: Level.Three, Message: "string", Source: "string"); +var res = await sdk.Log.LogLineAsync(Level: Level.Three, Message: "Test log message", Source: "Postman"); // handle response ``` ### Parameters -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Level` | [Level](../../Models/Requests/Level.md) | :heavy_check_mark: | An integer log level to write to the PMS log with.
0: Error
1: Warning
2: Info
3: Debug
4: Verbose
| | -| `Message` | *string* | :heavy_check_mark: | The text of the message to write to the log. | | -| `Source` | *string* | :heavy_check_mark: | a string indicating the source of the message. | | +| Parameter | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | +| `Level` | [Level](../../Models/Requests/Level.md) | :heavy_check_mark: | An integer log level to write to the PMS log with.
0: Error
1: Warning
2: Info
3: Debug
4: Verbose
| | +| `Message` | *string* | :heavy_check_mark: | The text of the message to write to the log. | Test log message | +| `Source` | *string* | :heavy_check_mark: | a string indicating the source of the message. | Postman | ### Response @@ -50,7 +50,27 @@ var res = await sdk.Log.LogLineAsync(Level: Level.Three, Message: "string", Sour ## LogMultiLine -This endpoint will write multiple lines to the main Plex Media Server log in a single request. It takes a set of query strings as would normally sent to the above GET endpoint as a linefeed-separated block of POST data. The parameters for each query string match as above. +This endpoint allows for the batch addition of log entries to the main Plex Media Server log. +It accepts a text/plain request body, where each line represents a distinct log entry. +Each log entry consists of URL-encoded key-value pairs, specifying log attributes such as 'level', 'message', and 'source'. + +Log entries are separated by a newline character (`\n`). +Each entry's parameters should be URL-encoded to ensure accurate parsing and handling of special characters. +This method is efficient for logging multiple entries in a single API call, reducing the overhead of multiple individual requests. + +The 'level' parameter specifies the log entry's severity or importance, with the following integer values: +- `0`: Error - Critical issues that require immediate attention. +- `1`: Warning - Important events that are not critical but may indicate potential issues. +- `2`: Info - General informational messages about system operation. +- `3`: Debug - Detailed information useful for debugging purposes. +- `4`: Verbose - Highly detailed diagnostic information for in-depth analysis. + +The 'message' parameter contains the log text, and 'source' identifies the log message's origin (e.g., an application name or module). + +Example of a single log entry format: +`level=4&message=Sample%20log%20entry&source=applicationName` + +Ensure each parameter is properly URL-encoded to avoid interpretation issues. ### Example Usage @@ -64,11 +84,21 @@ var sdk = new PlexAPISDK( AccessToken = "", }); -var res = await sdk.Log.LogMultiLineAsync(); +string req = "level=4&message=Test%20message%201&source=postman +level=3&message=Test%20message%202&source=postman +level=1&message=Test%20message%203&source=postman"; + +var res = await sdk.Log.LogMultiLineAsync(req); // handle response ``` +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | +| `request` | *string* | :heavy_check_mark: | The request object to use for the request. | + ### Response diff --git a/docs/sdks/playlists/README.md b/docs/sdks/playlists/README.md index 5b5087e..44745ae 100644 --- a/docs/sdks/playlists/README.md +++ b/docs/sdks/playlists/README.md @@ -24,7 +24,7 @@ This may cause the duration and number of items to change. ## CreatePlaylist Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: -- `uri` - The content URI for what we're playing (e.g. `library://...`). +- `uri` - The content URI for what we're playing (e.g. `server://1234/com.plexapp.plugins.library/library/metadata/1`). - `playQueueID` - To create a playlist from an existing play queue. @@ -44,6 +44,7 @@ CreatePlaylistRequest req = new CreatePlaylistRequest() { Title = "string", Type = Type.Photo, Smart = Smart.One, + Uri = "https://inborn-brochure.biz", }; var res = await sdk.Playlists.CreatePlaylistAsync(req); @@ -183,16 +184,18 @@ var sdk = new PlexAPISDK( AccessToken = "", }); -var res = await sdk.Playlists.UpdatePlaylistAsync(PlaylistID: 3915D); +var res = await sdk.Playlists.UpdatePlaylistAsync(PlaylistID: 3915D, Title: "string", Summary: "string"); // handle response ``` ### Parameters -| Parameter | Type | Required | Description | -| ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `PlaylistID` | *double* | :heavy_check_mark: | the ID of the playlist | +| Parameter | Type | Required | Description | +| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | +| `PlaylistID` | *double* | :heavy_check_mark: | the ID of the playlist | +| `Title` | *string* | :heavy_minus_sign: | name of the playlist | +| `Summary` | *string* | :heavy_minus_sign: | summary description of the playlist | ### Response @@ -274,7 +277,7 @@ var res = await sdk.Playlists.ClearPlaylistContentsAsync(PlaylistID: 1893.18D); ## AddPlaylistContents -Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. +Adds a generator to a playlist, same parameters as the POST to create. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. @@ -290,18 +293,18 @@ var sdk = new PlexAPISDK( AccessToken = "", }); -var res = await sdk.Playlists.AddPlaylistContentsAsync(PlaylistID: 8502.01D, Uri: "library://..", PlayQueueID: 123D); +var res = await sdk.Playlists.AddPlaylistContentsAsync(PlaylistID: 8502.01D, Uri: "server://12345/com.plexapp.plugins.library/library/metadata/1", PlayQueueID: 123D); // handle response ``` ### Parameters -| Parameter | Type | Required | Description | Example | -| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | -| `PlaylistID` | *double* | :heavy_check_mark: | the ID of the playlist | | -| `Uri` | *string* | :heavy_check_mark: | the content URI for the playlist | library://.. | -| `PlayQueueID` | *double* | :heavy_check_mark: | the play queue to add to a playlist | 123 | +| Parameter | Type | Required | Description | Example | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `PlaylistID` | *double* | :heavy_check_mark: | the ID of the playlist | | +| `Uri` | *string* | :heavy_check_mark: | the content URI for the playlist | server://12345/com.plexapp.plugins.library/library/metadata/1 | +| `PlayQueueID` | *double* | :heavy_minus_sign: | the play queue to add to a playlist | 123 | ### Response @@ -336,7 +339,7 @@ var res = await sdk.Playlists.UploadPlaylistAsync(Path: "/home/barkley/playlist. | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `Path` | *string* | :heavy_check_mark: | absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server.
If the `path` argument is a directory, that path will be scanned for playlist files to be processed.
Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it.
The GUID of each playlist is based on the filename.
If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it.
The GUID of each playlist is based on the filename.
| /home/barkley/playlist.m3u | -| `Force` | [Force](../../Models/Requests/Force.md) | :heavy_check_mark: | force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist.
The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.
| | +| `Force` | [Force](../../Models/Requests/Force.md) | :heavy_check_mark: | Force overwriting of duplicate playlists.
By default, a playlist file uploaded with the same path will overwrite the existing playlist.
The `force` argument is used to disable overwriting.
If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.
| | ### Response diff --git a/gen.yaml b/gen.yaml index 4d56ef4..d7a268c 100644 --- a/gen.yaml +++ b/gen.yaml @@ -8,7 +8,7 @@ generation: fixes: nameResolutionDec2023: false csharp: - version: 0.1.4 + version: 0.1.5 author: LukeHagar dotnetVersion: net5.0 imports: