## Csharp SDK Changes:

* `PlexApi.LibraryPlaylists.AddPlaylistItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.ClearPlaylistItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.MoveCollectionItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.DeleteCollectionItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.AddCollectionItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetSonicallySimilar()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Butler.StopTask()`:  `request` **Changed** **Breaking** ⚠️
* `PlexApi.Butler.StartTask()`:  `request` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetSonicPath()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.DownloadQueue.GetItemDecision()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetAllHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetContinueWatching()`:  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetPromotedHubs()`:  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetMetadataHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetPostplayHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetRelatedHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetSectionHubs()`: 
  *  `request.OnlyTransient` **Changed**
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetAllLeaves()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.ListContent()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Search.SearchHubs()`:  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetAlbums()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryItems()`: 
  *  `request.MediaQuery` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.IngestTransientItem()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryMatches()`: 
  *  `request` **Changed** **Breaking** ⚠️
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetMetadataItem()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetSections()`:  `response.mediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.AddSection()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetTags()`: 
  *  `request.Type` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetCollectionItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetAllItemLeaves()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Status.ListSessions()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.MovePlayQueueItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetExtras()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.DeletePlayQueueItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.Unshuffle()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListMatches()`: 
  *  `request.Manual` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListSonicallySimilar()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.Shuffle()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetRelatedItems()`:  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListSimilar()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.ResetPlayQueue()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetItemTree()`:  `response.mediaContainer.MetadataItem.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.ClearPlayQueue()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.AddToPlayQueue()`: 
  *  `request.Next` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetCommon()`: 
  *  `request.MediaQuery` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetPerson()`:  `response.mediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListPersonMedia()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.GetPlayQueue()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryDetails()`: 
  *  `request.IncludeDetails` **Changed**
  *  `response.mediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.MovePlaylistItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.Autocomplete()`: 
  *  `request.MediaQuery` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetCollections()`: 
  *  `request.MediaQuery` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.GetPlaylistGeneratorItems()`:  `response.mediaContainer.Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.DeletePlaylistItem()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Search.VoiceSearchHubs()`: 
  *  `request.Type` **Changed** **Breaking** ⚠️
  *  `response.mediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.CreatePlaylist()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.GetPlaylistItems()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.GetPlaylist()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.ListPlaylists()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Collections.CreateCollection()`: 
  *  `request.Type` **Changed** **Breaking** ⚠️
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.DvRs.TuneChannel()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LiveTv.GetSessions()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LiveTv.GetLiveTvSession()`:  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Transcoder.MakeDecision()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetAllSubscriptions()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.CreateSubscription()`:  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetScheduledRecordings()`:  `response.mediaContainer.MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetTemplate()`:  `response.mediaContainer.SubscriptionTemplate.[].MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetSubscription()`: 
  *  `request` **Changed**
  *  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.EditSubscriptionPreferences()`:  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.ReorderSubscription()`:  `response.mediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Library.AddSubtitles()`:  `request` **Changed**
* `PlexApi.LibraryPlaylists.UploadPlaylist()`: 
  *  `request.Force` **Changed**
* `PlexApi.Transcoder.TranscodeSubtitles()`:  `request` **Changed**
* `PlexApi.Transcoder.StartTranscodeSession()`:  `request` **Changed**
* `PlexApi.Library.GetMediaPart()`: 
  *  `request.Download` **Changed**
* `PlexApi.Library.DetectIntros()`: 
  *  `request.Force` **Changed**
* `PlexApi.Library.GetSectionImage()`: 
  *  `request.MediaQuery` **Changed**
* `PlexApi.Library.DeleteMediaItem()`: 
  *  `request.Proxy` **Changed**
* `PlexApi.Library.RefreshItemsMetadata()`: 
  *  `request.MarkUpdated` **Changed**
* `PlexApi.Authentication.Post-Users-Sign-In-Data()`: **Added**
* `PlexApi.Authentication.GetTokenDetails()`: **Added**
* `PlexApi.Library.DetectCredits()`:  `request` **Changed**
* `PlexApi.Library.SetStreamSelection()`: 
  *  `request.AllParts` **Changed**
* `PlexApi.Library.UpdateItems()`: 
  *  `request.Field.locked` **Changed**
* `PlexApi.PlayQueue.CreatePlayQueue()`:  `request` **Changed**
* `PlexApi.Library.DeleteLibrarySection()`: 
  *  `request.Async` **Changed**
* `PlexApi.Library.GetAugmentationStatus()`: 
  *  `request.Wait` **Changed**
* `PlexApi.Transcoder.TranscodeImage()`:  `request` **Changed**
* `PlexApi.Devices.ModifyDevice()`: 
  *  `request.Enabled` **Changed**
* `PlexApi.Library.DetectVoiceActivity()`:  `request` **Changed**
* `PlexApi.Library.GetStream()`: 
  *  `request.AutoAdjustSubtitle` **Changed**
* `PlexApi.Library.StartBifGeneration()`: 
  *  `request.Force` **Changed**
* `PlexApi.Library.GetFirstCharacters()`: 
  *  `request.MediaQuery` **Changed**
* `PlexApi.UltraBlur.GetImage()`: 
  *  `request.Noise` **Changed**
* `PlexApi.Library.GenerateThumbs()`: 
  *  `request.Force` **Changed**
* `PlexApi.Updater.ApplyUpdates()`:  `request` **Changed**
* `PlexApi.Updater.CheckUpdates()`: 
  *  `request.Download` **Changed**
* `PlexApi.Library.DeleteMetadataItem()`: 
  *  `request.Proxy` **Changed**
* `PlexApi.Library.OptimizeDatabase()`: 
  *  `request.Async` **Changed**
* `PlexApi.Library.RefreshSection()`: 
  *  `request.Force` **Changed**
* `PlexApi.Hubs.UpdateHubVisibility()`:  `request` **Changed**
* `PlexApi.Hubs.CreateCustomHub()`:  `request` **Changed**
* `PlexApi.DownloadQueue.AddDownloadQueueItems()`:  `request` **Changed**
* `PlexApi.Timeline.Report()`:  `request` **Changed**
* `PlexApi.General.GetSourceConnectionInformation()`: 
  *  `request.Refresh` **Changed**
* `PlexApi.Plex.Get-Server-Resources()`: **Added**
* `PlexApi.Users.Get-Users()`: **Added**
This commit is contained in:
speakeasybot
2025-12-01 00:32:52 +00:00
parent 70dbffa1d4
commit c0836c3b34
345 changed files with 10172 additions and 2364 deletions

View File

@@ -114,7 +114,13 @@ var sdk = new PlexAPI(
token: "<YOUR_API_KEY_HERE>"
);
GetLibraryItemsRequest req = new GetLibraryItemsRequest() {};
GetLibraryItemsRequest req = new GetLibraryItemsRequest() {
MediaQuery = new MediaQuery() {
Type = MediaType.Episode,
SourceType = 2,
Sort = "duration:desc,index",
},
};
var res = await sdk.Library.GetLibraryItemsAsync(req);
@@ -224,8 +230,8 @@ var sdk = new PlexAPI(
IngestTransientItemRequest req = new IngestTransientItemRequest() {
Url = "file:///storage%2Femulated%2F0%2FArcher-S01E01.mkv",
VirtualFilePath = "/Avatar.mkv",
ComputeHashes = BoolInt.One,
IngestNonMatches = BoolInt.One,
ComputeHashes = BoolInt.True,
IngestNonMatches = BoolInt.True,
};
var res = await sdk.Library.IngestTransientItemAsync(req);
@@ -281,9 +287,10 @@ var sdk = new PlexAPI(
);
GetLibraryMatchesRequest req = new GetLibraryMatchesRequest() {
IncludeFullMetadata = BoolInt.One,
IncludeAncestorMetadata = BoolInt.One,
IncludeAlternateMetadataSources = BoolInt.One,
Type = MediaType.TvShow,
IncludeFullMetadata = BoolInt.True,
IncludeAncestorMetadata = BoolInt.True,
IncludeAlternateMetadataSources = BoolInt.True,
};
var res = await sdk.Library.GetLibraryMatchesAsync(req);
@@ -335,7 +342,7 @@ var sdk = new PlexAPI(
);
OptimizeDatabaseRequest req = new OptimizeDatabaseRequest() {
Async = BoolInt.One,
Async = BoolInt.True,
};
var res = await sdk.Library.OptimizeDatabaseAsync(req);
@@ -485,8 +492,8 @@ AddSectionRequest req = new AddSectionRequest() {
"O:\fatboy\Media\My Music",
},
Prefs = new QueryParamPrefs() {},
Relative = BoolInt.One,
ImportFromiTunes = BoolInt.One,
Relative = BoolInt.True,
ImportFromiTunes = BoolInt.True,
};
var res = await sdk.Library.AddSectionAsync(req);
@@ -667,7 +674,9 @@ var sdk = new PlexAPI(
token: "<YOUR_API_KEY_HERE>"
);
GetTagsRequest req = new GetTagsRequest() {};
GetTagsRequest req = new GetTagsRequest() {
Type = MediaType.TvShow,
};
var res = await sdk.Library.GetTagsAsync(req);
@@ -719,7 +728,7 @@ var sdk = new PlexAPI(
DeleteMetadataItemRequest req = new DeleteMetadataItemRequest() {
Ids = "<value>",
Proxy = BoolInt.One,
Proxy = BoolInt.True,
};
var res = await sdk.Library.DeleteMetadataItemAsync(req);
@@ -984,7 +993,7 @@ var sdk = new PlexAPI(
GenerateThumbsRequest req = new GenerateThumbsRequest() {
Ids = "<value>",
Force = BoolInt.One,
Force = BoolInt.True,
};
var res = await sdk.Library.GenerateThumbsAsync(req);
@@ -1037,8 +1046,8 @@ var sdk = new PlexAPI(
DetectCreditsRequest req = new DetectCreditsRequest() {
Ids = "<value>",
Force = BoolInt.One,
Manual = BoolInt.One,
Force = BoolInt.True,
Manual = BoolInt.True,
};
var res = await sdk.Library.DetectCreditsAsync(req);
@@ -1248,7 +1257,7 @@ var sdk = new PlexAPI(
StartBifGenerationRequest req = new StartBifGenerationRequest() {
Ids = "<value>",
Force = BoolInt.One,
Force = BoolInt.True,
};
var res = await sdk.Library.StartBifGenerationAsync(req);
@@ -1301,7 +1310,7 @@ var sdk = new PlexAPI(
DetectIntrosRequest req = new DetectIntrosRequest() {
Ids = "<value>",
Force = BoolInt.One,
Force = BoolInt.True,
};
var res = await sdk.Library.DetectIntrosAsync(req);
@@ -1461,7 +1470,7 @@ var sdk = new PlexAPI(
ListMatchesRequest req = new ListMatchesRequest() {
Ids = "<value>",
Manual = BoolInt.One,
Manual = BoolInt.True,
};
var res = await sdk.Library.ListMatchesAsync(req);
@@ -1670,7 +1679,7 @@ var sdk = new PlexAPI(
RefreshItemsMetadataRequest req = new RefreshItemsMetadataRequest() {
Ids = "<value>",
MarkUpdated = BoolInt.One,
MarkUpdated = BoolInt.True,
};
var res = await sdk.Library.RefreshItemsMetadataAsync(req);
@@ -1879,8 +1888,8 @@ var sdk = new PlexAPI(
AddSubtitlesRequest req = new AddSubtitlesRequest() {
Ids = "<value>",
Forced = BoolInt.One,
HearingImpaired = BoolInt.One,
Forced = BoolInt.True,
HearingImpaired = BoolInt.True,
};
var res = await sdk.Library.AddSubtitlesAsync(req);
@@ -2089,8 +2098,8 @@ var sdk = new PlexAPI(
DetectVoiceActivityRequest req = new DetectVoiceActivityRequest() {
Ids = "<value>",
Force = BoolInt.One,
Manual = BoolInt.One,
Force = BoolInt.True,
Manual = BoolInt.True,
};
var res = await sdk.Library.DetectVoiceActivityAsync(req);
@@ -2143,7 +2152,7 @@ var sdk = new PlexAPI(
GetAugmentationStatusRequest req = new GetAugmentationStatusRequest() {
AugmentationId = "<id>",
Wait = BoolInt.One,
Wait = BoolInt.True,
};
var res = await sdk.Library.GetAugmentationStatusAsync(req);
@@ -2196,7 +2205,7 @@ var sdk = new PlexAPI(
SetStreamSelectionRequest req = new SetStreamSelectionRequest() {
PartId = 360489,
AllParts = BoolInt.One,
AllParts = BoolInt.True,
};
var res = await sdk.Library.SetStreamSelectionAsync(req);
@@ -2353,7 +2362,7 @@ var sdk = new PlexAPI(
DeleteLibrarySectionRequest req = new DeleteLibrarySectionRequest() {
SectionId = "<id>",
Async = BoolInt.One,
Async = BoolInt.True,
};
var res = await sdk.Library.DeleteLibrarySectionAsync(req);
@@ -2406,7 +2415,7 @@ var sdk = new PlexAPI(
GetLibraryDetailsRequest req = new GetLibraryDetailsRequest() {
SectionId = "<id>",
IncludeDetails = BoolInt.One,
IncludeDetails = BoolInt.True,
};
var res = await sdk.Library.GetLibraryDetailsAsync(req);
@@ -2562,7 +2571,7 @@ var sdk = new PlexAPI(
UpdateItemsRequest req = new UpdateItemsRequest() {
SectionId = "<id>",
FieldLocked = BoolInt.One,
FieldLocked = BoolInt.True,
};
var res = await sdk.Library.UpdateItemsAsync(req);
@@ -2668,6 +2677,11 @@ var sdk = new PlexAPI(
AutocompleteRequest req = new AutocompleteRequest() {
SectionId = 942007,
MediaQuery = new MediaQuery() {
Type = MediaType.Episode,
SourceType = 2,
Sort = "duration:desc,index",
},
};
var res = await sdk.Library.AutocompleteAsync(req);
@@ -2720,6 +2734,11 @@ var sdk = new PlexAPI(
GetCollectionsRequest req = new GetCollectionsRequest() {
SectionId = 348838,
MediaQuery = new MediaQuery() {
Type = MediaType.Episode,
SourceType = 2,
Sort = "duration:desc,index",
},
};
var res = await sdk.Library.GetCollectionsAsync(req);
@@ -2773,6 +2792,11 @@ var sdk = new PlexAPI(
GetCommonRequest req = new GetCommonRequest() {
SectionId = 298154,
MediaQuery = new MediaQuery() {
Type = MediaType.Episode,
SourceType = 2,
Sort = "duration:desc,index",
},
};
var res = await sdk.Library.GetCommonAsync(req);
@@ -2929,6 +2953,11 @@ var sdk = new PlexAPI(
GetFirstCharactersRequest req = new GetFirstCharactersRequest() {
SectionId = 3947,
MediaQuery = new MediaQuery() {
Type = MediaType.Episode,
SourceType = 2,
Sort = "duration:desc,index",
},
};
var res = await sdk.Library.GetFirstCharactersAsync(req);
@@ -3242,7 +3271,7 @@ var sdk = new PlexAPI(
RefreshSectionRequest req = new RefreshSectionRequest() {
SectionId = 450300,
Force = BoolInt.One,
Force = BoolInt.True,
};
var res = await sdk.Library.RefreshSectionAsync(req);
@@ -3722,7 +3751,7 @@ var sdk = new PlexAPI(
DeleteMediaItemRequest req = new DeleteMediaItemRequest() {
Ids = "<value>",
MediaItem = "<value>",
Proxy = BoolInt.One,
Proxy = BoolInt.True,
};
var res = await sdk.Library.DeleteMediaItemAsync(req);
@@ -3882,6 +3911,11 @@ var sdk = new PlexAPI(
GetSectionImageRequest req = new GetSectionImageRequest() {
SectionId = 925611,
UpdatedAt = 117413,
MediaQuery = new MediaQuery() {
Type = MediaType.Episode,
SourceType = 2,
Sort = "duration:desc,index",
},
};
var res = await sdk.Library.GetSectionImageAsync(req);
@@ -3988,7 +4022,7 @@ var sdk = new PlexAPI(
GetStreamRequest req = new GetStreamRequest() {
StreamId = 314506,
Ext = "<value>",
AutoAdjustSubtitle = BoolInt.One,
AutoAdjustSubtitle = BoolInt.True,
};
var res = await sdk.Library.GetStreamAsync(req);
@@ -4153,7 +4187,7 @@ GetMediaPartRequest req = new GetMediaPartRequest() {
PartId = 877105,
Changestamp = 970622,
Filename = "example.file",
Download = BoolInt.One,
Download = BoolInt.True,
};
var res = await sdk.Library.GetMediaPartAsync(req);