diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index b4ddc90..66793fd 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,12 +1,12 @@ -speakeasyVersion: 1.658.2 +speakeasyVersion: 1.666.2 sources: merge-code-samples-into-spec: sourceNamespace: merge-code-samples-into-spec - sourceRevisionDigest: sha256:4224026fd13e77a9f098a3c474fd5bdb9e082fd91dfc9e33391f146c590af7d0 - sourceBlobDigest: sha256:9801f773e37702120b0a2269f79d59f48381ac91ee0d3cb2a79745b76c50591e + sourceRevisionDigest: sha256:d9c54fe6b0c119b4af90ea8d877654c80383ec784d8bfc6c233c084bdee2862c + sourceBlobDigest: sha256:327504b59271030045627bb26b5b7aee692413e5aaceeea938d746b8d794e759 tags: - latest - - speakeasy-sdk-regen-1741134607 + - speakeasy-sdk-regen-1763685215 - 1.1.1 targets: {} workflow: diff --git a/openapi-with-code-samples.yaml b/openapi-with-code-samples.yaml index cbb17f6..9791da9 100644 --- a/openapi-with-code-samples.yaml +++ b/openapi-with-code-samples.yaml @@ -349,7 +349,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -363,6 +363,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -498,7 +499,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -512,6 +513,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -632,7 +634,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.preferences.getAllPreferences(); @@ -766,7 +770,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -780,14 +784,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.preferences.setPreferences({ + await plexAPI.preferences.setPreferences({ prefs: {}, }); - console.log(result); + } run(); @@ -912,7 +917,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -926,6 +931,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -1084,7 +1090,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -1098,16 +1104,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.rate.setRating({ + await plexAPI.rate.setRating({ identifier: "", key: "", rating: 8722.46, }); - console.log(result); + } run(); @@ -1248,7 +1255,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -1262,14 +1269,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.timeline.markPlayed({ + await plexAPI.timeline.markPlayed({ identifier: "", }); - console.log(result); + } run(); @@ -1471,9 +1479,9 @@ paths: PlayQueueItemID: plexgo.Pointer("123"), Time: plexgo.Pointer[int64](0), Duration: plexgo.Pointer[int64](10000), - Continuing: components.BoolIntOne.ToPointer(), + Continuing: components.BoolIntTrue.ToPointer(), Updated: plexgo.Pointer[int64](14200000), - Offline: components.BoolIntOne.ToPointer(), + Offline: components.BoolIntTrue.ToPointer(), TimeToFirstFrame: plexgo.Pointer[int64](1000), TimeStalled: plexgo.Pointer[int64](1000), Bandwidth: plexgo.Pointer[int64](100), @@ -1524,9 +1532,9 @@ paths: .playQueueItemID("123") .time(0L) .duration(10000L) - .continuing(BoolInt.ONE) + .continuing(BoolInt.True) .updated(14200000L) - .offline(BoolInt.ONE) + .offline(BoolInt.True) .timeToFirstFrame(1000L) .timeStalled(1000L) .bandwidth(100L) @@ -1547,8 +1555,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { ReportState } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { ReportState } from "@lukehagar/plexjs/models/operations"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -1562,6 +1570,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -1572,9 +1581,9 @@ paths: playQueueItemID: "123", time: 0, duration: 10000, - continuing: BoolInt.One, + continuing: BoolInt.True, updated: 14200000, - offline: BoolInt.One, + offline: BoolInt.True, timeToFirstFrame: 1000, timeStalled: 1000, bandwidth: 100, @@ -1723,7 +1732,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -1737,14 +1746,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.timeline.unscrobble({ + await plexAPI.timeline.unscrobble({ identifier: "", }); - console.log(result); + } run(); @@ -1874,7 +1884,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -1888,6 +1898,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -2049,7 +2060,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.activities.listActivities(); @@ -2166,12 +2179,14 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { - const result = await plexAPI.butler.stopTasks(); + await plexAPI.butler.stopTasks(); + - console.log(result); } run(); @@ -2316,7 +2331,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.butler.getTasks(); @@ -2438,12 +2455,14 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { - const result = await plexAPI.butler.startTasks(); + await plexAPI.butler.startTasks(); + - console.log(result); } run(); @@ -2550,7 +2569,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.downloadQueue.createDownloadQueue(); @@ -2686,7 +2707,7 @@ paths: ) res, err := s.Hubs.GetAllHubs(ctx, operations.GetAllHubsRequest{ - OnlyTransient: components.BoolIntOne.ToPointer(), + OnlyTransient: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -2727,7 +2748,7 @@ paths: .build(); GetAllHubsRequest req = GetAllHubsRequest.builder() - .onlyTransient(BoolInt.ONE) + .onlyTransient(BoolInt.True) .build(); GetAllHubsResponse res = sdk.hubs().getAllHubs() @@ -2743,7 +2764,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -2757,11 +2778,12 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.hubs.getAllHubs({ - onlyTransient: BoolInt.One, + onlyTransient: BoolInt.True, }); console.log(result); @@ -2896,7 +2918,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -2910,6 +2932,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -3063,7 +3086,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -3077,6 +3100,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -3220,7 +3244,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -3234,6 +3258,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -3456,7 +3481,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -3470,6 +3495,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -3620,6 +3646,7 @@ paths: res, err := s.Search.VoiceSearchHubs(ctx, operations.VoiceSearchHubsRequest{ Query: "", + Type: components.MediaTypeTvShow.ToPointer(), }) if err != nil { log.Fatal(err) @@ -3637,6 +3664,7 @@ paths: import dev.plexapi.sdk.models.operations.VoiceSearchHubsRequest; import dev.plexapi.sdk.models.operations.VoiceSearchHubsResponse; import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.MediaType; import java.lang.Exception; public class Application { @@ -3660,6 +3688,7 @@ paths: VoiceSearchHubsRequest req = VoiceSearchHubsRequest.builder() .query("") + .type(MediaType.TvShow) .build(); VoiceSearchHubsResponse res = sdk.search().voiceSearchHubs() @@ -3675,7 +3704,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -3689,11 +3718,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.search.voiceSearchHubs({ query: "", + type: MediaType.TvShow, }); console.log(result); @@ -3817,7 +3848,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.general.getIdentity(); @@ -3894,7 +3927,13 @@ paths: plexgo.WithSecurity(""), ) - res, err := s.Library.GetLibraryItems(ctx, operations.GetLibraryItemsRequest{}) + res, err := s.Library.GetLibraryItems(ctx, operations.GetLibraryItemsRequest{ + MediaQuery: &components.MediaQuery{ + Type: components.MediaTypeEpisode.ToPointer(), + SourceType: plexgo.Pointer[int64](2), + Sort: plexgo.Pointer("duration:desc,index"), + }, + }) if err != nil { log.Fatal(err) } @@ -3910,7 +3949,7 @@ paths: import dev.plexapi.sdk.PlexAPI; import dev.plexapi.sdk.models.operations.GetLibraryItemsRequest; import dev.plexapi.sdk.models.operations.GetLibraryItemsResponse; - import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.*; import java.lang.Exception; public class Application { @@ -3933,6 +3972,11 @@ paths: .build(); GetLibraryItemsRequest req = GetLibraryItemsRequest.builder() + .mediaQuery(MediaQuery.builder() + .type(MediaType.Episode) + .sourceType(2L) + .sort("duration:desc,index") + .build()) .build(); GetLibraryItemsResponse res = sdk.library().getLibraryItems() @@ -3948,7 +3992,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -3962,10 +4006,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.getLibraryItems({}); + const result = await plexAPI.library.getLibraryItems({ + mediaQuery: { + type: MediaType.Episode, + sourceType: 2, + sort: "duration:desc,index", + }, + }); console.log(result); } @@ -4039,12 +4090,14 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { - const result = await plexAPI.library.deleteCaches(); + await plexAPI.library.deleteCaches(); + - console.log(result); } run(); @@ -4116,12 +4169,14 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { - const result = await plexAPI.library.cleanBundles(); + await plexAPI.library.cleanBundles(); + - console.log(result); } run(); @@ -4203,6 +4258,7 @@ paths: res, err := s.Collections.CreateCollection(ctx, operations.CreateCollectionRequest{ SectionID: "", + Type: components.MediaTypeTvShow.ToPointer(), }) if err != nil { log.Fatal(err) @@ -4220,6 +4276,7 @@ paths: import dev.plexapi.sdk.models.operations.CreateCollectionRequest; import dev.plexapi.sdk.models.operations.CreateCollectionResponse; import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.MediaType; import java.lang.Exception; public class Application { @@ -4243,6 +4300,7 @@ paths: CreateCollectionRequest req = CreateCollectionRequest.builder() .sectionId("") + .type(MediaType.TvShow) .build(); CreateCollectionResponse res = sdk.collections().createCollection() @@ -4258,7 +4316,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -4272,11 +4330,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.collections.createCollection({ sectionId: "", + type: MediaType.TvShow, }); console.log(result); @@ -4380,8 +4440,8 @@ paths: res, err := s.Library.IngestTransientItem(ctx, operations.IngestTransientItemRequest{ URL: plexgo.Pointer("file:///storage%2Femulated%2F0%2FArcher-S01E01.mkv"), VirtualFilePath: plexgo.Pointer("/Avatar.mkv"), - ComputeHashes: components.BoolIntOne.ToPointer(), - IngestNonMatches: components.BoolIntOne.ToPointer(), + ComputeHashes: components.BoolIntTrue.ToPointer(), + IngestNonMatches: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -4424,8 +4484,8 @@ paths: IngestTransientItemRequest req = IngestTransientItemRequest.builder() .url("file:///storage%2Femulated%2F0%2FArcher-S01E01.mkv") .virtualFilePath("/Avatar.mkv") - .computeHashes(BoolInt.ONE) - .ingestNonMatches(BoolInt.ONE) + .computeHashes(BoolInt.True) + .ingestNonMatches(BoolInt.True) .build(); IngestTransientItemResponse res = sdk.library().ingestTransientItem() @@ -4441,7 +4501,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -4455,14 +4515,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.library.ingestTransientItem({ url: "file:///storage%2Femulated%2F0%2FArcher-S01E01.mkv", virtualFilePath: "/Avatar.mkv", - computeHashes: BoolInt.One, - ingestNonMatches: BoolInt.One, + computeHashes: BoolInt.True, + ingestNonMatches: BoolInt.True, }); console.log(result); @@ -4604,9 +4665,10 @@ paths: ) res, err := s.Library.GetLibraryMatches(ctx, operations.GetLibraryMatchesRequest{ - IncludeFullMetadata: components.BoolIntOne.ToPointer(), - IncludeAncestorMetadata: components.BoolIntOne.ToPointer(), - IncludeAlternateMetadataSources: components.BoolIntOne.ToPointer(), + Type: components.MediaTypeTvShow.ToPointer(), + IncludeFullMetadata: components.BoolIntTrue.ToPointer(), + IncludeAncestorMetadata: components.BoolIntTrue.ToPointer(), + IncludeAlternateMetadataSources: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -4623,8 +4685,7 @@ paths: import dev.plexapi.sdk.PlexAPI; import dev.plexapi.sdk.models.operations.GetLibraryMatchesRequest; import dev.plexapi.sdk.models.operations.GetLibraryMatchesResponse; - import dev.plexapi.sdk.models.shared.Accepts; - import dev.plexapi.sdk.models.shared.BoolInt; + import dev.plexapi.sdk.models.shared.*; import java.lang.Exception; public class Application { @@ -4647,9 +4708,10 @@ paths: .build(); GetLibraryMatchesRequest req = GetLibraryMatchesRequest.builder() - .includeFullMetadata(BoolInt.ONE) - .includeAncestorMetadata(BoolInt.ONE) - .includeAlternateMetadataSources(BoolInt.ONE) + .type(MediaType.TvShow) + .includeFullMetadata(BoolInt.True) + .includeAncestorMetadata(BoolInt.True) + .includeAlternateMetadataSources(BoolInt.True) .build(); GetLibraryMatchesResponse res = sdk.library().getLibraryMatches() @@ -4665,7 +4727,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -4679,13 +4741,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.library.getLibraryMatches({ - includeFullMetadata: BoolInt.One, - includeAncestorMetadata: BoolInt.One, - includeAlternateMetadataSources: BoolInt.One, + type: MediaType.TvShow, + includeFullMetadata: BoolInt.True, + includeAncestorMetadata: BoolInt.True, + includeAlternateMetadataSources: BoolInt.True, }); console.log(result); @@ -4755,7 +4819,7 @@ paths: ) res, err := s.Library.OptimizeDatabase(ctx, operations.OptimizeDatabaseRequest{ - Async: components.BoolIntOne.ToPointer(), + Async: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -4796,7 +4860,7 @@ paths: .build(); OptimizeDatabaseRequest req = OptimizeDatabaseRequest.builder() - .async(BoolInt.ONE) + .async(BoolInt.True) .build(); OptimizeDatabaseResponse res = sdk.library().optimizeDatabase() @@ -4810,7 +4874,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -4824,14 +4888,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.optimizeDatabase({ - async: BoolInt.One, + await plexAPI.library.optimizeDatabase({ + async: BoolInt.True, }); - console.log(result); + } run(); @@ -4970,7 +5035,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -4984,6 +5049,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -5091,7 +5157,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.library.getSections(); @@ -5233,8 +5301,8 @@ paths: "O:\fatboy\\Media\\My Music", }, Prefs: &operations.QueryParamPrefs{}, - Relative: components.BoolIntOne.ToPointer(), - ImportFromiTunes: components.BoolIntOne.ToPointer(), + Relative: components.BoolIntTrue.ToPointer(), + ImportFromiTunes: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -5284,8 +5352,8 @@ paths: "O:\fatboy\\Media\\My Music")) .prefs(QueryParamPrefs.builder() .build()) - .relative(BoolInt.ONE) - .importFromiTunes(BoolInt.ONE) + .relative(BoolInt.True) + .importFromiTunes(BoolInt.True) .build(); AddSectionResponse res = sdk.library().addSection() @@ -5301,7 +5369,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -5315,6 +5383,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -5328,8 +5397,8 @@ paths: "O:\fatboy\\Media\\My Music", ], prefs: {}, - relative: BoolInt.One, - importFromiTunes: BoolInt.One, + relative: BoolInt.True, + importFromiTunes: BoolInt.True, }); console.log(result); @@ -5406,7 +5475,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.library.stopAllRefreshes(); @@ -5544,7 +5615,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -5558,6 +5629,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -5687,7 +5759,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -5701,12 +5773,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.refreshSectionsMetadata({}); + await plexAPI.library.refreshSectionsMetadata({}); + - console.log(result); } run(); @@ -5797,7 +5870,9 @@ paths: plexgo.WithSecurity(""), ) - res, err := s.Library.GetTags(ctx, operations.GetTagsRequest{}) + res, err := s.Library.GetTags(ctx, operations.GetTagsRequest{ + Type: components.MediaTypeTvShow.ToPointer(), + }) if err != nil { log.Fatal(err) } @@ -5814,6 +5889,7 @@ paths: import dev.plexapi.sdk.models.operations.GetTagsRequest; import dev.plexapi.sdk.models.operations.GetTagsResponse; import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.MediaType; import java.lang.Exception; public class Application { @@ -5836,6 +5912,7 @@ paths: .build(); GetTagsRequest req = GetTagsRequest.builder() + .type(MediaType.TvShow) .build(); GetTagsResponse res = sdk.library().getTags() @@ -5851,7 +5928,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -5865,10 +5942,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.getTags({}); + const result = await plexAPI.library.getTags({ + type: MediaType.TvShow, + }); console.log(result); } @@ -5977,7 +6057,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.dvRs.listDVRs(); @@ -6231,7 +6313,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -6245,6 +6327,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -6479,7 +6562,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -6493,6 +6576,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -6649,7 +6733,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -6663,6 +6747,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -6792,7 +6877,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.epg.getCountries(); @@ -6897,7 +6984,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.epg.getAllLanguages(); @@ -7042,7 +7131,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -7056,6 +7145,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -7218,7 +7308,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -7232,6 +7322,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -7326,7 +7417,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.liveTV.getSessions(); @@ -7468,12 +7561,14 @@ paths: import { PlexAPI } from "@lukehagar/plexjs"; import { openAsBlob } from "node:fs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { - const result = await plexAPI.log.writeLog(await openAsBlob("example.file")); + await plexAPI.log.writeLog(await openAsBlob("example.file")); + - console.log(result); } run(); @@ -7615,7 +7710,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -7629,12 +7724,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.log.writeMessage({}); + await plexAPI.log.writeMessage({}); + - console.log(result); } run(); @@ -7759,7 +7855,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -7773,12 +7869,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.log.enablePapertrail({}); + await plexAPI.log.enablePapertrail({}); + - console.log(result); } run(); @@ -7929,7 +8026,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -7943,6 +8040,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -8037,7 +8135,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.devices.listDevices(); @@ -8171,7 +8271,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -8185,6 +8285,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -8270,7 +8371,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.devices.discoverDevices(); @@ -8423,7 +8526,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.provider.listProviders(); @@ -8548,7 +8653,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -8562,14 +8667,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.provider.addProvider({ + await plexAPI.provider.addProvider({ url: "https://steep-obedience.name/", }); - console.log(result); + } run(); @@ -8638,12 +8744,14 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { - const result = await plexAPI.provider.refreshProviders(); + await plexAPI.provider.refreshProviders(); + - console.log(result); } run(); @@ -8729,8 +8837,8 @@ paths: ) res, err := s.Subscriptions.GetAllSubscriptions(ctx, operations.GetAllSubscriptionsRequest{ - IncludeGrabs: components.BoolIntOne.ToPointer(), - IncludeStorage: components.BoolIntOne.ToPointer(), + IncludeGrabs: components.BoolIntTrue.ToPointer(), + IncludeStorage: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -8771,8 +8879,8 @@ paths: .build(); GetAllSubscriptionsRequest req = GetAllSubscriptionsRequest.builder() - .includeGrabs(BoolInt.ONE) - .includeStorage(BoolInt.ONE) + .includeGrabs(BoolInt.True) + .includeStorage(BoolInt.True) .build(); GetAllSubscriptionsResponse res = sdk.subscriptions().getAllSubscriptions() @@ -8788,7 +8896,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -8802,12 +8910,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.subscriptions.getAllSubscriptions({ - includeGrabs: BoolInt.One, - includeStorage: BoolInt.One, + includeGrabs: BoolInt.True, + includeStorage: BoolInt.True, }); console.log(result); @@ -9014,7 +9123,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -9028,6 +9137,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -9120,7 +9230,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.subscriptions.processSubscriptions(); @@ -9223,7 +9335,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.subscriptions.getScheduledRecordings(); @@ -9405,7 +9519,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -9419,6 +9533,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -9670,9 +9785,9 @@ paths: res, err := s.Transcoder.TranscodeImage(ctx, operations.TranscodeImageRequest{ URL: plexgo.Pointer("/library/metadata/265/thumb/1715112705"), Background: plexgo.Pointer("#ff5522"), - Upscale: components.BoolIntOne.ToPointer(), - MinSize: components.BoolIntOne.ToPointer(), - Rotate: components.BoolIntOne.ToPointer(), + Upscale: components.BoolIntTrue.ToPointer(), + MinSize: components.BoolIntTrue.ToPointer(), + Rotate: components.BoolIntTrue.ToPointer(), BlendColor: plexgo.Pointer("#ff5522"), }) if err != nil { @@ -9716,9 +9831,9 @@ paths: TranscodeImageRequest req = TranscodeImageRequest.builder() .url("/library/metadata/265/thumb/1715112705") .background("#ff5522") - .upscale(BoolInt.ONE) - .minSize(BoolInt.ONE) - .rotate(BoolInt.ONE) + .upscale(BoolInt.True) + .minSize(BoolInt.True) + .rotate(BoolInt.True) .blendColor("#ff5522") .build(); @@ -9735,7 +9850,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -9749,15 +9864,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.transcoder.transcodeImage({ url: "/library/metadata/265/thumb/1715112705", background: "#ff5522", - upscale: BoolInt.One, - minSize: BoolInt.One, - rotate: BoolInt.One, + upscale: BoolInt.True, + minSize: BoolInt.True, + rotate: BoolInt.True, blendColor: "#ff5522", }); @@ -9936,7 +10052,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -9950,6 +10066,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -10135,7 +10252,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -10149,6 +10266,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -10278,7 +10396,7 @@ paths: res, err := s.LibraryPlaylists.UploadPlaylist(ctx, operations.UploadPlaylistRequest{ Path: plexgo.Pointer("/home/barkley/playlist.m3u"), - Force: components.BoolIntOne.ToPointer(), + Force: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -10320,7 +10438,7 @@ paths: UploadPlaylistRequest req = UploadPlaylistRequest.builder() .path("/home/barkley/playlist.m3u") - .force(BoolInt.ONE) + .force(BoolInt.True) .build(); UploadPlaylistResponse res = sdk.libraryPlaylists().uploadPlaylist() @@ -10334,7 +10452,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -10348,15 +10466,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.libraryPlaylists.uploadPlaylist({ + await plexAPI.libraryPlaylists.uploadPlaylist({ path: "/home/barkley/playlist.m3u", - force: BoolInt.One, + force: BoolInt.True, }); - console.log(result); + } run(); @@ -10521,11 +10640,11 @@ paths: res, err := s.PlayQueue.CreatePlayQueue(ctx, operations.CreatePlayQueueRequest{ Type: operations.TypeAudio, - Shuffle: components.BoolIntOne.ToPointer(), - Repeat: components.BoolIntOne.ToPointer(), - Continuous: components.BoolIntOne.ToPointer(), - Recursive: components.BoolIntOne.ToPointer(), - OnDeck: components.BoolIntOne.ToPointer(), + Shuffle: components.BoolIntTrue.ToPointer(), + Repeat: components.BoolIntTrue.ToPointer(), + Continuous: components.BoolIntTrue.ToPointer(), + Recursive: components.BoolIntTrue.ToPointer(), + OnDeck: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -10566,11 +10685,11 @@ paths: CreatePlayQueueRequest req = CreatePlayQueueRequest.builder() .type(Type.AUDIO) - .shuffle(BoolInt.ONE) - .repeat(BoolInt.ONE) - .continuous(BoolInt.ONE) - .recursive(BoolInt.ONE) - .onDeck(BoolInt.ONE) + .shuffle(BoolInt.True) + .repeat(BoolInt.True) + .continuous(BoolInt.True) + .recursive(BoolInt.True) + .onDeck(BoolInt.True) .build(); CreatePlayQueueResponse res = sdk.playQueue().createPlayQueue() @@ -10586,8 +10705,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { CreatePlayQueueType } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { CreatePlayQueueType } from "@lukehagar/plexjs/models/operations"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -10601,16 +10720,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.playQueue.createPlayQueue({ type: CreatePlayQueueType.Audio, - shuffle: BoolInt.One, - repeat: BoolInt.One, - continuous: BoolInt.One, - recursive: BoolInt.One, - onDeck: BoolInt.One, + shuffle: BoolInt.True, + repeat: BoolInt.True, + continuous: BoolInt.True, + recursive: BoolInt.True, + onDeck: BoolInt.True, }); console.log(result); @@ -10770,7 +10890,7 @@ paths: res, err := s.General.GetSourceConnectionInformation(ctx, operations.GetSourceConnectionInformationRequest{ Source: "", - Refresh: components.BoolIntOne.ToPointer(), + Refresh: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -10812,7 +10932,7 @@ paths: GetSourceConnectionInformationRequest req = GetSourceConnectionInformationRequest.builder() .source("") - .refresh(BoolInt.ONE) + .refresh(BoolInt.True) .build(); GetSourceConnectionInformationResponse res = sdk.general().getSourceConnectionInformation() @@ -10828,7 +10948,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -10842,12 +10962,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.general.getSourceConnectionInformation({ source: "", - refresh: BoolInt.One, + refresh: BoolInt.True, }); console.log(result); @@ -11005,8 +11126,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { GetTransientTokenScope, GetTransientTokenType } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { GetTransientTokenScope, GetTransientTokenType } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -11020,6 +11141,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -11184,7 +11306,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -11198,6 +11320,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -11325,7 +11448,7 @@ paths: BottomLeft: plexgo.Pointer("1c425d"), Width: plexgo.Pointer[int64](1920), Height: plexgo.Pointer[int64](1080), - Noise: components.BoolIntOne.ToPointer(), + Noise: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -11372,7 +11495,7 @@ paths: .bottomLeft("1c425d") .width(1920L) .height(1080L) - .noise(BoolInt.ONE) + .noise(BoolInt.True) .build(); GetImageResponse res = sdk.ultraBlur().getImage() @@ -11388,7 +11511,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -11402,6 +11525,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -11412,7 +11536,7 @@ paths: bottomLeft: "1c425d", width: 1920, height: 1080, - noise: BoolInt.One, + noise: BoolInt.True, }); console.log(result); @@ -11561,7 +11685,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.status.listSessions(); @@ -11685,7 +11811,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.status.getBackgroundTasks(); @@ -11985,7 +12113,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -11999,6 +12127,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -12173,7 +12302,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -12187,15 +12316,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.status.terminateSession({ + await plexAPI.status.terminateSession({ sessionId: "cdefghijklmnopqrstuvwxyz", reason: "Stop Playing", }); - console.log(result); + } run(); @@ -12320,8 +12450,8 @@ paths: ) res, err := s.Updater.ApplyUpdates(ctx, operations.ApplyUpdatesRequest{ - Tonight: components.BoolIntOne.ToPointer(), - Skip: components.BoolIntOne.ToPointer(), + Tonight: components.BoolIntTrue.ToPointer(), + Skip: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -12362,8 +12492,8 @@ paths: .build(); ApplyUpdatesRequest req = ApplyUpdatesRequest.builder() - .tonight(BoolInt.ONE) - .skip(BoolInt.ONE) + .tonight(BoolInt.True) + .skip(BoolInt.True) .build(); ApplyUpdatesResponse res = sdk.updater().applyUpdates() @@ -12377,7 +12507,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -12391,15 +12521,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.updater.applyUpdates({ - tonight: BoolInt.One, - skip: BoolInt.One, + await plexAPI.updater.applyUpdates({ + tonight: BoolInt.True, + skip: BoolInt.True, }); - console.log(result); + } run(); @@ -12507,7 +12638,7 @@ paths: ) res, err := s.Updater.CheckUpdates(ctx, operations.CheckUpdatesRequest{ - Download: components.BoolIntOne.ToPointer(), + Download: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -12548,7 +12679,7 @@ paths: .build(); CheckUpdatesRequest req = CheckUpdatesRequest.builder() - .download(BoolInt.ONE) + .download(BoolInt.True) .build(); CheckUpdatesResponse res = sdk.updater().checkUpdates() @@ -12562,7 +12693,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -12576,14 +12707,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.updater.checkUpdates({ - download: BoolInt.One, + await plexAPI.updater.checkUpdates({ + download: BoolInt.True, }); - console.log(result); + } run(); @@ -12765,7 +12897,9 @@ paths: source: |- import { PlexAPI } from "@lukehagar/plexjs"; - const plexAPI = new PlexAPI(); + const plexAPI = new PlexAPI({ + token: "", + }); async function run() { const result = await plexAPI.updater.getUpdatesStatus(); @@ -13066,13 +13200,13 @@ paths: AdvancedSubtitles: components.AdvancedSubtitlesBurn.ToPointer(), AudioBoost: plexgo.Pointer[int64](50), AudioChannelCount: plexgo.Pointer[int64](5), - AutoAdjustQuality: components.BoolIntOne.ToPointer(), - AutoAdjustSubtitle: components.BoolIntOne.ToPointer(), - DirectPlay: components.BoolIntOne.ToPointer(), - DirectStream: components.BoolIntOne.ToPointer(), - DirectStreamAudio: components.BoolIntOne.ToPointer(), - DisableResolutionRotation: components.BoolIntOne.ToPointer(), - HasMDE: components.BoolIntOne.ToPointer(), + AutoAdjustQuality: components.BoolIntTrue.ToPointer(), + AutoAdjustSubtitle: components.BoolIntTrue.ToPointer(), + DirectPlay: components.BoolIntTrue.ToPointer(), + DirectStream: components.BoolIntTrue.ToPointer(), + DirectStreamAudio: components.BoolIntTrue.ToPointer(), + DisableResolutionRotation: components.BoolIntTrue.ToPointer(), + HasMDE: components.BoolIntTrue.ToPointer(), Location: operations.LocationWan.ToPointer(), MediaBufferSize: plexgo.Pointer[int64](102400), MediaIndex: plexgo.Pointer[int64](0), @@ -13132,13 +13266,13 @@ paths: .advancedSubtitles(AdvancedSubtitles.BURN) .audioBoost(50L) .audioChannelCount(5L) - .autoAdjustQuality(BoolInt.ONE) - .autoAdjustSubtitle(BoolInt.ONE) - .directPlay(BoolInt.ONE) - .directStream(BoolInt.ONE) - .directStreamAudio(BoolInt.ONE) - .disableResolutionRotation(BoolInt.ONE) - .hasMDE(BoolInt.ONE) + .autoAdjustQuality(BoolInt.True) + .autoAdjustSubtitle(BoolInt.True) + .directPlay(BoolInt.True) + .directStream(BoolInt.True) + .directStreamAudio(BoolInt.True) + .disableResolutionRotation(BoolInt.True) + .hasMDE(BoolInt.True) .location(Location.WAN) .mediaBufferSize(102400L) .mediaIndex(0L) @@ -13171,8 +13305,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { MakeDecisionLocation, MakeDecisionProtocol } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts, AdvancedSubtitles, BoolInt, TranscodeType } from "@lukehagar/plexjs/sdk/models/shared"; + import { MakeDecisionLocation, MakeDecisionProtocol } from "@lukehagar/plexjs/models/operations"; + import { Accepts, AdvancedSubtitles, BoolInt, TranscodeType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -13186,6 +13320,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -13194,13 +13329,13 @@ paths: advancedSubtitles: AdvancedSubtitles.Burn, audioBoost: 50, audioChannelCount: 5, - autoAdjustQuality: BoolInt.One, - autoAdjustSubtitle: BoolInt.One, - directPlay: BoolInt.One, - directStream: BoolInt.One, - directStreamAudio: BoolInt.One, - disableResolutionRotation: BoolInt.One, - hasMDE: BoolInt.One, + autoAdjustQuality: BoolInt.True, + autoAdjustSubtitle: BoolInt.True, + directPlay: BoolInt.True, + directStream: BoolInt.True, + directStreamAudio: BoolInt.True, + disableResolutionRotation: BoolInt.True, + hasMDE: BoolInt.True, location: MakeDecisionLocation.Wan, mediaBufferSize: 102400, mediaIndex: 0, @@ -13348,7 +13483,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, TranscodeType } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, TranscodeType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -13362,14 +13497,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.transcoder.triggerFallback({ + await plexAPI.transcoder.triggerFallback({ transcodeType: TranscodeType.Audio, }); - console.log(result); + } run(); @@ -13670,13 +13806,13 @@ paths: AdvancedSubtitles: components.AdvancedSubtitlesBurn.ToPointer(), AudioBoost: plexgo.Pointer[int64](50), AudioChannelCount: plexgo.Pointer[int64](5), - AutoAdjustQuality: components.BoolIntOne.ToPointer(), - AutoAdjustSubtitle: components.BoolIntOne.ToPointer(), - DirectPlay: components.BoolIntOne.ToPointer(), - DirectStream: components.BoolIntOne.ToPointer(), - DirectStreamAudio: components.BoolIntOne.ToPointer(), - DisableResolutionRotation: components.BoolIntOne.ToPointer(), - HasMDE: components.BoolIntOne.ToPointer(), + AutoAdjustQuality: components.BoolIntTrue.ToPointer(), + AutoAdjustSubtitle: components.BoolIntTrue.ToPointer(), + DirectPlay: components.BoolIntTrue.ToPointer(), + DirectStream: components.BoolIntTrue.ToPointer(), + DirectStreamAudio: components.BoolIntTrue.ToPointer(), + DisableResolutionRotation: components.BoolIntTrue.ToPointer(), + HasMDE: components.BoolIntTrue.ToPointer(), Location: operations.QueryParamLocationWan.ToPointer(), MediaBufferSize: plexgo.Pointer[int64](102400), MediaIndex: plexgo.Pointer[int64](0), @@ -13736,13 +13872,13 @@ paths: .advancedSubtitles(AdvancedSubtitles.BURN) .audioBoost(50L) .audioChannelCount(5L) - .autoAdjustQuality(BoolInt.ONE) - .autoAdjustSubtitle(BoolInt.ONE) - .directPlay(BoolInt.ONE) - .directStream(BoolInt.ONE) - .directStreamAudio(BoolInt.ONE) - .disableResolutionRotation(BoolInt.ONE) - .hasMDE(BoolInt.ONE) + .autoAdjustQuality(BoolInt.True) + .autoAdjustSubtitle(BoolInt.True) + .directPlay(BoolInt.True) + .directStream(BoolInt.True) + .directStreamAudio(BoolInt.True) + .disableResolutionRotation(BoolInt.True) + .hasMDE(BoolInt.True) .location(QueryParamLocation.WAN) .mediaBufferSize(102400L) .mediaIndex(0L) @@ -13773,8 +13909,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { TranscodeSubtitlesLocation, TranscodeSubtitlesProtocol } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts, AdvancedSubtitles, BoolInt, TranscodeType } from "@lukehagar/plexjs/sdk/models/shared"; + import { TranscodeSubtitlesLocation, TranscodeSubtitlesProtocol } from "@lukehagar/plexjs/models/operations"; + import { Accepts, AdvancedSubtitles, BoolInt, TranscodeType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -13788,21 +13924,22 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.transcoder.transcodeSubtitles({ + await plexAPI.transcoder.transcodeSubtitles({ transcodeType: TranscodeType.Audio, advancedSubtitles: AdvancedSubtitles.Burn, audioBoost: 50, audioChannelCount: 5, - autoAdjustQuality: BoolInt.One, - autoAdjustSubtitle: BoolInt.One, - directPlay: BoolInt.One, - directStream: BoolInt.One, - directStreamAudio: BoolInt.One, - disableResolutionRotation: BoolInt.One, - hasMDE: BoolInt.One, + autoAdjustQuality: BoolInt.True, + autoAdjustSubtitle: BoolInt.True, + directPlay: BoolInt.True, + directStream: BoolInt.True, + directStreamAudio: BoolInt.True, + disableResolutionRotation: BoolInt.True, + hasMDE: BoolInt.True, location: TranscodeSubtitlesLocation.Wan, mediaBufferSize: 102400, mediaIndex: 0, @@ -13822,6 +13959,1382 @@ paths: xPlexClientProfileName: "generic", }); + + } + + run(); + /user: + get: + servers: + - url: 'https://plex.tv/api/v2' + tags: + - Authentication + summary: Get Token Details + description: Get the User data from the provided X-Plex-Token + operationId: getTokenDetails + parameters: + - $ref: "#/components/parameters/accepts" + - $ref: "#/components/parameters/X-Plex-Client-Identifier" + - $ref: "#/components/parameters/X-Plex-Product" + - $ref: "#/components/parameters/X-Plex-Version" + - $ref: "#/components/parameters/X-Plex-Platform" + - $ref: "#/components/parameters/X-Plex-Platform-Version" + - $ref: "#/components/parameters/X-Plex-Device" + - $ref: "#/components/parameters/X-Plex-Model" + - $ref: "#/components/parameters/X-Plex-Device-Vendor" + - $ref: "#/components/parameters/X-Plex-Device-Name" + - $ref: "#/components/parameters/X-Plex-Marketplace" + security: + - token: + - admin + responses: + '200': + description: Logged in user details + content: + application/json: + schema: + $ref: '#/components/schemas/UserPlexAccount' + '400': + description: 'Bad Request - A parameter was not specified, or was specified incorrectly.' + content: + application/json: + schema: + x-speakeasy-name-override: BadRequest + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + format: int32 + example: 1000 + message: + type: string + x-speakeasy-error-message: true + example: X-Plex-Client-Identifier is missing + status: + type: integer + format: int32 + example: 400 + '401': + description: Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + content: + application/json: + schema: + x-speakeasy-name-override: Unauthorized + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + format: int32 + example: 1001 + message: + type: string + x-speakeasy-error-message: true + example: User could not be authenticated + status: + type: integer + format: int32 + example: 401 + x-codeSamples: + - lang: php + label: PlexPHP + source: |- + declare(strict_types=1); + + require 'vendor/autoload.php'; + + use LukeHagar\Plex_API; + + $sdk = Plex_API\PlexAPI::builder() + ->setSecurity( + '' + ) + ->build(); + + + + $response = $sdk->authentication->getTokenDetails( + + ); + + if ($response->userPlexAccount !== null) { + // handle response + } + - lang: ruby + label: PlexRuby + source: |- + require 'plex_ruby_sdk' + + s = ::PlexRubySDK::PlexAPI.new( + security: Models::Shared::Security.new( + access_token: "", + ), + ) + + res = s.authentication.get_token_details() + + if ! res.user_plex_account.nil? + # handle response + end + - lang: go + label: PlexGO + source: |- + package main + + import( + "context" + "github.com/LukeHagar/plexgo/models/components" + "github.com/LukeHagar/plexgo" + "github.com/LukeHagar/plexgo/models/operations" + "log" + ) + + func main() { + ctx := context.Background() + + s := plexgo.New( + plexgo.WithAccepts(components.AcceptsApplicationXML), + plexgo.WithClientIdentifier("abc123"), + plexgo.WithProduct("Plex for Roku"), + plexgo.WithVersion("2.4.1"), + plexgo.WithPlatform("Roku"), + plexgo.WithPlatformVersion("4.3 build 1057"), + plexgo.WithDevice("Roku 3"), + plexgo.WithModel("4200X"), + plexgo.WithDeviceVendor("Roku"), + plexgo.WithDeviceName("Living Room TV"), + plexgo.WithMarketplace("googlePlay"), + plexgo.WithSecurity(""), + ) + + res, err := s.Authentication.GetTokenDetails(ctx, operations.GetTokenDetailsRequest{}) + if err != nil { + log.Fatal(err) + } + if res.UserPlexAccount != nil { + // handle response + } + } + - lang: java + label: PlexJava + source: |- + package hello.world; + + import dev.plexapi.sdk.PlexAPI; + import dev.plexapi.sdk.models.errors.GetTokenDetailsBadRequest; + import dev.plexapi.sdk.models.errors.GetTokenDetailsUnauthorized; + import dev.plexapi.sdk.models.operations.GetTokenDetailsRequest; + import dev.plexapi.sdk.models.operations.GetTokenDetailsResponse; + import dev.plexapi.sdk.models.shared.Accepts; + import java.lang.Exception; + + public class Application { + + public static void main(String[] args) throws GetTokenDetailsBadRequest, GetTokenDetailsUnauthorized, Exception { + + PlexAPI sdk = PlexAPI.builder() + .accepts(Accepts.APPLICATION_XML) + .clientIdentifier("abc123") + .product("Plex for Roku") + .version("2.4.1") + .platform("Roku") + .platformVersion("4.3 build 1057") + .device("Roku 3") + .model("4200X") + .deviceVendor("Roku") + .deviceName("Living Room TV") + .marketplace("googlePlay") + .token(System.getenv().getOrDefault("TOKEN", "")) + .build(); + + GetTokenDetailsRequest req = GetTokenDetailsRequest.builder() + .build(); + + GetTokenDetailsResponse res = sdk.authentication().getTokenDetails() + .request(req) + .call(); + + if (res.userPlexAccount().isPresent()) { + // handle response + } + } + } + - lang: typescript + label: PlexJS + source: |- + import { PlexAPI } from "@lukehagar/plexjs"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; + + const plexAPI = new PlexAPI({ + accepts: Accepts.ApplicationXml, + clientIdentifier: "abc123", + product: "Plex for Roku", + version: "2.4.1", + platform: "Roku", + platformVersion: "4.3 build 1057", + device: "Roku 3", + model: "4200X", + deviceVendor: "Roku", + deviceName: "Living Room TV", + marketplace: "googlePlay", + token: "", + }); + + async function run() { + const result = await plexAPI.authentication.getTokenDetails({}); + + console.log(result); + } + + run(); + /users/signin: + post: + servers: + - url: 'https://plex.tv/api/v2' + security: [] + tags: + - Authentication + summary: Get User Sign In Data + description: Sign in user with username and password and return user data with Plex authentication token + operationId: post-users-sign-in-data + parameters: + - $ref: "#/components/parameters/accepts" + - $ref: "#/components/parameters/X-Plex-Client-Identifier" + - $ref: "#/components/parameters/X-Plex-Product" + - $ref: "#/components/parameters/X-Plex-Version" + - $ref: "#/components/parameters/X-Plex-Platform" + - $ref: "#/components/parameters/X-Plex-Platform-Version" + - $ref: "#/components/parameters/X-Plex-Device" + - $ref: "#/components/parameters/X-Plex-Model" + - $ref: "#/components/parameters/X-Plex-Device-Vendor" + - $ref: "#/components/parameters/X-Plex-Device-Name" + - $ref: "#/components/parameters/X-Plex-Marketplace" + requestBody: + content: + application/x-www-form-urlencoded: + schema: + type: object + required: + - login + - password + properties: + login: + type: string + format: email + example: username@email.com + password: + type: string + format: password + example: password123 + rememberMe: + type: boolean + default: false + verificationCode: + type: string + example: 123456 + description: Login credentials + responses: + '201': + description: Returns the user account data with a valid auth token + content: + application/json: + schema: + allOf: + - $ref: '#/components/schemas/UserPlexAccount' + - type: object + required: + - pastSubscriptions + - trials + properties: + pastSubscriptions: + type: array + items: + title: PastSubscription + type: object + required: + - id + - mode + - renewsAt + - endsAt + - canceled + - gracePeriod + - onHold + - canReactivate + - canUpgrade + - canDowngrade + - canConvert + - type + - transfer + - state + - billing + properties: + id: + type: + - string + - 'null' + mode: + type: + - string + - 'null' + renewsAt: + oneOf: + - $ref: '#/components/schemas/PlexDateTime' + - type: 'null' + endsAt: + oneOf: + - $ref: '#/components/schemas/PlexDateTime' + - type: 'null' + canceled: + type: boolean + example: false + default: false + gracePeriod: + type: boolean + example: false + default: false + onHold: + type: boolean + example: false + default: false + canReactivate: + type: boolean + example: false + default: false + canUpgrade: + type: boolean + example: false + default: false + canDowngrade: + type: boolean + example: false + default: false + canConvert: + type: boolean + example: false + default: false + type: + type: string + example: plexpass + transfer: + type: + - string + - 'null' + state: + example: ended + x-speakeasy-unknown-values: allow + enum: + - ended + billing: + type: object + required: + - internalPaymentMethod + - paymentMethodId + properties: + internalPaymentMethod: + type: object + paymentMethodId: + type: + - integer + - 'null' + trials: + type: array + items: + type: object + '400': + description: 'Bad Request - A parameter was not specified, or was specified incorrectly.' + content: + application/json: + schema: + x-speakeasy-name-override: BadRequest + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + format: int32 + example: 1000 + message: + type: string + x-speakeasy-error-message: true + example: X-Plex-Client-Identifier is missing + status: + type: integer + format: int32 + example: 400 + '401': + description: Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + content: + application/json: + schema: + x-speakeasy-name-override: Unauthorized + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + format: int32 + example: 1001 + message: + type: string + x-speakeasy-error-message: true + example: User could not be authenticated + status: + type: integer + format: int32 + example: 401 + x-codeSamples: + - lang: php + label: PlexPHP + source: |- + declare(strict_types=1); + + require 'vendor/autoload.php'; + + use LukeHagar\Plex_API; + use LukeHagar\Plex_API\Models\Operations; + + $sdk = Plex_API\PlexAPI::builder()->build(); + + $request = new Operations\PostUsersSignInDataRequest( + clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58', + clientName: 'Plex for Roku', + deviceNickname: 'Roku 3', + clientVersion: '2.4.1', + platform: 'Roku', + requestBody: new Operations\PostUsersSignInDataRequestBody( + login: 'username@email.com', + password: 'password123', + verificationCode: '123456', + ), + ); + + $response = $sdk->authentication->postUsersSignInData( + request: $request + ); + + if ($response->userPlexAccount !== null) { + // handle response + } + - lang: ruby + label: PlexRuby + source: |- + require 'plex_ruby_sdk' + + s = ::PlexRubySDK::PlexAPI.new + + req = Models::Operations::PostUsersSignInDataRequest.new( + client_id: "3381b62b-9ab7-4e37-827b-203e9809eb58", + client_name: "Plex for Roku", + device_nickname: "Roku 3", + client_version: "2.4.1", + platform: "Roku", + request_body: Models::Operations::PostUsersSignInDataRequestBody.new( + login: "username@email.com", + password: "password123", + verification_code: "123456", + ), + ) + + res = s.authentication.post_users_sign_in_data(req) + + if ! res.user_plex_account.nil? + # handle response + end + - lang: go + label: PlexGO + source: |- + package main + + import( + "context" + "github.com/LukeHagar/plexgo/models/components" + "github.com/LukeHagar/plexgo" + "github.com/LukeHagar/plexgo/models/operations" + "log" + ) + + func main() { + ctx := context.Background() + + s := plexgo.New( + plexgo.WithAccepts(components.AcceptsApplicationXML), + plexgo.WithClientIdentifier("abc123"), + plexgo.WithProduct("Plex for Roku"), + plexgo.WithVersion("2.4.1"), + plexgo.WithPlatform("Roku"), + plexgo.WithPlatformVersion("4.3 build 1057"), + plexgo.WithDevice("Roku 3"), + plexgo.WithModel("4200X"), + plexgo.WithDeviceVendor("Roku"), + plexgo.WithDeviceName("Living Room TV"), + plexgo.WithMarketplace("googlePlay"), + ) + + res, err := s.Authentication.PostUsersSignInData(ctx, operations.PostUsersSignInDataRequest{ + RequestBody: &operations.PostUsersSignInDataRequestBody{ + Login: "username@email.com", + Password: "password123", + VerificationCode: plexgo.Pointer("123456"), + }, + }) + if err != nil { + log.Fatal(err) + } + if res.UserPlexAccount != nil { + // handle response + } + } + - lang: java + label: PlexJava + source: |- + package hello.world; + + import dev.plexapi.sdk.PlexAPI; + import dev.plexapi.sdk.models.errors.PostUsersSignInDataBadRequest; + import dev.plexapi.sdk.models.errors.PostUsersSignInDataUnauthorized; + import dev.plexapi.sdk.models.operations.*; + import dev.plexapi.sdk.models.shared.Accepts; + import java.lang.Exception; + + public class Application { + + public static void main(String[] args) throws PostUsersSignInDataBadRequest, PostUsersSignInDataUnauthorized, Exception { + + PlexAPI sdk = PlexAPI.builder() + .accepts(Accepts.APPLICATION_XML) + .clientIdentifier("abc123") + .product("Plex for Roku") + .version("2.4.1") + .platform("Roku") + .platformVersion("4.3 build 1057") + .device("Roku 3") + .model("4200X") + .deviceVendor("Roku") + .deviceName("Living Room TV") + .marketplace("googlePlay") + .build(); + + PostUsersSignInDataRequest req = PostUsersSignInDataRequest.builder() + .requestBody(PostUsersSignInDataRequestBody.builder() + .login("username@email.com") + .password("password123") + .verificationCode("123456") + .build()) + .build(); + + PostUsersSignInDataResponse res = sdk.authentication().postUsersSignInData() + .request(req) + .call(); + + if (res.userPlexAccount().isPresent()) { + // handle response + } + } + } + - lang: typescript + label: PlexJS + source: |- + import { PlexAPI } from "@lukehagar/plexjs"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; + + const plexAPI = new PlexAPI({ + accepts: Accepts.ApplicationXml, + clientIdentifier: "abc123", + product: "Plex for Roku", + version: "2.4.1", + platform: "Roku", + platformVersion: "4.3 build 1057", + device: "Roku 3", + model: "4200X", + deviceVendor: "Roku", + deviceName: "Living Room TV", + marketplace: "googlePlay", + }); + + async function run() { + const result = await plexAPI.authentication.postUsersSignInData({ + requestBody: { + login: "username@email.com", + password: "password123", + verificationCode: "123456", + }, + }); + + console.log(result); + } + + run(); + /users: + get: + servers: + - url: 'https://plex.tv/api' + tags: + - Users + security: + - token: + - admin + summary: Get list of all connected users + description: Get list of all users that are friends and have library access with the provided Plex authentication token + operationId: get-users + parameters: + - $ref: "#/components/parameters/accepts" + - $ref: "#/components/parameters/X-Plex-Client-Identifier" + - $ref: "#/components/parameters/X-Plex-Product" + - $ref: "#/components/parameters/X-Plex-Version" + - $ref: "#/components/parameters/X-Plex-Platform" + - $ref: "#/components/parameters/X-Plex-Platform-Version" + - $ref: "#/components/parameters/X-Plex-Device" + - $ref: "#/components/parameters/X-Plex-Model" + - $ref: "#/components/parameters/X-Plex-Device-Vendor" + - $ref: "#/components/parameters/X-Plex-Device-Name" + - $ref: "#/components/parameters/X-Plex-Marketplace" + responses: + '200': + description: Successful response with media container data in JSON + content: + application/json: + schema: + type: object + properties: + MediaContainer: + type: object + description: Container holding user and server details. + required: + - friendlyName + - identifier + - machineIdentifier + - totalSize + - size + - User + properties: + friendlyName: + type: string + description: The friendly name of the Plex instance. + example: myPlex + identifier: + type: string + example: com.plexapp.plugins.myplex + machineIdentifier: + type: string + description: Unique Machine identifier of the Plex server. + example: 3dff4c4da3b1229a649aa574a9e2b419a684a20e + totalSize: + type: integer + description: Total number of users. + example: 30 + size: + type: integer + description: Number of users in the current response. + example: 30 + User: + type: array + description: List of users with access to the Plex server. + items: + type: object + required: + - id + - title + - username + - email + - thumb + - protected + - home + - allowTuners + - allowSync + - allowCameraUpload + - allowChannels + - allowSubtitleAdmin + - restricted + - Server + properties: + id: + type: integer + description: User's unique ID. + example: 22526914 + title: + type: string + description: User's display name. + example: Plex User + username: + type: string + description: User's username. + example: zgfuc7krcqfimrmb9lsl5j + email: + type: string + description: User's email address. + example: zgfuc7krcqfimrmb9lsl5j@protonmail.com + recommendationsPlaylistId: + description: ID of the user's recommendation playlist. + type: + - 'null' + - string + example: '' + thumb: + type: string + description: URL to the user's avatar image. + example: 'https://plex.tv/users/3346028014e93acd/avatar?c=1731605021' + protected: + allOf: + - description: Indicates whether the account is protected. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + home: + allOf: + - description: Indicates if the user is part of a home group. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + allowTuners: + allOf: + - description: Indicates if the user is allowed to use tuners. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + allowSync: + allOf: + - description: Indicates if the user is allowed to sync media. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + allowCameraUpload: + allOf: + - description: Indicates if the user is allowed to upload from a camera. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + allowChannels: + allOf: + - description: Indicates if the user has access to channels. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + allowSubtitleAdmin: + allOf: + - description: Indicates if the user can manage subtitles. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + filterAll: + type: + - 'null' + - string + description: Filters applied for all content. + example: '' + filterMovies: + type: + - 'null' + - string + description: Filters applied for movies. + example: '' + filterMusic: + type: + - 'null' + - string + description: Filters applied for music. + example: '' + filterPhotos: + type: + - 'null' + - string + description: Filters applied for photos. + example: '' + filterTelevision: + type: string + description: Filters applied for television. + example: '' + restricted: + allOf: + - description: Indicates if the user has restricted access. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + Server: + type: array + description: List of servers owned by the user. + items: + type: object + required: + - id + - serverId + - machineIdentifier + - name + - lastSeenAt + - numLibraries + - allLibraries + - owned + - pending + properties: + id: + type: integer + description: Unique ID of the server of the connected user + example: 907759180 + serverId: + type: integer + description: ID of the actual Plex server. + example: 9999999 + machineIdentifier: + type: string + description: Machine identifier of the Plex server. + example: fbb8aa6be6e0c997c6268bc2b4431c8807f70a3 + name: + type: string + description: Name of the Plex server of the connected user. + example: ConnectedUserFlix + lastSeenAt: + $ref: '#/components/schemas/PlexDateTime' + numLibraries: + type: integer + description: Number of libraries in the server this user has access to. + example: 16 + allLibraries: + allOf: + - description: Indicates if the user has access to all libraries. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + owned: + allOf: + - description: Indicates if the user owns the server. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + pending: + allOf: + - description: Indicates if the server is pending approval. + - type: integer + format: int32 + enum: + - 0 + - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - DISABLE + - ENABLE + '400': + description: 'Bad Request - A parameter was not specified, or was specified incorrectly.' + content: + application/json: + schema: + x-speakeasy-name-override: BadRequest + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + format: int32 + example: 1000 + message: + type: string + x-speakeasy-error-message: true + example: X-Plex-Client-Identifier is missing + status: + type: integer + format: int32 + example: 400 + '401': + description: Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + content: + application/json: + schema: + x-speakeasy-name-override: Unauthorized + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + format: int32 + example: 1001 + message: + type: string + x-speakeasy-error-message: true + example: User could not be authenticated + status: + type: integer + format: int32 + example: 401 + x-codeSamples: + - lang: php + label: PlexPHP + source: |- + declare(strict_types=1); + + require 'vendor/autoload.php'; + + use LukeHagar\Plex_API; + use LukeHagar\Plex_API\Models\Operations; + + $sdk = Plex_API\PlexAPI::builder()->build(); + + $request = new Operations\GetUsersRequest( + clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58', + clientName: 'Plex for Roku', + deviceNickname: 'Roku 3', + deviceName: 'Chrome', + deviceScreenResolution: '1487x1165,2560x1440', + clientVersion: '2.4.1', + platform: 'Roku', + clientFeatures: 'external-media,indirect-media,hub-style-list', + model: '4200X', + xPlexSessionId: '97e136ef-4ddd-4ff3-89a7-a5820c96c2ca', + xPlexLanguage: 'en', + platformVersion: '4.3 build 1057', + xPlexToken: 'CV5xoxjTpFKUzBTShsaf', + ); + + $response = $sdk->users->getUsers( + request: $request + ); + + if ($response->body !== null) { + // handle response + } + - lang: ruby + label: PlexRuby + source: |- + require 'plex_ruby_sdk' + + s = ::PlexRubySDK::PlexAPI.new + + req = Models::Operations::GetUsersRequest.new( + client_id: "3381b62b-9ab7-4e37-827b-203e9809eb58", + client_name: "Plex for Roku", + device_nickname: "Roku 3", + device_name: "Chrome", + device_screen_resolution: "1487x1165,2560x1440", + client_version: "2.4.1", + platform: "Roku", + client_features: "external-media,indirect-media,hub-style-list", + model: "4200X", + x_plex_session_id: "97e136ef-4ddd-4ff3-89a7-a5820c96c2ca", + x_plex_language: "en", + platform_version: "4.3 build 1057", + x_plex_token: "CV5xoxjTpFKUzBTShsaf", + ) + + res = s.users.get_users(req) + + if ! res.body.nil? + # handle response + end + - lang: go + label: PlexGO + source: |- + package main + + import( + "context" + "github.com/LukeHagar/plexgo/models/components" + "github.com/LukeHagar/plexgo" + "github.com/LukeHagar/plexgo/models/operations" + "log" + ) + + func main() { + ctx := context.Background() + + s := plexgo.New( + plexgo.WithAccepts(components.AcceptsApplicationXML), + plexgo.WithClientIdentifier("abc123"), + plexgo.WithProduct("Plex for Roku"), + plexgo.WithVersion("2.4.1"), + plexgo.WithPlatform("Roku"), + plexgo.WithPlatformVersion("4.3 build 1057"), + plexgo.WithDevice("Roku 3"), + plexgo.WithModel("4200X"), + plexgo.WithDeviceVendor("Roku"), + plexgo.WithDeviceName("Living Room TV"), + plexgo.WithMarketplace("googlePlay"), + plexgo.WithSecurity(""), + ) + + res, err := s.Users.GetUsers(ctx, operations.GetUsersRequest{}) + if err != nil { + log.Fatal(err) + } + if res.Object != nil { + // handle response + } + } + - lang: java + label: PlexJava + source: |- + package hello.world; + + import dev.plexapi.sdk.PlexAPI; + import dev.plexapi.sdk.models.errors.GetUsersBadRequest; + import dev.plexapi.sdk.models.errors.GetUsersUnauthorized; + import dev.plexapi.sdk.models.operations.GetUsersRequest; + import dev.plexapi.sdk.models.operations.GetUsersResponse; + import dev.plexapi.sdk.models.shared.Accepts; + import java.lang.Exception; + + public class Application { + + public static void main(String[] args) throws GetUsersBadRequest, GetUsersUnauthorized, Exception { + + PlexAPI sdk = PlexAPI.builder() + .accepts(Accepts.APPLICATION_XML) + .clientIdentifier("abc123") + .product("Plex for Roku") + .version("2.4.1") + .platform("Roku") + .platformVersion("4.3 build 1057") + .device("Roku 3") + .model("4200X") + .deviceVendor("Roku") + .deviceName("Living Room TV") + .marketplace("googlePlay") + .token(System.getenv().getOrDefault("TOKEN", "")) + .build(); + + GetUsersRequest req = GetUsersRequest.builder() + .build(); + + GetUsersResponse res = sdk.users().getUsers() + .request(req) + .call(); + + if (res.object().isPresent()) { + // handle response + } + } + } + - lang: typescript + label: PlexJS + source: |- + import { PlexAPI } from "@lukehagar/plexjs"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; + + const plexAPI = new PlexAPI({ + accepts: Accepts.ApplicationXml, + clientIdentifier: "abc123", + product: "Plex for Roku", + version: "2.4.1", + platform: "Roku", + platformVersion: "4.3 build 1057", + device: "Roku 3", + model: "4200X", + deviceVendor: "Roku", + deviceName: "Living Room TV", + marketplace: "googlePlay", + token: "", + }); + + async function run() { + const result = await plexAPI.users.getUsers({}); + + console.log(result); + } + + run(); + /resources: + get: + servers: + - url: 'https://plex.tv/api/v2' + tags: + - Plex + security: + - token: + - admin + summary: Get Server Resources + description: Get Plex server access tokens and server connections + operationId: get-server-resources + parameters: + - $ref: "#/components/parameters/accepts" + - $ref: "#/components/parameters/X-Plex-Client-Identifier" + - name: includeHttps + in: query + description: Include Https entries in the results + schema: + allOf: + - $ref: "#/components/schemas/BoolInt" + - default: 0 + example: 1 + - name: includeRelay + in: query + description: "Include Relay addresses in the results \nE.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400\n" + schema: + allOf: + - $ref: "#/components/schemas/BoolInt" + - default: 0 + example: 1 + - name: includeIPv6 + in: query + description: Include IPv6 entries in the results + schema: + allOf: + - $ref: "#/components/schemas/BoolInt" + - default: 0 + example: 1 + responses: + '200': + description: List of Plex Devices. This includes Plex hosted servers and clients + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/PlexDevice' + '400': + $ref: '#/components/responses/400' + '401': + description: Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + content: + application/json: + schema: + x-speakeasy-name-override: Unauthorized + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: integer + format: int32 + example: 1001 + message: + type: string + x-speakeasy-error-message: true + example: User could not be authenticated + status: + type: integer + format: int32 + example: 401 + x-codeSamples: + - lang: php + label: PlexPHP + source: |- + declare(strict_types=1); + + require 'vendor/autoload.php'; + + use LukeHagar\Plex_API; + use LukeHagar\Plex_API\Models\Operations; + + $sdk = Plex_API\PlexAPI::builder() + ->setSecurity( + '' + ) + ->build(); + + + + $response = $sdk->plex->getServerResources( + clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58', + includeHttps: Operations\IncludeHttps::Enable, + includeRelay: Operations\IncludeRelay::Enable, + includeIPv6: Operations\IncludeIPv6::Enable + + ); + + if ($response->plexDevices !== null) { + // handle response + } + - lang: ruby + label: PlexRuby + source: |- + require 'plex_ruby_sdk' + + s = ::PlexRubySDK::PlexAPI.new( + security: Models::Shared::Security.new( + access_token: "", + ), + ) + + res = s.plex.get_server_resources(client_id="3381b62b-9ab7-4e37-827b-203e9809eb58", include_https=Models::Operations::IncludeHttps::ENABLE, include_relay=Models::Operations::IncludeRelay::ENABLE, include_i_pv6=Models::Operations::IncludeIPv6::ENABLE) + + if ! res.plex_devices.nil? + # handle response + end + - lang: go + label: PlexGO + source: |- + package main + + import( + "context" + "github.com/LukeHagar/plexgo/models/components" + "github.com/LukeHagar/plexgo" + "github.com/LukeHagar/plexgo/models/operations" + "log" + ) + + func main() { + ctx := context.Background() + + s := plexgo.New( + plexgo.WithAccepts(components.AcceptsApplicationXML), + plexgo.WithClientIdentifier("abc123"), + plexgo.WithSecurity(""), + ) + + res, err := s.Plex.GetServerResources(ctx, operations.GetServerResourcesRequest{ + IncludeHTTPS: operations.IncludeHTTPSTrue.ToPointer(), + IncludeRelay: operations.IncludeRelayTrue.ToPointer(), + IncludeIPv6: operations.IncludeIPv6True.ToPointer(), + }) + if err != nil { + log.Fatal(err) + } + if res.PlexDevices != nil { + // handle response + } + } + - lang: java + label: PlexJava + source: |- + package hello.world; + + import dev.plexapi.sdk.PlexAPI; + import dev.plexapi.sdk.models.errors.GetServerResourcesUnauthorized; + import dev.plexapi.sdk.models.operations.*; + import dev.plexapi.sdk.models.shared.Accepts; + import java.lang.Exception; + + public class Application { + + public static void main(String[] args) throws GetServerResourcesUnauthorized, Exception { + + PlexAPI sdk = PlexAPI.builder() + .accepts(Accepts.APPLICATION_XML) + .clientIdentifier("abc123") + .token(System.getenv().getOrDefault("TOKEN", "")) + .build(); + + GetServerResourcesRequest req = GetServerResourcesRequest.builder() + .includeHttps(IncludeHttps.True) + .includeRelay(IncludeRelay.True) + .includeIPv6(IncludeIPv6.True) + .build(); + + GetServerResourcesResponse res = sdk.plex().getServerResources() + .request(req) + .call(); + + if (res.plexDevices().isPresent()) { + // handle response + } + } + } + - lang: typescript + label: PlexJS + source: |- + import { PlexAPI } from "@lukehagar/plexjs"; + import { IncludeHttps, IncludeIPv6, IncludeRelay } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; + + const plexAPI = new PlexAPI({ + accepts: Accepts.ApplicationXml, + clientIdentifier: "abc123", + token: "", + }); + + async function run() { + const result = await plexAPI.plex.getServerResources({ + includeHttps: IncludeHttps.True, + includeRelay: IncludeRelay.True, + includeIPv6: IncludeIPv6.True, + }); + console.log(result); } @@ -13953,7 +15466,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -13967,18 +15480,19 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.activities.cancelActivity({ + await plexAPI.activities.cancelActivity({ activityId: "d6199ba1-fb5e-4cae-bf17-1a5369c1cf1e", }); - console.log(result); + } run(); - /butler/{task}: + /butler/{butlerTask}: delete: summary: Stop a single Butler task operationId: stopTask @@ -14001,7 +15515,7 @@ paths: - $ref: "#/components/parameters/X-Plex-Device-Vendor" - $ref: "#/components/parameters/X-Plex-Device-Name" - $ref: "#/components/parameters/X-Plex-Marketplace" - - name: task + - name: butlerTask description: The task name in: path required: true @@ -14070,7 +15584,7 @@ paths: ) res, err := s.Butler.StopTask(ctx, operations.StopTaskRequest{ - Task: operations.TaskCleanOldBundles, + ButlerTask: operations.ButlerTaskCleanOldBundles, }) if err != nil { log.Fatal(err) @@ -14109,7 +15623,7 @@ paths: .build(); StopTaskRequest req = StopTaskRequest.builder() - .task(Task.CLEAN_OLD_BUNDLES) + .butlerTask(ButlerTask.CLEAN_OLD_BUNDLES) .build(); StopTaskResponse res = sdk.butler().stopTask() @@ -14123,8 +15637,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { StopTaskTask } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { StopTaskButlerTask } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -14138,14 +15652,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.butler.stopTask({ - task: StopTaskTask.CleanOldBundles, + await plexAPI.butler.stopTask({ + butlerTask: StopTaskButlerTask.CleanOldBundles, }); - console.log(result); + } run(); @@ -14171,7 +15686,7 @@ paths: - $ref: "#/components/parameters/X-Plex-Device-Vendor" - $ref: "#/components/parameters/X-Plex-Device-Name" - $ref: "#/components/parameters/X-Plex-Marketplace" - - name: task + - name: butlerTask description: The task name in: path required: true @@ -14246,7 +15761,7 @@ paths: ) res, err := s.Butler.StartTask(ctx, operations.StartTaskRequest{ - Task: operations.PathParamTaskRefreshLocalMedia, + ButlerTask: operations.PathParamButlerTaskRefreshLocalMedia, }) if err != nil { log.Fatal(err) @@ -14285,7 +15800,7 @@ paths: .build(); StartTaskRequest req = StartTaskRequest.builder() - .task(PathParamTask.REFRESH_LOCAL_MEDIA) + .butlerTask(PathParamButlerTask.REFRESH_LOCAL_MEDIA) .build(); StartTaskResponse res = sdk.butler().startTask() @@ -14299,8 +15814,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { StartTaskTask } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { StartTaskButlerTask } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -14314,14 +15829,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.butler.startTask({ - task: StartTaskTask.RefreshLocalMedia, + await plexAPI.butler.startTask({ + butlerTask: StartTaskButlerTask.RefreshLocalMedia, }); - console.log(result); + } run(); @@ -14478,7 +15994,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -14492,6 +16008,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -14633,13 +16150,13 @@ paths: AdvancedSubtitles: components.AdvancedSubtitlesBurn.ToPointer(), AudioBoost: plexgo.Pointer[int64](50), AudioChannelCount: plexgo.Pointer[int64](5), - AutoAdjustQuality: components.BoolIntOne.ToPointer(), - AutoAdjustSubtitle: components.BoolIntOne.ToPointer(), - DirectPlay: components.BoolIntOne.ToPointer(), - DirectStream: components.BoolIntOne.ToPointer(), - DirectStreamAudio: components.BoolIntOne.ToPointer(), - DisableResolutionRotation: components.BoolIntOne.ToPointer(), - HasMDE: components.BoolIntOne.ToPointer(), + AutoAdjustQuality: components.BoolIntTrue.ToPointer(), + AutoAdjustSubtitle: components.BoolIntTrue.ToPointer(), + DirectPlay: components.BoolIntTrue.ToPointer(), + DirectStream: components.BoolIntTrue.ToPointer(), + DirectStreamAudio: components.BoolIntTrue.ToPointer(), + DisableResolutionRotation: components.BoolIntTrue.ToPointer(), + HasMDE: components.BoolIntTrue.ToPointer(), Location: components.LocationWan.ToPointer(), MediaBufferSize: plexgo.Pointer[int64](102400), MediaIndex: plexgo.Pointer[int64](0), @@ -14702,13 +16219,13 @@ paths: .advancedSubtitles(AdvancedSubtitles.BURN) .audioBoost(50L) .audioChannelCount(5L) - .autoAdjustQuality(BoolInt.ONE) - .autoAdjustSubtitle(BoolInt.ONE) - .directPlay(BoolInt.ONE) - .directStream(BoolInt.ONE) - .directStreamAudio(BoolInt.ONE) - .disableResolutionRotation(BoolInt.ONE) - .hasMDE(BoolInt.ONE) + .autoAdjustQuality(BoolInt.True) + .autoAdjustSubtitle(BoolInt.True) + .directPlay(BoolInt.True) + .directStream(BoolInt.True) + .directStreamAudio(BoolInt.True) + .disableResolutionRotation(BoolInt.True) + .hasMDE(BoolInt.True) .location(Location.WAN) .mediaBufferSize(102400L) .mediaIndex(0L) @@ -14739,7 +16256,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, AdvancedSubtitles, BoolInt, LocationParameter, Protocol } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, AdvancedSubtitles, BoolInt, LocationParameter, ProtocolParameter } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -14753,6 +16270,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -14765,13 +16283,13 @@ paths: advancedSubtitles: AdvancedSubtitles.Burn, audioBoost: 50, audioChannelCount: 5, - autoAdjustQuality: BoolInt.One, - autoAdjustSubtitle: BoolInt.One, - directPlay: BoolInt.One, - directStream: BoolInt.One, - directStreamAudio: BoolInt.One, - disableResolutionRotation: BoolInt.One, - hasMDE: BoolInt.One, + autoAdjustQuality: BoolInt.True, + autoAdjustSubtitle: BoolInt.True, + directPlay: BoolInt.True, + directStream: BoolInt.True, + directStreamAudio: BoolInt.True, + disableResolutionRotation: BoolInt.True, + hasMDE: BoolInt.True, location: LocationParameter.Wan, mediaBufferSize: 102400, mediaIndex: 0, @@ -14781,7 +16299,7 @@ paths: path: "/library/metadata/151671", peakBitrate: 12000, photoResolution: "1080x1080", - protocol: Protocol.Dash, + protocol: ProtocolParameter.Dash, secondsPerSegment: 5, subtitleSize: 50, videoBitrate: 12000, @@ -14982,7 +16500,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -14996,6 +16514,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -15079,7 +16598,7 @@ paths: res, err := s.Hubs.GetMetadataHubs(ctx, operations.GetMetadataHubsRequest{ MetadataID: 605482, - OnlyTransient: components.BoolIntOne.ToPointer(), + OnlyTransient: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -15121,7 +16640,7 @@ paths: GetMetadataHubsRequest req = GetMetadataHubsRequest.builder() .metadataId(605482L) - .onlyTransient(BoolInt.ONE) + .onlyTransient(BoolInt.True) .build(); GetMetadataHubsResponse res = sdk.hubs().getMetadataHubs() @@ -15137,7 +16656,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -15151,12 +16670,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.hubs.getMetadataHubs({ metadataId: 605482, - onlyTransient: BoolInt.One, + onlyTransient: BoolInt.True, }); console.log(result); @@ -15235,7 +16755,7 @@ paths: res, err := s.Hubs.GetPostplayHubs(ctx, operations.GetPostplayHubsRequest{ MetadataID: 441419, - OnlyTransient: components.BoolIntOne.ToPointer(), + OnlyTransient: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -15277,7 +16797,7 @@ paths: GetPostplayHubsRequest req = GetPostplayHubsRequest.builder() .metadataId(441419L) - .onlyTransient(BoolInt.ONE) + .onlyTransient(BoolInt.True) .build(); GetPostplayHubsResponse res = sdk.hubs().getPostplayHubs() @@ -15293,7 +16813,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -15307,12 +16827,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.hubs.getPostplayHubs({ metadataId: 441419, - onlyTransient: BoolInt.One, + onlyTransient: BoolInt.True, }); console.log(result); @@ -15391,7 +16912,7 @@ paths: res, err := s.Hubs.GetRelatedHubs(ctx, operations.GetRelatedHubsRequest{ MetadataID: 8858, - OnlyTransient: components.BoolIntOne.ToPointer(), + OnlyTransient: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -15433,7 +16954,7 @@ paths: GetRelatedHubsRequest req = GetRelatedHubsRequest.builder() .metadataId(8858L) - .onlyTransient(BoolInt.ONE) + .onlyTransient(BoolInt.True) .build(); GetRelatedHubsResponse res = sdk.hubs().getRelatedHubs() @@ -15449,7 +16970,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -15463,12 +16984,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.hubs.getRelatedHubs({ metadataId: 8858, - onlyTransient: BoolInt.One, + onlyTransient: BoolInt.True, }); console.log(result); @@ -15610,7 +17132,7 @@ paths: res, err := s.Hubs.GetSectionHubs(ctx, operations.GetSectionHubsRequest{ SectionID: 336924, - OnlyTransient: components.BoolIntOne.ToPointer(), + OnlyTransient: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -15652,7 +17174,7 @@ paths: GetSectionHubsRequest req = GetSectionHubsRequest.builder() .sectionId(336924L) - .onlyTransient(BoolInt.ONE) + .onlyTransient(BoolInt.True) .build(); GetSectionHubsResponse res = sdk.hubs().getSectionHubs() @@ -15668,7 +17190,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -15682,12 +17204,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.hubs.getSectionHubs({ sectionId: 336924, - onlyTransient: BoolInt.One, + onlyTransient: BoolInt.True, }); console.log(result); @@ -15818,7 +17341,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -15832,14 +17355,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.hubs.resetSectionDefaults({ + await plexAPI.hubs.resetSectionDefaults({ sectionId: 383022, }); - console.log(result); + } run(); @@ -16038,7 +17562,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -16052,6 +17576,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -16159,9 +17684,9 @@ paths: res, err := s.Hubs.CreateCustomHub(ctx, operations.CreateCustomHubRequest{ SectionID: 869922, MetadataItemID: 703843, - PromotedToRecommended: components.BoolIntOne.ToPointer(), - PromotedToOwnHome: components.BoolIntOne.ToPointer(), - PromotedToSharedHome: components.BoolIntOne.ToPointer(), + PromotedToRecommended: components.BoolIntTrue.ToPointer(), + PromotedToOwnHome: components.BoolIntTrue.ToPointer(), + PromotedToSharedHome: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -16204,9 +17729,9 @@ paths: CreateCustomHubRequest req = CreateCustomHubRequest.builder() .sectionId(869922L) .metadataItemId(703843L) - .promotedToRecommended(BoolInt.ONE) - .promotedToOwnHome(BoolInt.ONE) - .promotedToSharedHome(BoolInt.ONE) + .promotedToRecommended(BoolInt.True) + .promotedToOwnHome(BoolInt.True) + .promotedToSharedHome(BoolInt.True) .build(); CreateCustomHubResponse res = sdk.hubs().createCustomHub() @@ -16220,7 +17745,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -16234,18 +17759,19 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.hubs.createCustomHub({ + await plexAPI.hubs.createCustomHub({ sectionId: 869922, metadataItemId: 703843, - promotedToRecommended: BoolInt.One, - promotedToOwnHome: BoolInt.One, - promotedToSharedHome: BoolInt.One, + promotedToRecommended: BoolInt.True, + promotedToOwnHome: BoolInt.True, + promotedToSharedHome: BoolInt.True, }); - console.log(result); + } run(); @@ -16388,7 +17914,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -16402,6 +17928,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -16539,7 +18066,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -16553,6 +18080,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -16699,7 +18227,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -16713,6 +18241,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -16798,7 +18327,7 @@ paths: res, err := s.Library.DeleteMetadataItem(ctx, operations.DeleteMetadataItemRequest{ Ids: "", - Proxy: components.BoolIntOne.ToPointer(), + Proxy: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -16840,7 +18369,7 @@ paths: DeleteMetadataItemRequest req = DeleteMetadataItemRequest.builder() .ids("") - .proxy(BoolInt.ONE) + .proxy(BoolInt.True) .build(); DeleteMetadataItemResponse res = sdk.library().deleteMetadataItem() @@ -16854,7 +18383,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -16868,15 +18397,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.deleteMetadataItem({ + await plexAPI.library.deleteMetadataItem({ ids: "", - proxy: BoolInt.One, + proxy: BoolInt.True, }); - console.log(result); + } run(); @@ -16995,14 +18525,14 @@ paths: res, err := s.Content.GetMetadataItem(ctx, operations.GetMetadataItemRequest{ Ids: []string{}, - AsyncCheckFiles: components.BoolIntOne.ToPointer(), - AsyncRefreshLocalMediaAgent: components.BoolIntOne.ToPointer(), - AsyncRefreshAnalysis: components.BoolIntOne.ToPointer(), - CheckFiles: components.BoolIntOne.ToPointer(), - SkipRefresh: components.BoolIntOne.ToPointer(), - CheckFileAvailability: components.BoolIntOne.ToPointer(), - AsyncAugmentMetadata: components.BoolIntOne.ToPointer(), - AugmentCount: components.BoolIntOne.ToPointer(), + AsyncCheckFiles: components.BoolIntTrue.ToPointer(), + AsyncRefreshLocalMediaAgent: components.BoolIntTrue.ToPointer(), + AsyncRefreshAnalysis: components.BoolIntTrue.ToPointer(), + CheckFiles: components.BoolIntTrue.ToPointer(), + SkipRefresh: components.BoolIntTrue.ToPointer(), + CheckFileAvailability: components.BoolIntTrue.ToPointer(), + AsyncAugmentMetadata: components.BoolIntTrue.ToPointer(), + AugmentCount: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -17045,14 +18575,14 @@ paths: GetMetadataItemRequest req = GetMetadataItemRequest.builder() .ids(List.of()) - .asyncCheckFiles(BoolInt.ONE) - .asyncRefreshLocalMediaAgent(BoolInt.ONE) - .asyncRefreshAnalysis(BoolInt.ONE) - .checkFiles(BoolInt.ONE) - .skipRefresh(BoolInt.ONE) - .checkFileAvailability(BoolInt.ONE) - .asyncAugmentMetadata(BoolInt.ONE) - .augmentCount(BoolInt.ONE) + .asyncCheckFiles(BoolInt.True) + .asyncRefreshLocalMediaAgent(BoolInt.True) + .asyncRefreshAnalysis(BoolInt.True) + .checkFiles(BoolInt.True) + .skipRefresh(BoolInt.True) + .checkFileAvailability(BoolInt.True) + .asyncAugmentMetadata(BoolInt.True) + .augmentCount(BoolInt.True) .build(); GetMetadataItemResponse res = sdk.content().getMetadataItem() @@ -17068,7 +18598,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -17082,19 +18612,20 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.content.getMetadataItem({ ids: [], - asyncCheckFiles: BoolInt.One, - asyncRefreshLocalMediaAgent: BoolInt.One, - asyncRefreshAnalysis: BoolInt.One, - checkFiles: BoolInt.One, - skipRefresh: BoolInt.One, - checkFileAvailability: BoolInt.One, - asyncAugmentMetadata: BoolInt.One, - augmentCount: BoolInt.One, + asyncCheckFiles: BoolInt.True, + asyncRefreshLocalMediaAgent: BoolInt.True, + asyncRefreshAnalysis: BoolInt.True, + checkFiles: BoolInt.True, + skipRefresh: BoolInt.True, + checkFileAvailability: BoolInt.True, + asyncAugmentMetadata: BoolInt.True, + augmentCount: BoolInt.True, }); console.log(result); @@ -17234,7 +18765,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -17248,17 +18779,18 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.editMetadataItem({ + await plexAPI.library.editMetadataItem({ ids: [ "", "", ], }); - console.log(result); + } run(); @@ -17379,7 +18911,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -17393,14 +18925,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.detectAds({ + await plexAPI.library.detectAds({ ids: "", }); - console.log(result); + } run(); @@ -17533,7 +19066,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -17547,6 +19080,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -17687,7 +19221,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -17701,14 +19235,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.analyzeMetadata({ + await plexAPI.library.analyzeMetadata({ ids: "", }); - console.log(result); + } run(); @@ -17781,7 +19316,7 @@ paths: res, err := s.Library.GenerateThumbs(ctx, operations.GenerateThumbsRequest{ Ids: "", - Force: components.BoolIntOne.ToPointer(), + Force: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -17823,7 +19358,7 @@ paths: GenerateThumbsRequest req = GenerateThumbsRequest.builder() .ids("") - .force(BoolInt.ONE) + .force(BoolInt.True) .build(); GenerateThumbsResponse res = sdk.library().generateThumbs() @@ -17837,7 +19372,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -17851,15 +19386,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.generateThumbs({ + await plexAPI.library.generateThumbs({ ids: "", - force: BoolInt.One, + force: BoolInt.True, }); - console.log(result); + } run(); @@ -17937,8 +19473,8 @@ paths: res, err := s.Library.DetectCredits(ctx, operations.DetectCreditsRequest{ Ids: "", - Force: components.BoolIntOne.ToPointer(), - Manual: components.BoolIntOne.ToPointer(), + Force: components.BoolIntTrue.ToPointer(), + Manual: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -17980,8 +19516,8 @@ paths: DetectCreditsRequest req = DetectCreditsRequest.builder() .ids("") - .force(BoolInt.ONE) - .manual(BoolInt.ONE) + .force(BoolInt.True) + .manual(BoolInt.True) .build(); DetectCreditsResponse res = sdk.library().detectCredits() @@ -17995,7 +19531,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -18009,16 +19545,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.detectCredits({ + await plexAPI.library.detectCredits({ ids: "", - force: BoolInt.One, - manual: BoolInt.One, + force: BoolInt.True, + manual: BoolInt.True, }); - console.log(result); + } run(); @@ -18151,7 +19688,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -18165,6 +19702,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -18307,7 +19845,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -18321,15 +19859,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.addExtras({ + await plexAPI.library.addExtras({ ids: "", url: "https://super-mortise.biz/", }); - console.log(result); + } run(); @@ -18463,7 +20002,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -18477,6 +20016,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -18557,7 +20097,7 @@ paths: res, err := s.Library.StartBifGeneration(ctx, operations.StartBifGenerationRequest{ Ids: "", - Force: components.BoolIntOne.ToPointer(), + Force: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -18599,7 +20139,7 @@ paths: StartBifGenerationRequest req = StartBifGenerationRequest.builder() .ids("") - .force(BoolInt.ONE) + .force(BoolInt.True) .build(); StartBifGenerationResponse res = sdk.library().startBifGeneration() @@ -18613,7 +20153,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -18627,15 +20167,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.startBifGeneration({ + await plexAPI.library.startBifGeneration({ ids: "", - force: BoolInt.One, + force: BoolInt.True, }); - console.log(result); + } run(); @@ -18715,7 +20256,7 @@ paths: res, err := s.Library.DetectIntros(ctx, operations.DetectIntrosRequest{ Ids: "", - Force: components.BoolIntOne.ToPointer(), + Force: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -18757,7 +20298,7 @@ paths: DetectIntrosRequest req = DetectIntrosRequest.builder() .ids("") - .force(BoolInt.ONE) + .force(BoolInt.True) .build(); DetectIntrosResponse res = sdk.library().detectIntros() @@ -18771,7 +20312,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -18785,15 +20326,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.detectIntros({ + await plexAPI.library.detectIntros({ ids: "", - force: BoolInt.One, + force: BoolInt.True, }); - console.log(result); + } run(); @@ -18977,7 +20519,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -18991,6 +20533,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -19136,7 +20679,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -19150,14 +20693,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.matchItem({ + await plexAPI.library.matchItem({ ids: "", }); - console.log(result); + } run(); @@ -19258,7 +20802,7 @@ paths: res, err := s.Library.ListMatches(ctx, operations.ListMatchesRequest{ Ids: "", - Manual: components.BoolIntOne.ToPointer(), + Manual: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -19300,7 +20844,7 @@ paths: ListMatchesRequest req = ListMatchesRequest.builder() .ids("") - .manual(BoolInt.ONE) + .manual(BoolInt.True) .build(); ListMatchesResponse res = sdk.library().listMatches() @@ -19316,7 +20860,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -19330,12 +20874,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.library.listMatches({ ids: "", - manual: BoolInt.One, + manual: BoolInt.True, }); console.log(result); @@ -19475,7 +21020,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -19489,14 +21034,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.mergeItems({ + await plexAPI.library.mergeItems({ idsPathParameter: "", }); - console.log(result); + } run(); @@ -19640,7 +21186,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -19654,6 +21200,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -19786,7 +21333,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -19800,14 +21347,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.setItemPreferences({ + await plexAPI.library.setItemPreferences({ ids: "", }); - console.log(result); + } run(); @@ -19885,7 +21433,7 @@ paths: res, err := s.Library.RefreshItemsMetadata(ctx, operations.RefreshItemsMetadataRequest{ Ids: "", - MarkUpdated: components.BoolIntOne.ToPointer(), + MarkUpdated: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -19927,7 +21475,7 @@ paths: RefreshItemsMetadataRequest req = RefreshItemsMetadataRequest.builder() .ids("") - .markUpdated(BoolInt.ONE) + .markUpdated(BoolInt.True) .build(); RefreshItemsMetadataResponse res = sdk.library().refreshItemsMetadata() @@ -19941,7 +21489,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -19955,15 +21503,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.refreshItemsMetadata({ + await plexAPI.library.refreshItemsMetadata({ ids: "", - markUpdated: BoolInt.One, + markUpdated: BoolInt.True, }); - console.log(result); + } run(); @@ -20097,7 +21646,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -20111,6 +21660,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -20243,7 +21793,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -20257,6 +21807,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -20385,7 +21936,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -20399,14 +21950,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.splitItem({ + await plexAPI.library.splitItem({ ids: "", }); - console.log(result); + } run(); @@ -20510,8 +22062,8 @@ paths: res, err := s.Library.AddSubtitles(ctx, operations.AddSubtitlesRequest{ Ids: "", - Forced: components.BoolIntOne.ToPointer(), - HearingImpaired: components.BoolIntOne.ToPointer(), + Forced: components.BoolIntTrue.ToPointer(), + HearingImpaired: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -20553,8 +22105,8 @@ paths: AddSubtitlesRequest req = AddSubtitlesRequest.builder() .ids("") - .forced(BoolInt.ONE) - .hearingImpaired(BoolInt.ONE) + .forced(BoolInt.True) + .hearingImpaired(BoolInt.True) .build(); AddSubtitlesResponse res = sdk.library().addSubtitles() @@ -20568,7 +22120,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -20582,16 +22134,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.addSubtitles({ + await plexAPI.library.addSubtitles({ ids: "", - forced: BoolInt.One, - hearingImpaired: BoolInt.One, + forced: BoolInt.True, + hearingImpaired: BoolInt.True, }); - console.log(result); + } run(); @@ -20715,7 +22268,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -20729,6 +22282,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -20857,7 +22411,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -20871,14 +22425,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.unmatch({ + await plexAPI.library.unmatch({ ids: "", }); - console.log(result); + } run(); @@ -21020,7 +22575,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -21034,6 +22589,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -21121,8 +22677,8 @@ paths: res, err := s.Library.DetectVoiceActivity(ctx, operations.DetectVoiceActivityRequest{ Ids: "", - Force: components.BoolIntOne.ToPointer(), - Manual: components.BoolIntOne.ToPointer(), + Force: components.BoolIntTrue.ToPointer(), + Manual: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -21164,8 +22720,8 @@ paths: DetectVoiceActivityRequest req = DetectVoiceActivityRequest.builder() .ids("") - .force(BoolInt.ONE) - .manual(BoolInt.ONE) + .force(BoolInt.True) + .manual(BoolInt.True) .build(); DetectVoiceActivityResponse res = sdk.library().detectVoiceActivity() @@ -21179,7 +22735,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -21193,16 +22749,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.detectVoiceActivity({ + await plexAPI.library.detectVoiceActivity({ ids: "", - force: BoolInt.One, - manual: BoolInt.One, + force: BoolInt.True, + manual: BoolInt.True, }); - console.log(result); + } run(); @@ -21281,7 +22838,7 @@ paths: res, err := s.Library.GetAugmentationStatus(ctx, operations.GetAugmentationStatusRequest{ AugmentationID: "", - Wait: components.BoolIntOne.ToPointer(), + Wait: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -21323,7 +22880,7 @@ paths: GetAugmentationStatusRequest req = GetAugmentationStatusRequest.builder() .augmentationId("") - .wait_(BoolInt.ONE) + .wait_(BoolInt.True) .build(); GetAugmentationStatusResponse res = sdk.library().getAugmentationStatus() @@ -21337,7 +22894,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -21351,15 +22908,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.getAugmentationStatus({ + await plexAPI.library.getAugmentationStatus({ augmentationId: "", - wait: BoolInt.One, + wait: BoolInt.True, }); - console.log(result); + } run(); @@ -21444,7 +23002,7 @@ paths: res, err := s.Library.SetStreamSelection(ctx, operations.SetStreamSelectionRequest{ PartID: 360489, - AllParts: components.BoolIntOne.ToPointer(), + AllParts: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -21486,7 +23044,7 @@ paths: SetStreamSelectionRequest req = SetStreamSelectionRequest.builder() .partId(360489L) - .allParts(BoolInt.ONE) + .allParts(BoolInt.True) .build(); SetStreamSelectionResponse res = sdk.library().setStreamSelection() @@ -21500,7 +23058,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -21514,15 +23072,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.setStreamSelection({ + await plexAPI.library.setStreamSelection({ partId: 360489, - allParts: BoolInt.One, + allParts: BoolInt.True, }); - console.log(result); + } run(); @@ -21659,7 +23218,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -21673,6 +23232,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -21807,7 +23367,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -21821,6 +23381,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -21902,7 +23463,7 @@ paths: res, err := s.Library.DeleteLibrarySection(ctx, operations.DeleteLibrarySectionRequest{ SectionID: "", - Async: components.BoolIntOne.ToPointer(), + Async: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -21944,7 +23505,7 @@ paths: DeleteLibrarySectionRequest req = DeleteLibrarySectionRequest.builder() .sectionId("") - .async(BoolInt.ONE) + .async(BoolInt.True) .build(); DeleteLibrarySectionResponse res = sdk.library().deleteLibrarySection() @@ -21958,7 +23519,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -21972,15 +23533,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.deleteLibrarySection({ + await plexAPI.library.deleteLibrarySection({ sectionId: "", - async: BoolInt.One, + async: BoolInt.True, }); - console.log(result); + } run(); @@ -22092,7 +23654,7 @@ paths: res, err := s.Library.GetLibraryDetails(ctx, operations.GetLibraryDetailsRequest{ SectionID: "", - IncludeDetails: components.BoolIntOne.ToPointer(), + IncludeDetails: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -22134,7 +23696,7 @@ paths: GetLibraryDetailsRequest req = GetLibraryDetailsRequest.builder() .sectionId("") - .includeDetails(BoolInt.ONE) + .includeDetails(BoolInt.True) .build(); GetLibraryDetailsResponse res = sdk.library().getLibraryDetails() @@ -22150,7 +23712,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -22164,12 +23726,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.library.getLibraryDetails({ sectionId: "", - includeDetails: BoolInt.One, + includeDetails: BoolInt.True, }); console.log(result); @@ -22354,7 +23917,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -22368,10 +23931,11 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.editSection({ + await plexAPI.library.editSection({ sectionId: "", agent: "", locations: [ @@ -22381,7 +23945,7 @@ paths: prefs: {}, }); - console.log(result); + } run(); @@ -22551,7 +24115,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -22565,6 +24129,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -22595,7 +24160,21 @@ paths: - $ref: "#/components/parameters/X-Plex-Device-Vendor" - $ref: "#/components/parameters/X-Plex-Device-Name" - $ref: "#/components/parameters/X-Plex-Marketplace" + - $ref: "#/components/parameters/X-Plex-Container-Start" + - $ref: "#/components/parameters/X-Plex-Container-Size" - $ref: '#/components/parameters/mediaQuery' + - name: includeMeta + in: query + description: | + Adds the Meta object to the response + schema: + $ref: "#/components/schemas/BoolInt" + - name: includeGuids + in: query + description: | + Adds the Guid object to the response + schema: + $ref: "#/components/schemas/BoolInt" - name: sectionId description: The id of the section in: path @@ -22607,13 +24186,9 @@ paths: description: OK headers: X-Plex-Container-Start: - description: Provided on all MediaContainer objects indicating the offset of where this container page starts - schema: - type: integer + $ref: '#/components/headers/X-Plex-Container-Start' X-Plex-Container-Total-Size: - description: Provided on all MediaContainer objects indicating the total size of objects available - schema: - type: integer + $ref: '#/components/headers/X-Plex-Container-Total-Size' content: application/json: schema: @@ -22651,6 +24226,13 @@ paths: ) res, err := s.Content.ListContent(ctx, operations.ListContentRequest{ + MediaQuery: &components.MediaQuery{ + Type: components.MediaTypeEpisode.ToPointer(), + SourceType: plexgo.Pointer[int64](2), + Sort: plexgo.Pointer("duration:desc,index"), + }, + IncludeMeta: components.BoolIntTrue.ToPointer(), + IncludeGuids: components.BoolIntTrue.ToPointer(), SectionID: "", }) if err != nil { @@ -22668,7 +24250,7 @@ paths: import dev.plexapi.sdk.PlexAPI; import dev.plexapi.sdk.models.operations.ListContentRequest; import dev.plexapi.sdk.models.operations.ListContentResponse; - import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.*; import java.lang.Exception; public class Application { @@ -22692,6 +24274,13 @@ paths: ListContentRequest req = ListContentRequest.builder() .sectionId("") + .mediaQuery(MediaQuery.builder() + .type(MediaType.Episode) + .sourceType(2L) + .sort("duration:desc,index") + .build()) + .includeMeta(BoolInt.True) + .includeGuids(BoolInt.True) .build(); ListContentResponse res = sdk.content().listContent() @@ -22707,7 +24296,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -22721,10 +24310,18 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.content.listContent({ + mediaQuery: { + type: MediaType.Episode, + sourceType: 2, + sort: "duration:desc,index", + }, + includeMeta: BoolInt.True, + includeGuids: BoolInt.True, sectionId: "", }); @@ -22914,7 +24511,7 @@ paths: res, err := s.Library.UpdateItems(ctx, operations.UpdateItemsRequest{ SectionID: "", - FieldLocked: components.BoolIntOne.ToPointer(), + FieldLocked: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -22956,7 +24553,7 @@ paths: UpdateItemsRequest req = UpdateItemsRequest.builder() .sectionId("") - .fieldLocked(BoolInt.ONE) + .fieldLocked(BoolInt.True) .build(); UpdateItemsResponse res = sdk.library().updateItems() @@ -22970,7 +24567,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -22984,15 +24581,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.updateItems({ + await plexAPI.library.updateItems({ sectionId: "", - fieldLocked: BoolInt.One, + fieldLocked: BoolInt.True, }); - console.log(result); + } run(); @@ -23196,7 +24794,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -23210,6 +24808,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -23339,7 +24938,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -23353,14 +24952,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.startAnalysis({ + await plexAPI.library.startAnalysis({ sectionId: 158829, }); - console.log(result); + } run(); @@ -23485,7 +25085,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -23499,6 +25099,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -23602,6 +25203,11 @@ paths: res, err := s.Library.Autocomplete(ctx, operations.AutocompleteRequest{ SectionID: 942007, + MediaQuery: &components.MediaQuery{ + Type: components.MediaTypeEpisode.ToPointer(), + SourceType: plexgo.Pointer[int64](2), + Sort: plexgo.Pointer("duration:desc,index"), + }, }) if err != nil { log.Fatal(err) @@ -23618,7 +25224,7 @@ paths: import dev.plexapi.sdk.PlexAPI; import dev.plexapi.sdk.models.operations.AutocompleteRequest; import dev.plexapi.sdk.models.operations.AutocompleteResponse; - import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.*; import java.lang.Exception; public class Application { @@ -23642,6 +25248,11 @@ paths: AutocompleteRequest req = AutocompleteRequest.builder() .sectionId(942007L) + .mediaQuery(MediaQuery.builder() + .type(MediaType.Episode) + .sourceType(2L) + .sort("duration:desc,index") + .build()) .build(); AutocompleteResponse res = sdk.library().autocomplete() @@ -23657,7 +25268,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -23671,11 +25282,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.library.autocomplete({ sectionId: 942007, + mediaQuery: { + type: MediaType.Episode, + sourceType: 2, + sort: "duration:desc,index", + }, }); console.log(result); @@ -23803,7 +25420,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -23817,6 +25434,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -23949,7 +25567,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -23963,6 +25581,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -24050,6 +25669,11 @@ paths: res, err := s.Library.GetCollections(ctx, operations.GetCollectionsRequest{ SectionID: 348838, + MediaQuery: &components.MediaQuery{ + Type: components.MediaTypeEpisode.ToPointer(), + SourceType: plexgo.Pointer[int64](2), + Sort: plexgo.Pointer("duration:desc,index"), + }, }) if err != nil { log.Fatal(err) @@ -24066,7 +25690,7 @@ paths: import dev.plexapi.sdk.PlexAPI; import dev.plexapi.sdk.models.operations.GetCollectionsRequest; import dev.plexapi.sdk.models.operations.GetCollectionsResponse; - import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.*; import java.lang.Exception; public class Application { @@ -24090,6 +25714,11 @@ paths: GetCollectionsRequest req = GetCollectionsRequest.builder() .sectionId(348838L) + .mediaQuery(MediaQuery.builder() + .type(MediaType.Episode) + .sourceType(2L) + .sort("duration:desc,index") + .build()) .build(); GetCollectionsResponse res = sdk.library().getCollections() @@ -24105,7 +25734,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -24119,11 +25748,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.library.getCollections({ sectionId: 348838, + mediaQuery: { + type: MediaType.Episode, + sourceType: 2, + sort: "duration:desc,index", + }, }); console.log(result); @@ -24217,6 +25852,11 @@ paths: res, err := s.Library.GetCommon(ctx, operations.GetCommonRequest{ SectionID: 298154, + MediaQuery: &components.MediaQuery{ + Type: components.MediaTypeEpisode.ToPointer(), + SourceType: plexgo.Pointer[int64](2), + Sort: plexgo.Pointer("duration:desc,index"), + }, }) if err != nil { log.Fatal(err) @@ -24233,7 +25873,7 @@ paths: import dev.plexapi.sdk.PlexAPI; import dev.plexapi.sdk.models.operations.GetCommonRequest; import dev.plexapi.sdk.models.operations.GetCommonResponse; - import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.*; import java.lang.Exception; public class Application { @@ -24257,6 +25897,11 @@ paths: GetCommonRequest req = GetCommonRequest.builder() .sectionId(298154L) + .mediaQuery(MediaQuery.builder() + .type(MediaType.Episode) + .sourceType(2L) + .sort("duration:desc,index") + .build()) .build(); GetCommonResponse res = sdk.library().getCommon() @@ -24272,7 +25917,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -24286,11 +25931,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.library.getCommon({ sectionId: 298154, + mediaQuery: { + type: MediaType.Episode, + sourceType: 2, + sort: "duration:desc,index", + }, }); console.log(result); @@ -24440,7 +26091,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -24454,6 +26105,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -24585,7 +26237,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -24599,14 +26251,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.emptyTrash({ + await plexAPI.library.emptyTrash({ sectionId: 30052, }); - console.log(result); + } run(); @@ -24744,7 +26397,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -24758,6 +26411,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -24864,6 +26518,11 @@ paths: res, err := s.Library.GetFirstCharacters(ctx, operations.GetFirstCharactersRequest{ SectionID: 3947, + MediaQuery: &components.MediaQuery{ + Type: components.MediaTypeEpisode.ToPointer(), + SourceType: plexgo.Pointer[int64](2), + Sort: plexgo.Pointer("duration:desc,index"), + }, }) if err != nil { log.Fatal(err) @@ -24880,7 +26539,7 @@ paths: import dev.plexapi.sdk.PlexAPI; import dev.plexapi.sdk.models.operations.GetFirstCharactersRequest; import dev.plexapi.sdk.models.operations.GetFirstCharactersResponse; - import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.*; import java.lang.Exception; public class Application { @@ -24904,6 +26563,11 @@ paths: GetFirstCharactersRequest req = GetFirstCharactersRequest.builder() .sectionId(3947L) + .mediaQuery(MediaQuery.builder() + .type(MediaType.Episode) + .sourceType(2L) + .sort("duration:desc,index") + .build()) .build(); GetFirstCharactersResponse res = sdk.library().getFirstCharacters() @@ -24919,7 +26583,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -24933,11 +26597,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.library.getFirstCharacters({ sectionId: 3947, + mediaQuery: { + type: MediaType.Episode, + sourceType: 2, + sort: "duration:desc,index", + }, }); console.log(result); @@ -25062,7 +26732,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -25076,14 +26746,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.deleteIndexes({ + await plexAPI.library.deleteIndexes({ sectionId: 588437, }); - console.log(result); + } run(); @@ -25205,7 +26876,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -25219,14 +26890,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.deleteIntros({ + await plexAPI.library.deleteIntros({ sectionId: 498656, }); - console.log(result); + } run(); @@ -25368,7 +27040,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -25382,6 +27054,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -25514,7 +27187,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -25528,6 +27201,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -25689,7 +27363,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -25703,6 +27377,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -25840,7 +27515,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -25854,6 +27529,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -25992,7 +27668,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -26006,15 +27682,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.setSectionPreferences({ + await plexAPI.library.setSectionPreferences({ sectionId: 349936, prefs: {}, }); - console.log(result); + } run(); @@ -26136,7 +27813,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -26150,14 +27827,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.cancelRefresh({ + await plexAPI.library.cancelRefresh({ sectionId: 326852, }); - console.log(result); + } run(); @@ -26235,7 +27913,7 @@ paths: res, err := s.Library.RefreshSection(ctx, operations.RefreshSectionRequest{ SectionID: 450300, - Force: components.BoolIntOne.ToPointer(), + Force: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -26277,7 +27955,7 @@ paths: RefreshSectionRequest req = RefreshSectionRequest.builder() .sectionId(450300L) - .force(BoolInt.ONE) + .force(BoolInt.True) .build(); RefreshSectionResponse res = sdk.library().refreshSection() @@ -26291,7 +27969,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -26305,15 +27983,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.refreshSection({ + await plexAPI.library.refreshSection({ sectionId: 450300, - force: BoolInt.One, + force: BoolInt.True, }); - console.log(result); + } run(); @@ -26448,7 +28127,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -26462,6 +28141,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -26620,7 +28300,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -26634,6 +28314,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -26779,7 +28460,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -26793,6 +28474,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -26922,7 +28604,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -26936,14 +28618,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.dvRs.deleteDVR({ + await plexAPI.dvRs.deleteDVR({ dvrId: 855088, }); - console.log(result); + } run(); @@ -27099,7 +28782,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -27113,6 +28796,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -27288,7 +28972,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -27302,6 +28986,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -27477,7 +29162,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -27491,6 +29176,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -27664,7 +29350,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -27678,6 +29364,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -27807,7 +29494,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -27821,14 +29508,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.dvRs.stopDVRReload({ + await plexAPI.dvRs.stopDVRReload({ dvrId: 348053, }); - console.log(result); + } run(); @@ -27956,7 +29644,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -27970,6 +29658,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -28111,7 +29800,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -28125,6 +29814,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -28283,7 +29973,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -28297,6 +29987,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -28435,7 +30126,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -28449,6 +30140,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -28556,7 +30248,7 @@ paths: res, err := s.Devices.ModifyDevice(ctx, operations.ModifyDeviceRequest{ DeviceID: 879135, - Enabled: components.BoolIntOne.ToPointer(), + Enabled: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -28598,7 +30290,7 @@ paths: ModifyDeviceRequest req = ModifyDeviceRequest.builder() .deviceId(879135L) - .enabled(BoolInt.ONE) + .enabled(BoolInt.True) .build(); ModifyDeviceResponse res = sdk.devices().modifyDevice() @@ -28614,7 +30306,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -28628,12 +30320,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.devices.modifyDevice({ deviceId: 879135, - enabled: BoolInt.One, + enabled: BoolInt.True, }); console.log(result); @@ -28824,7 +30517,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -28838,6 +30531,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -29032,7 +30726,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -29046,6 +30740,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -29180,7 +30875,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -29194,14 +30889,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.devices.setDevicePreferences({ + await plexAPI.devices.setDevicePreferences({ deviceId: 420973, }); - console.log(result); + } run(); @@ -29326,7 +31022,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -29340,6 +31036,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -29484,7 +31181,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -29498,6 +31195,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -29633,7 +31331,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -29647,14 +31345,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.subscriptions.cancelGrab({ + await plexAPI.subscriptions.cancelGrab({ operationId: "", }); - console.log(result); + } run(); @@ -29779,7 +31478,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -29793,14 +31492,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.provider.deleteMediaProvider({ + await plexAPI.provider.deleteMediaProvider({ provider: "", }); - console.log(result); + } run(); @@ -29926,7 +31626,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -29940,14 +31640,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.subscriptions.deleteSubscription({ + await plexAPI.subscriptions.deleteSubscription({ subscriptionId: 974618, }); - console.log(result); + } run(); @@ -30033,8 +31734,8 @@ paths: res, err := s.Subscriptions.GetSubscription(ctx, operations.GetSubscriptionRequest{ SubscriptionID: 186713, - IncludeGrabs: components.BoolIntOne.ToPointer(), - IncludeStorage: components.BoolIntOne.ToPointer(), + IncludeGrabs: components.BoolIntTrue.ToPointer(), + IncludeStorage: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -30076,8 +31777,8 @@ paths: GetSubscriptionRequest req = GetSubscriptionRequest.builder() .subscriptionId(186713L) - .includeGrabs(BoolInt.ONE) - .includeStorage(BoolInt.ONE) + .includeGrabs(BoolInt.True) + .includeStorage(BoolInt.True) .build(); GetSubscriptionResponse res = sdk.subscriptions().getSubscription() @@ -30093,7 +31794,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -30107,13 +31808,14 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.subscriptions.getSubscription({ subscriptionId: 186713, - includeGrabs: BoolInt.One, - includeStorage: BoolInt.One, + includeGrabs: BoolInt.True, + includeStorage: BoolInt.True, }); console.log(result); @@ -30256,7 +31958,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -30270,6 +31972,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -30418,7 +32121,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -30432,6 +32135,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -30562,7 +32266,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -30576,14 +32280,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.libraryPlaylists.deletePlaylist({ + await plexAPI.libraryPlaylists.deletePlaylist({ playlistId: 343293, }); - console.log(result); + } run(); @@ -30713,7 +32418,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -30727,6 +32432,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -30856,7 +32562,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -30870,14 +32576,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.libraryPlaylists.updatePlaylist({ + await plexAPI.libraryPlaylists.updatePlaylist({ playlistId: 157966, }); - console.log(result); + } run(); @@ -31040,7 +32747,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -31054,6 +32761,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -31188,7 +32896,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -31202,6 +32910,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -31354,7 +33063,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -31368,6 +33077,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -31511,7 +33221,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -31525,6 +33235,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -31629,9 +33340,9 @@ paths: res, err := s.PlayQueue.GetPlayQueue(ctx, operations.GetPlayQueueRequest{ PlayQueueID: 210646, - Own: components.BoolIntOne.ToPointer(), - IncludeBefore: components.BoolIntOne.ToPointer(), - IncludeAfter: components.BoolIntOne.ToPointer(), + Own: components.BoolIntTrue.ToPointer(), + IncludeBefore: components.BoolIntTrue.ToPointer(), + IncludeAfter: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -31673,9 +33384,9 @@ paths: GetPlayQueueRequest req = GetPlayQueueRequest.builder() .playQueueId(210646L) - .own(BoolInt.ONE) - .includeBefore(BoolInt.ONE) - .includeAfter(BoolInt.ONE) + .own(BoolInt.True) + .includeBefore(BoolInt.True) + .includeAfter(BoolInt.True) .build(); GetPlayQueueResponse res = sdk.playQueue().getPlayQueue() @@ -31691,7 +33402,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -31705,14 +33416,15 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.playQueue.getPlayQueue({ playQueueId: 210646, - own: BoolInt.One, - includeBefore: BoolInt.One, - includeAfter: BoolInt.One, + own: BoolInt.True, + includeBefore: BoolInt.True, + includeAfter: BoolInt.True, }); console.log(result); @@ -31801,7 +33513,7 @@ paths: res, err := s.PlayQueue.AddToPlayQueue(ctx, operations.AddToPlayQueueRequest{ PlayQueueID: 919248, - Next: components.BoolIntOne.ToPointer(), + Next: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -31843,7 +33555,7 @@ paths: AddToPlayQueueRequest req = AddToPlayQueueRequest.builder() .playQueueId(919248L) - .next(BoolInt.ONE) + .next(BoolInt.True) .build(); AddToPlayQueueResponse res = sdk.playQueue().addToPlayQueue() @@ -31859,7 +33571,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -31873,12 +33585,13 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { const result = await plexAPI.playQueue.addToPlayQueue({ playQueueId: 919248, - next: BoolInt.One, + next: BoolInt.True, }); console.log(result); @@ -32006,7 +33719,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -32020,6 +33733,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -32154,7 +33868,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -32168,6 +33882,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -32306,7 +34021,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -32320,6 +34035,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -32454,7 +34170,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -32468,6 +34184,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -32616,7 +34333,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -32630,6 +34347,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -32764,7 +34482,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -32778,6 +34496,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -33132,13 +34851,13 @@ paths: AdvancedSubtitles: components.AdvancedSubtitlesBurn.ToPointer(), AudioBoost: plexgo.Pointer[int64](50), AudioChannelCount: plexgo.Pointer[int64](5), - AutoAdjustQuality: components.BoolIntOne.ToPointer(), - AutoAdjustSubtitle: components.BoolIntOne.ToPointer(), - DirectPlay: components.BoolIntOne.ToPointer(), - DirectStream: components.BoolIntOne.ToPointer(), - DirectStreamAudio: components.BoolIntOne.ToPointer(), - DisableResolutionRotation: components.BoolIntOne.ToPointer(), - HasMDE: components.BoolIntOne.ToPointer(), + AutoAdjustQuality: components.BoolIntTrue.ToPointer(), + AutoAdjustSubtitle: components.BoolIntTrue.ToPointer(), + DirectPlay: components.BoolIntTrue.ToPointer(), + DirectStream: components.BoolIntTrue.ToPointer(), + DirectStreamAudio: components.BoolIntTrue.ToPointer(), + DisableResolutionRotation: components.BoolIntTrue.ToPointer(), + HasMDE: components.BoolIntTrue.ToPointer(), Location: operations.StartTranscodeSessionQueryParamLocationWan.ToPointer(), MediaBufferSize: plexgo.Pointer[int64](102400), MediaIndex: plexgo.Pointer[int64](0), @@ -33199,13 +34918,13 @@ paths: .advancedSubtitles(AdvancedSubtitles.BURN) .audioBoost(50L) .audioChannelCount(5L) - .autoAdjustQuality(BoolInt.ONE) - .autoAdjustSubtitle(BoolInt.ONE) - .directPlay(BoolInt.ONE) - .directStream(BoolInt.ONE) - .directStreamAudio(BoolInt.ONE) - .disableResolutionRotation(BoolInt.ONE) - .hasMDE(BoolInt.ONE) + .autoAdjustQuality(BoolInt.True) + .autoAdjustSubtitle(BoolInt.True) + .directPlay(BoolInt.True) + .directStream(BoolInt.True) + .directStreamAudio(BoolInt.True) + .disableResolutionRotation(BoolInt.True) + .hasMDE(BoolInt.True) .location(StartTranscodeSessionQueryParamLocation.WAN) .mediaBufferSize(102400L) .mediaIndex(0L) @@ -33238,8 +34957,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Extension, StartTranscodeSessionLocation, StartTranscodeSessionProtocol } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts, AdvancedSubtitles, BoolInt, TranscodeType } from "@lukehagar/plexjs/sdk/models/shared"; + import { Extension, StartTranscodeSessionLocation, StartTranscodeSessionProtocol } from "@lukehagar/plexjs/models/operations"; + import { Accepts, AdvancedSubtitles, BoolInt, TranscodeType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -33253,6 +34972,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -33262,13 +34982,13 @@ paths: advancedSubtitles: AdvancedSubtitles.Burn, audioBoost: 50, audioChannelCount: 5, - autoAdjustQuality: BoolInt.One, - autoAdjustSubtitle: BoolInt.One, - directPlay: BoolInt.One, - directStream: BoolInt.One, - directStreamAudio: BoolInt.One, - disableResolutionRotation: BoolInt.One, - hasMDE: BoolInt.One, + autoAdjustQuality: BoolInt.True, + autoAdjustSubtitle: BoolInt.True, + directPlay: BoolInt.True, + directStream: BoolInt.True, + directStreamAudio: BoolInt.True, + disableResolutionRotation: BoolInt.True, + hasMDE: BoolInt.True, location: StartTranscodeSessionLocation.Wan, mediaBufferSize: 102400, mediaIndex: 0, @@ -33429,7 +35149,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -33443,6 +35163,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -33592,7 +35313,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -33606,6 +35327,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -33756,7 +35478,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -33770,10 +35492,11 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.downloadQueue.removeDownloadQueueItems({ + await plexAPI.downloadQueue.removeDownloadQueueItems({ queueId: 946275, itemId: [ 32, @@ -33782,7 +35505,7 @@ paths: ], }); - console.log(result); + } run(); @@ -33997,7 +35720,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -34011,6 +35734,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -34168,7 +35892,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -34182,10 +35906,11 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.downloadQueue.restartProcessingDownloadQueueItems({ + await plexAPI.downloadQueue.restartProcessingDownloadQueueItems({ queueId: 713001, itemId: [ 32, @@ -34194,7 +35919,7 @@ paths: ], }); - console.log(result); + } run(); @@ -34334,7 +36059,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -34348,15 +36073,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.hubs.deleteCustomHub({ + await plexAPI.hubs.deleteCustomHub({ sectionId: 625677, identifier: "", }); - console.log(result); + } run(); @@ -34452,9 +36178,9 @@ paths: res, err := s.Hubs.UpdateHubVisibility(ctx, operations.UpdateHubVisibilityRequest{ SectionID: 341650, Identifier: "", - PromotedToRecommended: components.BoolIntOne.ToPointer(), - PromotedToOwnHome: components.BoolIntOne.ToPointer(), - PromotedToSharedHome: components.BoolIntOne.ToPointer(), + PromotedToRecommended: components.BoolIntTrue.ToPointer(), + PromotedToOwnHome: components.BoolIntTrue.ToPointer(), + PromotedToSharedHome: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -34497,9 +36223,9 @@ paths: UpdateHubVisibilityRequest req = UpdateHubVisibilityRequest.builder() .sectionId(341650L) .identifier("") - .promotedToRecommended(BoolInt.ONE) - .promotedToOwnHome(BoolInt.ONE) - .promotedToSharedHome(BoolInt.ONE) + .promotedToRecommended(BoolInt.True) + .promotedToOwnHome(BoolInt.True) + .promotedToSharedHome(BoolInt.True) .build(); UpdateHubVisibilityResponse res = sdk.hubs().updateHubVisibility() @@ -34513,7 +36239,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -34527,18 +36253,19 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.hubs.updateHubVisibility({ + await plexAPI.hubs.updateHubVisibility({ sectionId: 341650, identifier: "", - promotedToRecommended: BoolInt.One, - promotedToOwnHome: BoolInt.One, - promotedToSharedHome: BoolInt.One, + promotedToRecommended: BoolInt.True, + promotedToOwnHome: BoolInt.True, + promotedToSharedHome: BoolInt.True, }); - console.log(result); + } run(); @@ -34677,7 +36404,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -34691,6 +36418,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -34843,7 +36571,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -34857,6 +36585,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -35014,7 +36743,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -35028,6 +36757,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -35174,7 +36904,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -35188,6 +36918,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -35334,8 +37065,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { SetItemArtworkElement } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { SetItemArtworkElement } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -35349,15 +37080,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.setItemArtwork({ + await plexAPI.library.setItemArtwork({ ids: "", element: SetItemArtworkElement.Banner, }); - console.log(result); + } run(); @@ -35494,8 +37226,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { UpdateItemArtworkElement } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { UpdateItemArtworkElement } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -35509,15 +37241,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.updateItemArtwork({ + await plexAPI.library.updateItemArtwork({ ids: "", element: UpdateItemArtworkElement.ClearLogo, }); - console.log(result); + } run(); @@ -35650,7 +37383,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -35664,15 +37397,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.deleteMarker({ + await plexAPI.library.deleteMarker({ ids: "", marker: "", }); - console.log(result); + } run(); @@ -35836,7 +37570,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -35850,6 +37584,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -35948,7 +37683,7 @@ paths: res, err := s.Library.DeleteMediaItem(ctx, operations.DeleteMediaItemRequest{ Ids: "", MediaItem: "", - Proxy: components.BoolIntOne.ToPointer(), + Proxy: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -35991,7 +37726,7 @@ paths: DeleteMediaItemRequest req = DeleteMediaItemRequest.builder() .ids("") .mediaItem("") - .proxy(BoolInt.ONE) + .proxy(BoolInt.True) .build(); DeleteMediaItemResponse res = sdk.library().deleteMediaItem() @@ -36005,7 +37740,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -36019,16 +37754,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.deleteMediaItem({ + await plexAPI.library.deleteMediaItem({ ids: "", mediaItem: "", - proxy: BoolInt.One, + proxy: BoolInt.True, }); - console.log(result); + } run(); @@ -36172,8 +37908,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { GetPartIndexIndex } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { GetPartIndexIndex } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -36187,6 +37923,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -36329,7 +38066,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -36343,15 +38080,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.deleteCollection({ + await plexAPI.library.deleteCollection({ sectionId: 283619, collectionId: 680895, }); - console.log(result); + } run(); @@ -36429,6 +38167,11 @@ paths: res, err := s.Library.GetSectionImage(ctx, operations.GetSectionImageRequest{ SectionID: 925611, UpdatedAt: 117413, + MediaQuery: &components.MediaQuery{ + Type: components.MediaTypeEpisode.ToPointer(), + SourceType: plexgo.Pointer[int64](2), + Sort: plexgo.Pointer("duration:desc,index"), + }, }) if err != nil { log.Fatal(err) @@ -36445,7 +38188,7 @@ paths: import dev.plexapi.sdk.PlexAPI; import dev.plexapi.sdk.models.operations.GetSectionImageRequest; import dev.plexapi.sdk.models.operations.GetSectionImageResponse; - import dev.plexapi.sdk.models.shared.Accepts; + import dev.plexapi.sdk.models.shared.*; import java.lang.Exception; public class Application { @@ -36470,6 +38213,11 @@ paths: GetSectionImageRequest req = GetSectionImageRequest.builder() .sectionId(925611L) .updatedAt(117413L) + .mediaQuery(MediaQuery.builder() + .type(MediaType.Episode) + .sourceType(2L) + .sort("duration:desc,index") + .build()) .build(); GetSectionImageResponse res = sdk.library().getSectionImage() @@ -36483,7 +38231,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, MediaType } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -36497,15 +38245,21 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.getSectionImage({ + await plexAPI.library.getSectionImage({ sectionId: 925611, updatedAt: 117413, + mediaQuery: { + type: MediaType.Episode, + sourceType: 2, + sort: "duration:desc,index", + }, }); - console.log(result); + } run(); @@ -36640,7 +38394,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -36654,15 +38408,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.deleteStream({ + await plexAPI.library.deleteStream({ streamId: 841510, ext: "", }); - console.log(result); + } run(); @@ -36764,7 +38519,7 @@ paths: res, err := s.Library.GetStream(ctx, operations.GetStreamRequest{ StreamID: 314506, Ext: "", - AutoAdjustSubtitle: components.BoolIntOne.ToPointer(), + AutoAdjustSubtitle: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -36807,7 +38562,7 @@ paths: GetStreamRequest req = GetStreamRequest.builder() .streamId(314506L) .ext("") - .autoAdjustSubtitle(BoolInt.ONE) + .autoAdjustSubtitle(BoolInt.True) .build(); GetStreamResponse res = sdk.library().getStream() @@ -36821,7 +38576,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -36835,16 +38590,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.getStream({ + await plexAPI.library.getStream({ streamId: 314506, ext: "", - autoAdjustSubtitle: BoolInt.One, + autoAdjustSubtitle: BoolInt.True, }); - console.log(result); + } run(); @@ -36980,7 +38736,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -36994,15 +38750,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.library.setStreamOffset({ + await plexAPI.library.setStreamOffset({ streamId: 606295, ext: "", }); - console.log(result); + } run(); @@ -37149,7 +38906,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -37163,6 +38920,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -37339,7 +39097,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -37353,6 +39111,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -37528,7 +39287,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -37542,6 +39301,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -37692,7 +39452,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -37706,6 +39466,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -37879,7 +39640,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -37893,6 +39654,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -38032,7 +39794,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -38046,15 +39808,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.liveTV.getSessionPlaylistIndex({ + await plexAPI.liveTV.getSessionPlaylistIndex({ sessionId: "", consumerId: "", }); - console.log(result); + } run(); @@ -38190,7 +39953,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -38204,15 +39967,16 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.devices.getThumb({ + await plexAPI.devices.getThumb({ deviceId: 960617, versionPathParameter: 1025, }); - console.log(result); + } run(); @@ -38347,7 +40111,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -38361,6 +40125,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -38640,7 +40405,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -38654,6 +40419,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -38798,7 +40564,6 @@ paths: Policy: &operations.Policy{ Value: plexgo.Pointer[int64](), Scope: operations.QueryParamScopeAll.ToPointer(), - Unwatched: components.BoolIntZero.ToPointer(), }, Target: plexgo.Pointer(""), TargetTagID: plexgo.Pointer[int64](1), @@ -38817,8 +40582,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { ModifyPlaylistGeneratorScope } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { ModifyPlaylistGeneratorScope } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -38832,6 +40597,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -38845,7 +40611,6 @@ paths: locationID: -1, policy: { scope: ModifyPlaylistGeneratorScope.All, - unwatched: BoolInt.Zero, }, target: "", targetTagID: 1, @@ -39030,7 +40795,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -39044,6 +40809,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -39192,7 +40958,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -39206,6 +40972,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -39349,7 +41116,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -39363,6 +41130,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -39511,7 +41279,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -39525,6 +41293,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -39683,8 +41452,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { GetItemArtworkElement } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { GetItemArtworkElement } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -39698,6 +41467,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -39816,7 +41586,7 @@ paths: PartID: 877105, Changestamp: 970622, Filename: "example.file", - Download: components.BoolIntOne.ToPointer(), + Download: components.BoolIntTrue.ToPointer(), }) if err != nil { log.Fatal(err) @@ -39860,7 +41630,7 @@ paths: .partId(877105L) .changestamp(970622L) .filename("example.file") - .download(BoolInt.ONE) + .download(BoolInt.True) .build(); GetMediaPartResponse res = sdk.library().getMediaPart() @@ -39874,7 +41644,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts, BoolInt } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts, BoolInt } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -39888,6 +41658,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -39895,7 +41666,7 @@ paths: partId: 877105, changestamp: 970622, filename: "example.file", - download: BoolInt.One, + download: BoolInt.True, }); console.log(result); @@ -40045,8 +41816,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { GetImageFromBifIndex } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { GetImageFromBifIndex } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -40060,6 +41831,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -40223,7 +41995,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -40237,6 +42009,7 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { @@ -40383,7 +42156,7 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -40397,16 +42170,17 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.liveTV.getSessionSegment({ + await plexAPI.liveTV.getSessionSegment({ sessionId: "", consumerId: "", segmentId: "", }); - console.log(result); + } run(); @@ -40558,8 +42332,8 @@ paths: label: PlexJS source: |- import { PlexAPI } from "@lukehagar/plexjs"; - import { Action } from "@lukehagar/plexjs/sdk/models/operations"; - import { Accepts } from "@lukehagar/plexjs/sdk/models/shared"; + import { Action } from "@lukehagar/plexjs/models/operations"; + import { Accepts } from "@lukehagar/plexjs/models/shared"; const plexAPI = new PlexAPI({ accepts: Accepts.ApplicationXml, @@ -40573,17 +42347,18 @@ paths: deviceVendor: "Roku", deviceName: "Living Room TV", marketplace: "googlePlay", + token: "", }); async function run() { - const result = await plexAPI.libraryPlaylists.refreshPlaylist({ + await plexAPI.libraryPlaylists.refreshPlaylist({ playlistId: 895314, generatorId: 629742, metadataId: 724422, action: Action.Disable, }); - console.log(result); + } run(); @@ -40774,10 +42549,28 @@ components: example: 0 mediaQuery: name: mediaQuery - description: This is a complex query built of several parameters. See [API Info section](#section/API-Info/Media-Queries) for information on building media queries + description: | + A querystring-based filtering language used to select subsets of media. Can be provided as an object with typed properties for type safety, or as a string for complex queries with operators and boolean logic. + + The query supports: + - Fields: integer, boolean, tag, string, date, language + - Operators: =, !=, ==, !==, <=, >=, >>=, <<= (varies by field type) + - Boolean operators: & (AND), , (OR), push/pop (parentheses), or=1 (explicit OR) + - Sorting: sort parameter with :desc, :nullsLast modifiers + - Grouping: group parameter + - Limits: limit parameter + + Examples: + - Object format: `{type: 4, sourceType: 2, title: "24"}` → `type=4&sourceType=2&title=24` + - String format: `type=4&sourceType=2&title==24` - type = 4 AND sourceType = 2 AND title = "24" + - Complex: `push=1&index=1&or=1&rating=2&pop=1&duration=10` - (index = 1 OR rating = 2) AND duration = 10 + + See [API Info section](#section/API-Info/Media-Queries) for detailed information on building media queries. in: query schema: - type: object + $ref: '#/components/schemas/MediaQuery' + style: form + explode: true musicBitrate: name: musicBitrate description: Target bitrate for audio only files (in kbps, used to transcode). @@ -40898,10 +42691,24 @@ components: - subtitles type: name: type - description: The metadata type to filter by + description: | + The type of media to retrieve or filter by. + + 1 = movie + 2 = show + 3 = season + 4 = episode + 5 = artist + 6 = album + 7 = track + 8 = photo_album + 9 = photo + + E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries in: query schema: - type: integer + $ref: '#/components/schemas/MediaType' + example: 2 videoBitrate: name: videoBitrate description: Target video bitrate (in kbps). @@ -41045,6 +42852,32 @@ components: type: string example: googlePlay example: googlePlay + X-Plex-Container-Start: + name: X-Plex-Container-Start + in: query + description: | + The index of the first item to return. If not specified, the first item will be returned. + If the number of items exceeds the limit, the response will be paginated. + By default this is 0 + schema: + type: integer + format: int32 + default: 0 + example: 0 + required: false + X-Plex-Container-Size: + name: X-Plex-Container-Size + in: query + description: | + The number of items to return. If not specified, all items will be returned. + If the number of items exceeds the limit, the response will be paginated. + By default this is 50 + schema: + type: integer + format: int32 + default: 50 + example: 50 + required: false headers: X-Plex-Container-Start: description: Provided on all MediaContainer objects indicating the offset of where this container page starts @@ -41364,13 +43197,81 @@ components: schemas: AllowSync: type: boolean - Art: - type: string BoolInt: type: integer + format: int32 enum: - 0 - 1 + example: 1 + default: 0 + x-speakeasy-enums: + - FALSE + - TRUE + MediaType: + description: | + The type of media to retrieve or filter by. + + 1 = movie + 2 = show + 3 = season + 4 = episode + 5 = artist + 6 = album + 7 = track + 8 = photo_album + 9 = photo + + E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + type: integer + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + - 9 + example: 2 + x-speakeasy-enums: + - MOVIE + - TV_SHOW + - SEASON + - EPISODE + - ARTIST + - ALBUM + - TRACK + - PHOTO_ALBUM + - PHOTO + MediaTypeString: + description: | + The type of media content in the Plex library. This can represent videos, music, or photos. + type: string + enum: + - movie + - show + - season + - episode + - artist + - album + - track + - photoalbum + - photo + - collection + example: "movie" + x-speakeasy-enums: + - MOVIE + - TV_SHOW + - SEASON + - EPISODE + - ARTIST + - ALBUM + - TRACK + - PHOTO_ALBUM + - PHOTO + - COLLECTION Channel: type: object properties: @@ -41401,8 +43302,6 @@ components: type: string lineupIdentifier: type: string - Content: - type: boolean Device: type: object properties: @@ -41591,25 +43490,33 @@ components: type: string LibrarySection: type: object + required: + - uuid + - language + - type properties: title: - $ref: '#/components/schemas/Title' + type: string + description: "The title of the library" + example: "Movies" type: - $ref: '#/components/schemas/Type' + $ref: '#/components/schemas/MediaTypeString' agent: type: string allowSync: type: boolean art: - $ref: '#/components/schemas/Art' + type: string composite: type: string content: - $ref: '#/components/schemas/Content' + type: boolean contentChangedAt: - type: integer + allOf: + - $ref: '#/components/schemas/PlexDateTime' createdAt: - type: integer + allOf: + - $ref: '#/components/schemas/PlexDateTime' directory: type: boolean filters: @@ -41621,6 +43528,10 @@ components: $ref: '#/components/schemas/Key' language: type: string + uuid: + type: string + description: "The universally unique identifier for the library." + example: "e69655a2-ef48-4aba-bb19-d3cc3401e7d6" Location: type: array items: @@ -41635,13 +43546,15 @@ components: description: Indicates whether this library section is currently scanning type: boolean scannedAt: - type: integer + allOf: + - $ref: '#/components/schemas/PlexDateTime' scanner: type: string thumb: $ref: '#/components/schemas/Thumb' updatedAt: - type: integer + allOf: + - $ref: '#/components/schemas/PlexDateTime' Lineup: type: object properties: @@ -41676,24 +43589,33 @@ components: `Media` represents an one or more media files (parts) and is a child of a metadata item. There aren't necessarily any guaranteed attributes on media elements since the attributes will vary based on the type. The possible attributes are not documented here, but they typically have self-evident names. High-level media information that can be used for badging and flagging, such as `videoResolution` and codecs, is included on the media element. type: object additionalProperties: true + required: + - id properties: aspectRatio: type: number + format: float example: 2.35 audioChannels: type: integer + format: int32 example: 2 audioCodec: + type: string example: aac audioProfile: + type: string example: lc bitrate: type: integer + format: int32 example: 5612 container: + type: string example: mov duration: type: integer + format: int32 example: 150192 has64bitOffsets: type: boolean @@ -41703,9 +43625,11 @@ components: example: true height: type: integer + format: int32 example: 544 id: type: integer + format: int64 example: 1 optimizedForStreaming: type: boolean @@ -41715,15 +43639,20 @@ components: items: $ref: '#/components/schemas/Part' videoCodec: + type: string example: h264 videoFrameRate: + type: string example: 24p videoProfile: + type: string example: main videoResolution: + type: string example: '720' width: type: integer + format: int32 example: 1280 MediaContainer: description: | @@ -42153,38 +44082,61 @@ components: Metadata items can often live in a hierarchy with relationships between them. For example, the metadata item for an episodes is associated with a season metadata item which is associated with a show metadata item. A similar hierarchy exists with track, album, and artist and photos and photo album. The relationships may be expressed via relative terms and absolute terms. For example, "leaves" refer to metadata items which has associated media (there is no media for a season nor show). A show will have "children" in the form of seasons and a season will have "children" in the form of episodes and episodes have "parent" in the form of a season which has a "parent" in the form of a show. Similarly, a show has "grandchildren" in the form of episodse and an episode has a "grandparent" in the form of a show. type: object additionalProperties: true + required: + - addedAt + - key + - title + - type properties: title: description: The title of the item (e.g. “300” or “The Simpsons”) + type: string type: description: The type of the video item, such as `movie`, `episode`, or `clip`. + type: string absoluteIndex: description: When present, contains the disc number for a track on multi-disc albums. type: integer + format: int32 addedAt: description: In units of seconds since the epoch, returns the time at which the item was added to the library. type: integer + format: int64 art: description: When present, the URL for the background artwork for the item. + type: string + example: "/library/metadata/58683/art/1703239236" audienceRating: description: Some rating systems separate reviewer ratings from audience ratings type: number + format: float minimum: 0 maximum: 10 audienceRatingImage: description: A URI representing the image to be shown with the audience rating (e.g. rottentomatoes://image.rating.spilled). + type: string Autotag: type: array items: $ref: '#/components/schemas/Tag' banner: description: When present, the URL for a banner graphic for the item. + type: string chapterSource: description: When present, indicates the source for the chapters in the media file. Can be media (the chapters were embedded in the media itself), agent (a metadata agent computed them), or mixed (a combination of the two). + type: string + example: "media" + childCount: + type: integer + format: int32 + description: "The number of child items associated with this media item." + example: 1 composite: description: When present, the URL for a composite image for descendent items (e.g. photo albums or playlists). + type: string contentRating: description: If known, the content rating (e.g. MPAA) for an item. + type: string Country: type: array items: @@ -42196,6 +44148,7 @@ components: duration: description: When present, the duration for the item, in units of milliseconds. type: integer + format: int32 Filter: description: Typically only seen in metadata at a library's top level type: array @@ -42208,6 +44161,10 @@ components: grandparentArt: description: The `art` of the grandparent type: string + grandparentGuid: + type: string + description: "The GUID of the grandparent media item." + example: "plex://show/5d9c081b170e24001f2a7be4" grandparentHero: description: The `hero` of the grandparent type: string @@ -42226,12 +44183,36 @@ components: grandparentTitle: description: The `title` of the grandparent type: string + guid: + type: string + description: "The globally unique identifier for the media item." + example: "plex://movie/5d7768ba96b655001fdc0408" Guid: + x-speakeasy-name-override: guids type: array items: - $ref: '#/components/schemas/Tag' + type: object + required: + - id + properties: + id: + type: string + description: | + The unique identifier for the Guid. Can be prefixed with imdb://, tmdb://, tvdb:// + pattern: "^(imdb|tmdb|tvdb)://.+$" + example: + imdbExample: + summary: IMDB example + value: imdb://tt13015952 + tmdbExample: + summary: TMDB example + value: tmdb://2434012 + tvdbExample: + summary: TVDB example + value: tvdb://7945991 hero: description: When present, the URL for a hero image for the item. + type: string Image: type: array items: @@ -42239,28 +44220,41 @@ components: index: description: When present, this represents the episode number for episodes, season number for seasons, or track number for audio tracks. type: integer + format: int32 key: description: The key at which the item's details can be fetched. In many cases a metadata item may be passed without all the details (such as in a hub) and this key corresponds to the endpoint to fetch additional details. + type: string lastViewedAt: - description: When a user has watched or listened to an item, this contains a timestamp (epoch seconds) for that last consumption time. - type: integer + allOf: + - $ref: '#/components/schemas/PlexDateTime' + - description: When a user has watched or listened to an item, this contains a timestamp (epoch seconds) for that last consumption time. leafCount: description: For shows and seasons, contains the number of total episodes. type: integer + format: int32 Media: type: array items: $ref: '#/components/schemas/Media' originallyAvailableAt: description: When present, in the format YYYY-MM-DD [HH:MM:SS] (the hours/minutes/seconds part is not always present). The air date, or a higher resolution release date for an item, depending on type. For example, episodes usually have air date like 1979-08-10 (we don't use epoch seconds because media existed prior to 1970). In some cases, recorded over-the-air content has higher resolution air date which includes a time component. Albums and movies may have day-resolution release dates as well. + type: string + format: date + example: "2022-12-14" originalTitle: description: When present, used to indicate an item's original title, e.g. a movie's foreign title. + type: string + parentGuid: + type: string + description: "The GUID of the parent media item." + example: "plex://show/5d9c081b170e24001f2a7be4" parentHero: description: The `hero` of the parent type: string parentIndex: description: The `index` of the parent type: integer + format: int32 parentKey: description: The `key` of the parent type: string @@ -42275,12 +44269,14 @@ components: type: string primaryExtraKey: description: Indicates that the item has a primary extra; for a movie, this is a trailer, and for a music track it is a music video. The URL points to the metadata details endpoint for the item. + type: string prompt: description: Prompt to give the user for this directory (such as `Search Movies`) type: string rating: description: When present, the rating for the item. The exact meaning and representation depends on where the rating was sourced from. type: number + format: float minimum: 0 maximum: 10 Rating: @@ -42291,10 +44287,13 @@ components: ratingCount: description: Number of ratings under this metadata type: integer + format: int32 ratingImage: description: When present, indicates an image to be shown with the rating. This is passed back as a small set of defined URI values, e.g. rottentomatoes://image.rating.rotten. + type: string ratingKey: description: This is the opaque string to be passed into timeline, scrobble, and rating endpoints to identify them. While it often appears to be numeric, this is not guaranteed. + type: string Role: type: array items: @@ -42318,35 +44317,48 @@ components: $ref: '#/components/schemas/Sort' studio: description: When present, the studio or label which produced an item (e.g. movie studio for movies, record label for albums). + type: string subtype: description: The subtype of the video item, such as `photo` when the video item is in a photo library + type: string summary: description: When present, the extended textual information about the item (e.g. movie plot, artist biography, album review). + type: string tagline: description: When present, a pithy one-liner about the item (usually only seen for movies). + type: string theme: description: When present, the URL for theme music for the item (usually only for TV shows). + type: string + example: "/library/metadata/1/theme/1705636920" thumb: description: When present, the URL for the poster or thumbnail for the item. When available for types like movie, it will be the poster graphic, but fall-back to the extracted media thumbnail. + type: string + example: "/library/metadata/58683/thumb/1703239236" titleSort: description: Whene present, this is the string used for sorting the item. It's usually the title with any leading articles removed (e.g. “Simpsons”). + type: string updatedAt: description: In units of seconds since the epoch, returns the time at which the item was last changed (e.g. had its metadata updated). type: integer userRating: description: When the user has rated an item, this contains the user rating type: number + format: float minimum: 0 maximum: 10 viewCount: description: When a users has completed watched or listened to an item, this attribute contains the number of consumptions. type: integer + format: int32 viewedLeafCount: description: For shows and seasons, contains the number of viewed episodes. type: integer + format: int32 viewOffset: description: When a user is in the process of viewing or listening to this item, this attribute contains the current offset, in units of milliseconds. type: integer + format: int32 Writer: type: array items: @@ -42354,32 +44366,53 @@ components: year: description: When present, the year associated with the item's release (e.g. release year for a movie). type: integer + format: int32 Part: description: | `Part` represents a particular file or "part" of a media item. The part is the playable unit of the media hierarchy. Suppose that a movie library contains a movie that is broken up into files, reminiscent of a movie split across two BDs. The metadata item represents information about the movie, the media item represents this instance of the movie at this resolution and quality, and the part items represent the two playable files. If another media were added which contained the joining of these two parts transcoded down to a lower resolution, then this metadata would contain 2 medias, one with 2 parts and one with 1 part. type: object additionalProperties: true + required: + - id + - key properties: + accessible: + type: boolean + description: "Indicates if the part is accessible." + example: true audioProfile: + type: string example: lc container: description: The container of the media file, such as `mp4` or `mkv` + type: string example: mov duration: description: The duration of the media item, in milliseconds type: integer + format: int32 example: 150192 + exists: + type: boolean + description: "Indicates if the part exists." + example: true file: description: The local file path at which the part is stored on the server + type: string example: /home/schuyler/Videos/Trailers/Cloud Atlas (2012).mov has64bitOffsets: type: boolean example: false id: type: integer + format: int64 example: 1 + indexes: + type: string + example: "sd" key: description: The key from which the media can be streamed + type: string example: /library/parts/1/1531779263/file.mov optimizedForStreaming: type: boolean @@ -42387,12 +44420,14 @@ components: size: description: The size of the media, in bytes type: integer + format: int64 example: 105355654 Stream: type: array items: $ref: '#/components/schemas/Stream' videoProfile: + type: string example: main Player: description: Information about the player being used for playback @@ -42443,6 +44478,139 @@ components: version: description: The version of the client type: string + PlexDateTimeISO: + type: string + format: date-time + example: '2019-06-24T11:38:02Z' + PlexDevice: + title: PlexDevice + type: object + required: + - name + - product + - productVersion + - platform + - platformVersion + - device + - clientIdentifier + - createdAt + - lastSeenAt + - provides + - ownerId + - sourceTitle + - publicAddress + - accessToken + - owned + - home + - synced + - relay + - presence + - httpsRequired + - publicAddressMatches + - dnsRebindingProtection + - natLoopbackSupported + - connections + properties: + name: + type: string + product: + type: string + productVersion: + type: string + platform: + type: + - "null" + - string + platformVersion: + type: + - "null" + - string + device: + type: + - "null" + - string + clientIdentifier: + type: string + createdAt: + allOf: + - $ref: '#/components/schemas/PlexDateTimeISO' + - description: The time the device was created/registered + lastSeenAt: + allOf: + - $ref: '#/components/schemas/PlexDateTimeISO' + - description: The last time the device was seen + provides: + type: string + ownerId: + description: ownerId is null when the device is owned by the token used to send the request + type: + - "null" + - integer + sourceTitle: + type: + - "null" + - string + publicAddress: + type: string + accessToken: + type: string + owned: + type: boolean + home: + type: boolean + synced: + type: boolean + relay: + type: boolean + presence: + type: boolean + httpsRequired: + type: boolean + publicAddressMatches: + type: boolean + dnsRebindingProtection: + type: boolean + natLoopbackSupported: + type: boolean + connections: + type: array + items: + type: object + required: + - protocol + - address + - port + - uri + - local + - relay + - IPv6 + properties: + protocol: + description: The protocol used for the connection (http, https, etc) + example: "http" + type: string + enum: + - http + - https + address: + description: The (ip) address or domain name used for the connection + type: string + port: + description: The port used for the connection + type: integer + format: int32 + uri: + description: The full URI of the connection + type: string + local: + description: If the connection is local address + type: boolean + relay: + description: If the connection is relayed through plex.direct + type: boolean + IPv6: + description: If the connection is using IPv6 + type: boolean ServerConfiguration: allOf: - $ref: '#/components/schemas/MediaContainer' @@ -42644,90 +44812,253 @@ components: `Stream` represents a particular stream from a media item, such as the video stream, audio stream, or subtitle stream. The stream may either be part of the file represented by the parent `Part` or, especially for subtitles, an external file. The stream contains more detailed information about the specific stream. For example, a video may include the `aspectRatio` at the `Media` level, but detailed information about the video stream like the color space will be included on the `Stream` for the video stream. Note that photos do not have streams (mostly as an optimization). type: object additionalProperties: true + required: + - id + - key + - codec + - displayTitle + - streamType properties: default: type: boolean + description: Indicates if this stream is default. example: true audioChannelLayout: - example: stereo + type: string + description: Audio channel layout. + example: 5.1(side) + channels: + type: integer + format: int32 + description: Number of audio channels (for audio streams). + example: 6 bitDepth: type: integer + format: int32 + description: Bit depth of the video stream. + example: 10 + DOVIBLCompatID: + type: integer + format: int32 + description: Dolby Vision BL compatibility ID. + example: 1 + DOVIBLPresent: + type: boolean + description: Indicates if Dolby Vision BL is present. + example: true + DOVIELPresent: + type: boolean + description: Indicates if Dolby Vision EL is present. + example: false + DOVILevel: + type: integer + format: int32 + description: Dolby Vision level. + example: 6 + DOVIPresent: + type: boolean + description: Indicates if Dolby Vision is present. + example: true + DOVIProfile: + type: integer + format: int32 + description: Dolby Vision profile. example: 8 + DOVIRPUPresent: + type: boolean + description: Indicates if Dolby Vision RPU is present. + example: true + DOVIVersion: + type: string + description: Dolby Vision version. + example: '1.0' bitrate: type: integer - example: 5466 + format: int32 + description: Bitrate of the stream. + example: 24743 canAutoSync: - description: For subtitle streams only. If `true` then the server can attempt to automatically sync the subtitle timestamps with the video. type: boolean - example: true + description: Indicates if the stream can auto-sync. + example: false chromaLocation: + type: string + description: Chroma sample location. example: topleft chromaSubsampling: + type: string + description: Chroma subsampling format. example: '4:2:0' + codedHeight: + type: integer + format: int32 + description: Coded video height. + example: 1608 + codedWidth: + type: integer + format: int32 + description: Coded video width. + example: 3840 + closedCaptions: + type: boolean + example: true codec: - description: The codec of the stream, such as `h264` or `aac` - example: h264 + description: Codec used by the stream. + type: string + example: hevc colorPrimaries: - example: bt709 + type: string + description: Color primaries used. + example: bt2020 colorRange: + type: string + description: Color range (e.g., tv). example: tv colorSpace: - example: bt709 + type: string + description: Color space. + example: bt2020nc colorTrc: - example: bt709 + type: string + description: Color transfer characteristics. + example: smpte2084 displayTitle: - description: A friendly name for the stream, often comprised of the language and codec information - example: English (H.264 Main) + description: Display title for the stream. + type: string + example: 4K DoVi/HDR10 (HEVC Main 10) + extendedDisplayTitle: + type: string + description: Extended display title for the stream. + example: 4K DoVi/HDR10 (HEVC Main 10) frameRate: type: number + format: float + description: Frame rate of the stream. example: 23.976 hasScalingMatrix: + type: boolean example: false height: type: integer - example: 544 + format: int32 + description: Height of the video stream. + example: 1602 id: type: integer - example: 1 + format: int32 + description: Unique stream identifier. + example: 1002625 index: - description: If the stream is part of the `Part` and not an external resource, the index of the stream within that part + description: Index of the stream. type: integer + format: int32 example: 0 key: - description: If the stream is independently streamable, the key from which it can be streamed - example: /library/streams/1 + description: Key to access this stream part. + type: string + example: /library/streams/216389 language: + type: string + description: Language of the stream. example: English languageCode: - description: The three character language code for the stream contents + description: ISO language code. + type: string example: eng + languageTag: + type: string + description: Language tag (e.g., en). + example: en + format: + type: string + description: Format of the stream (e.g., srt). + example: srt + headerCompression: + type: boolean + description: Indicates whether header compression is enabled. + example: true level: type: integer - example: 31 + format: int32 + description: Video level. + example: 150 + original: + type: boolean + description: Indicates if this is the original stream. + example: true profile: - example: main + type: string + description: Video profile. + example: main 10 refFrames: type: integer - example: 2 + format: int32 + description: Number of reference frames. + example: 1 samplingRate: type: integer + format: int32 + description: Sampling rate for the audio stream. example: 48000 + scanType: + type: string + example: progressive + embeddedInVideo: + type: string + example: progressive selected: type: boolean + description: Indicates if this stream is selected (applicable for audio streams). + example: true + forced: + type: boolean + example: true + hearingImpaired: + type: boolean + description: Indicates if the stream is for the hearing impaired. + example: true + dub: + type: boolean + description: Indicates if the stream is a dub. + example: true + title: + type: string + description: Optional title for the stream (e.g., language variant). + example: SDH streamIdentifier: type: integer + format: int32 example: 1 streamType: - description: A number indicating the type of the stream. `1` for video, `2` for audio, `3` for subtitles, `4` for lyrics type: integer + format: int32 + oneOf: + - title: VIDEO + const: 1 + description: Video stream + - title: AUDIO + const: 2 + description: Audio stream + - title: SUBTITLE + const: 3 + description: Subtitle stream example: 1 + description: | + Stream type: + - VIDEO = 1 + - AUDIO = 2 + - SUBTITLE = 3 width: type: integer - example: 1280 + format: int32 + description: Width of the video stream. + example: 3840 Tag: description: | A variety of extra information about a metadata item is included as tags. These tags use their own element names such as `Genre`, `Writer`, `Directory`, and `Role`. Individual tag types may introduce their own extra attributes. type: object + required: + - tag properties: confidence: description: Measure of the confidence of an automatic tag @@ -42736,23 +45067,32 @@ components: type: string filter: description: A filter parameter that can be used to query for more content that matches this tag value. + type: string example: actor=49 id: type: integer + format: int32 ratingKey: + description: "The rating key (Media ID) of this media item. Note: Although this is always an integer, it is represented as a string in the API." type: string + example: "58683" role: description: The role this actor played + type: string example: Secretary tag: description: The value of the tag (the name) + type: string example: Shaun Lawton tagKey: description: Plex identifier for this tag which can be used to fetch additional information from plex.tv + type: string example: 5d3ee12c4cde6a001c3e0b27 tagType: type: integer + format: int32 thumb: + type: string example: http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg Thumb: type: string @@ -42794,6 +45134,701 @@ components: type: boolean Type: type: string + UserPlexAccount: + title: UserPlexAccount + type: object + required: + - authToken + - email + - friendlyName + - hasPassword + - id + - joinedAt + - title + - twoFactorEnabled + - username + - uuid + properties: + adsConsent: + type: + - boolean + - 'null' + description: Unknown + adsConsentReminderAt: + oneOf: + - $ref: '#/components/schemas/PlexDateTime' + - type: 'null' + adsConsentSetAt: + oneOf: + - $ref: '#/components/schemas/PlexDateTime' + - type: 'null' + anonymous: + type: + - boolean + - 'null' + description: Unknown + default: false + authToken: + type: string + description: The account token + example: CxoUzBTSV5hsxjTpFKaf + backupCodesCreated: + type: boolean + description: If the two-factor authentication backup codes have been created + default: false + confirmed: + type: boolean + description: If the account has been confirmed + default: false + country: + type: string + description: The account country + example: US + maxLength: 2 + minLength: 2 + email: + type: string + description: The account email address + format: email + example: username@email.com + emailOnlyAuth: + type: boolean + description: If login with email only is enabled + default: false + experimentalFeatures: + type: boolean + description: If experimental features are enabled + default: false + friendlyName: + type: string + description: Your account full name + example: friendlyUsername + entitlements: + type: array + description: List of devices your allowed to use with this account + items: + type: string + example: '[]' + guest: + type: boolean + description: If the account is a Plex Home guest user + default: false + hasPassword: + type: boolean + description: If the account has a password + default: true + home: + type: boolean + description: If the account is a Plex Home user + default: false + homeAdmin: + type: boolean + description: If the account is the Plex Home admin + default: false + homeSize: + type: integer + description: The number of accounts in the Plex Home + example: 1 + format: int32 + id: + type: integer + description: The Plex account ID + example: 13692262 + format: int32 + joinedAt: + $ref: '#/components/schemas/PlexDateTime' + locale: + type: + - string + - 'null' + description: The account locale + mailingListActive: + type: boolean + description: If you are subscribed to the Plex newsletter + default: false + mailingListStatus: + description: Your current mailing list status + enum: + - active + - unsubscribed + - removed + x-speakeasy-enums: + - ACTIVE + - UNSUBSCRIBED + - REMOVED + example: active + maxHomeSize: + type: integer + description: The maximum number of accounts allowed in the Plex Home + example: 15 + format: int32 + pin: + type: string + description: '[Might be removed] The hashed Plex Home PIN ' + deprecated: true + profile: + $ref: '#/components/schemas/UserProfile' + protected: + type: boolean + description: If the account has a Plex Home PIN enabled + default: false + rememberExpiresAt: + $ref: '#/components/schemas/PlexDateTime' + restricted: + type: boolean + description: If the account is a Plex Home managed user + default: false + roles: + type: array + description: '[Might be removed] List of account roles. Plexpass membership listed here' + items: + type: string + scrobbleTypes: + type: string + description: Unknown + services: + type: array + items: + type: object + required: + - identifier + - endpoint + - token + - secret + - status + properties: + identifier: + type: string + example: metadata-dev + endpoint: + type: string + example: 'https://epg.provider.plex.tv' + format: uri + token: + type: + - string + - 'null' + example: DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv + secret: + type: + - string + - 'null' + status: + example: online + x-speakeasy-unknown-values: allow + enum: + - online + - offline + x-speakeasy-enums: + - ONLINE + - OFFLINE + subscription: + description: If the account's Plex Pass subscription is active + title: Subscription + type: object + properties: + features: + description: List of features allowed on your Plex Pass subscription + type: array + items: + type: string + description: | + - Android - Dolby Vision + - Android - PiP + - CU Sunset + - HRK_enable_EUR + - TREBLE-show-features + - ad-countdown-timer + - adaptive_bitrate + - album-types + - allow_dvr + - amazon-loop-debug + - avod-ad-analysis + - avod-new-media + - blacklist_get_signin + - boost-voices + - camera_upload + - client-radio-stations + - cloudflare-turnstile-required + - cloudsync + - collections + - comments_and_replies_push_notifications + - community_access_plex_tv + - companions_sonos + - content_filter + - custom-home-removal + - disable_home_user_friendships + - disable_sharing_friendships + - downloads-gating + - drm_support + - dvr + - dvr-block-unsupported-countries + - epg-recent-channels + - exclude restrictions + - federated-auth + - friend_request_push_notifications + - grandfather-sync + - guided-upgrade + - hardware_transcoding + - home + - hwtranscode + - imagga-v2 + - increase-password-complexity + - ios14-privacy-banner + - iterable-notification-tokens + - item_clusters + - keep-payment-method + - kevin-bacon + - korea-consent + - le_isrg_root_x1 + - lets_encrypt + - lightning-dvr-pivot + - live-tv-support-incomplete-segments + - livetv + - lyrics + - metadata_search + - music-analysis + - music_videos + - new_plex_pass_prices + - news-provider-sunset-modal + - nominatim + - pass + - photos-favorites + - photos-metadata-edition + - photosV6-edit + - photosV6-tv-albums + - pms_health + - premium-dashboard + - premium_music_metadata + - radio + - rate-limit-client-token + - scrobbling-service-plex-tv + - session_bandwidth_restrictions + - session_kick + - shared_server_notification + - shared_source_notification + - signin_notification + - signin_with_apple + - silence-removal + - sleep-timer + - spring_serve_ad_provider + - sync + - sweet-fades + - transcoder_cache + - trailers + - tuner-sharing + - two-factor-authentication + - unsupportedtuners + - upgrade-3ds2 + - visualizers + - vod-schema + - vod_cloudflare + - volume-leveling + - watch-together-invite + - watchlist-rss + - web_server_dashboard + - webhooks + - blacklist-subnets + - chromecast-music-mp + - Sync v3 + - livetv-platform-specific + - nonAnonymousAccount + - parental-controls + - Subtitles on Demand + - ultrablur + - web-desktop-gracenote-banner + active: + description: If the account's Plex Pass subscription is active + type: boolean + example: true + subscribedAt: + description: Date the account subscribed to Plex Pass + type: + - string + - 'null' + example: '2021-04-12T18:21:12Z' + status: + description: String representation of subscriptionActive + example: Inactive + x-speakeasy-unknown-values: allow + enum: + - Inactive + - Active + x-speakeasy-enums: + - INACTIVE + - ACTIVE + paymentService: + description: Payment service used for your Plex Pass subscription + type: + - string + - 'null' + plan: + description: Name of Plex Pass subscription plan + type: + - string + - 'null' + subscriptionDescription: + type: + - string + - 'null' + description: Description of the Plex Pass subscription + subscriptions: + type: array + items: + title: Subscription + type: object + properties: + features: + description: List of features allowed on your Plex Pass subscription + type: array + items: + type: string + description: | + - Android - Dolby Vision + - Android - PiP + - CU Sunset + - HRK_enable_EUR + - TREBLE-show-features + - ad-countdown-timer + - adaptive_bitrate + - album-types + - allow_dvr + - amazon-loop-debug + - avod-ad-analysis + - avod-new-media + - blacklist_get_signin + - boost-voices + - camera_upload + - client-radio-stations + - cloudflare-turnstile-required + - cloudsync + - collections + - comments_and_replies_push_notifications + - community_access_plex_tv + - companions_sonos + - content_filter + - custom-home-removal + - disable_home_user_friendships + - disable_sharing_friendships + - downloads-gating + - drm_support + - dvr + - dvr-block-unsupported-countries + - epg-recent-channels + - exclude restrictions + - federated-auth + - friend_request_push_notifications + - grandfather-sync + - guided-upgrade + - hardware_transcoding + - home + - hwtranscode + - imagga-v2 + - increase-password-complexity + - ios14-privacy-banner + - iterable-notification-tokens + - item_clusters + - keep-payment-method + - kevin-bacon + - korea-consent + - le_isrg_root_x1 + - lets_encrypt + - lightning-dvr-pivot + - live-tv-support-incomplete-segments + - livetv + - lyrics + - metadata_search + - music-analysis + - music_videos + - new_plex_pass_prices + - news-provider-sunset-modal + - nominatim + - pass + - photos-favorites + - photos-metadata-edition + - photosV6-edit + - photosV6-tv-albums + - pms_health + - premium-dashboard + - premium_music_metadata + - radio + - rate-limit-client-token + - scrobbling-service-plex-tv + - session_bandwidth_restrictions + - session_kick + - shared_server_notification + - shared_source_notification + - signin_notification + - signin_with_apple + - silence-removal + - sleep-timer + - spring_serve_ad_provider + - sync + - sweet-fades + - transcoder_cache + - trailers + - tuner-sharing + - two-factor-authentication + - unsupportedtuners + - upgrade-3ds2 + - visualizers + - vod-schema + - vod_cloudflare + - volume-leveling + - watch-together-invite + - watchlist-rss + - web_server_dashboard + - webhooks + - blacklist-subnets + - chromecast-music-mp + - Sync v3 + - livetv-platform-specific + - nonAnonymousAccount + - parental-controls + - Subtitles on Demand + - ultrablur + - web-desktop-gracenote-banner + active: + description: If the account's Plex Pass subscription is active + type: boolean + example: true + subscribedAt: + description: Date the account subscribed to Plex Pass + type: + - string + - 'null' + example: '2021-04-12T18:21:12Z' + status: + description: String representation of subscriptionActive + example: Inactive + x-speakeasy-unknown-values: allow + enum: + - Inactive + - Active + paymentService: + description: Payment service used for your Plex Pass subscription + type: + - string + - 'null' + plan: + description: Name of Plex Pass subscription plan + type: + - string + - 'null' + thumb: + type: string + description: URL of the account thumbnail + format: uri + example: 'https://plex.tv/users/a4f43c1ebfde43a5/avatar?c=8372075101' + title: + type: string + description: The title of the account (username or friendly name) + example: UsernameTitle + twoFactorEnabled: + type: boolean + description: If two-factor authentication is enabled + default: false + username: + type: string + description: The account username + example: Username + uuid: + type: string + description: The account UUID + example: dae343c1f45beb4f + attributionPartner: + type: + - string + - 'null' + example: null + PlexDateTime: + type: + - integer + example: 1556281940 + description: Unix epoch datetime in seconds + format: int64 + UserProfile: + title: UserProfile + type: object + required: + - autoSelectAudio + - defaultAudioLanguage + - defaultSubtitleLanguage + - autoSelectSubtitle + - defaultSubtitleAccessibility + - defaultSubtitleForced + - watchedIndicator + - mediaReviewsVisibility + properties: + autoSelectAudio: + description: If the account has automatically select audio and subtitle tracks enabled + type: boolean + example: true + default: true + defaultAudioLanguage: + description: The preferred audio language for the account + type: + - string + - 'null' + example: ja + defaultAudioAccessibility: + allOf: + - type: integer + format: int32 + enum: + - 0 + - 1 + - 2 + - 3 + example: 0 + default: 0 + x-speakeasy-enums: + - PREFER_NON_ACCESSIBILITY + - PREFER_ACCESSIBILITY + - ONLY_ACCESSIBILITY + - ONLY_NON_ACCESSIBILITY + - description: 'The audio accessibility mode (0 = Prefer non-accessibility audio, 1 = Prefer accessibility audio, 2 = Only show accessibility audio, 3 = Only show non-accessibility audio)' + defaultAudioLanguages: + description: The preferred audio languages for the account + type: + - array + - 'null' + items: + type: string + example: null + defaultSubtitleLanguage: + description: The preferred subtitle language for the account + type: + - string + - 'null' + example: en + defaultSubtitleLanguages: + description: The preferred subtitle languages for the account + type: + - array + - 'null' + items: + type: string + example: null + autoSelectSubtitle: + allOf: + - type: integer + format: int32 + enum: + - 0 + - 1 + - 2 + example: 1 + default: 0 + x-speakeasy-enums: + - MANUALLY_SELECTED + - SHOWN_WITH_FOREIGN_AUDIO + - ALWAYS_ENABLED + - description: 'The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)' + defaultSubtitleAccessibility: + allOf: + - type: integer + format: int32 + enum: + - 0 + - 1 + - 2 + - 3 + example: 1 + default: 0 + x-speakeasy-enums: + - PREFER_NON_SDH + - PREFER_SDH + - ONLY_SDH + - ONLY_NON_SDH + - description: 'The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only show non-SDH subtitles)' + defaultSubtitleForced: + allOf: + - type: integer + format: int32 + enum: + - 0 + - 1 + - 2 + - 3 + example: 1 + default: 0 + x-speakeasy-enums: + - PREFER_NON_FORCED + - PREFER_FORCED + - ONLY_FORCED + - ONLY_NON_FORCED + - description: 'The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles)' + watchedIndicator: + allOf: + - type: integer + format: int32 + enum: + - 0 + - 1 + - 2 + - 3 + example: 1 + default: 0 + x-speakeasy-enums: + - NONE + - MOVIES_AND_TV_SHOWS + - MOVIES + - TV_SHOWS + - description: Whether or not media watched indicators are enabled (little orange dot on media) + mediaReviewsVisibility: + allOf: + - type: integer + format: int32 + enum: + - 0 + - 1 + - 2 + - 3 + example: 1 + default: 0 + x-speakeasy-enums: + - NO_ONE + - CRITICS_ONLY + - PLEX_USERS_ONLY + - PLEX_USERS_AND_CRITICS + - description: Whether or not the account has media reviews visibility enabled + mediaReviewsLanguages: + description: The languages for media reviews visibility + type: + - array + - 'null' + items: + type: string + example: null + MediaQuery: + description: | + A querystring-based filtering language used to select subsets of media. When provided as an object, properties are serialized as a querystring using form style with explode. + + Only the defined properties below are allowed. The object serializes to a querystring format like: `type=4&sourceType=2&sort=duration:desc,index` + type: object + additionalProperties: false + properties: + type: + description: | + The type of media to retrieve or filter by. + $ref: '#/components/schemas/MediaType' + sourceType: + description: Change the default level to which fields refer (used with type for hierarchical queries) + type: integer + sort: + description: Field(s) to sort by, with optional modifiers. Use comma to separate multiple fields, and :desc or :nullsLast for modifiers (e.g., "duration:desc,index") + type: string + group: + description: Field to group results by (similar to SQL GROUP BY) + type: string + limit: + description: Maximum number of results to return + type: integer + example: + type: 4 + sourceType: 2 + sort: "duration:desc,index" User: description: The user playing the content type: object