From b8081b1d0e96c9e049ee3aca3b61f5d57c64b82d Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Sun, 2 Jun 2024 01:02:53 +0000 Subject: [PATCH] ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.299.4 --- .speakeasy/workflow.lock | 8 +- RELEASES.md | 10 + codeSamples.yaml | 1206 +++++++++++++++++++------------------- 3 files changed, 617 insertions(+), 607 deletions(-) diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 68d3b64..9526f40 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -2,8 +2,8 @@ speakeasyVersion: 1.299.4 sources: my-source: sourceNamespace: my-source - sourceRevisionDigest: sha256:d5bc74278c48154febf79f40689882ada4439449fe8dd7aa8a2cbf9d31608d6c - sourceBlobDigest: sha256:3c41ccaaa730e5d5cd30126e1e416418107c9e9acfdc4103456a4bcba01e6c83 + sourceRevisionDigest: sha256:c55c60e6ee28772054b9f0120b4da218acb1047e6b1f5fd57535ccf528cbbbfa + sourceBlobDigest: sha256:69441996b716d3eeff48149540edde11783a007d2a6825f88caadc56ecf3d06d tags: - latest - main @@ -11,8 +11,8 @@ targets: plexswift: source: my-source sourceNamespace: my-source - sourceRevisionDigest: sha256:d5bc74278c48154febf79f40689882ada4439449fe8dd7aa8a2cbf9d31608d6c - sourceBlobDigest: sha256:3c41ccaaa730e5d5cd30126e1e416418107c9e9acfdc4103456a4bcba01e6c83 + sourceRevisionDigest: sha256:c55c60e6ee28772054b9f0120b4da218acb1047e6b1f5fd57535ccf528cbbbfa + sourceBlobDigest: sha256:69441996b716d3eeff48149540edde11783a007d2a6825f88caadc56ecf3d06d outLocation: /github/workspace/repo workflow: workflowVersion: 1.0.0 diff --git a/RELEASES.md b/RELEASES.md index 31bce6e..598b00d 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -332,4 +332,14 @@ Based on: ### Generated - [swift v0.3.0] . ### Releases +- [Swift Package Manager v0.3.0] https://github.com/LukeHagar/plexswift/releases/tag/v0.3.0 - . + +## 2024-06-02 01:02:27 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.299.4 (2.338.7) https://github.com/speakeasy-api/speakeasy +### Generated +- [swift v0.3.0] . +### Releases - [Swift Package Manager v0.3.0] https://github.com/LukeHagar/plexswift/releases/tag/v0.3.0 - . \ No newline at end of file diff --git a/codeSamples.yaml b/codeSamples.yaml index 940eb1f..0432cd1 100644 --- a/codeSamples.yaml +++ b/codeSamples.yaml @@ -3,18 +3,18 @@ info: title: CodeSamples overlay for swift target version: 0.0.0 actions: - - target: $["paths"]["/myplex/account"]["get"] + - target: $["paths"]["/status/sessions/history/all"]["get"] update: x-codeSamples: - lang: swift - label: getMyPlexAccount + label: getSessionHistory source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.server.getMyPlexAccount() + let response = try await client.sessions.getSessionHistory() switch response.data { case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): @@ -27,18 +27,18 @@ actions: // Handle empty response break } - - target: $["paths"]["/activities"]["get"] + - target: $["paths"]["/clients"]["get"] update: x-codeSamples: - lang: swift - label: getServerActivities + label: getAvailableClients source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.activities.getServerActivities() + let response = try await client.server.getAvailableClients() switch response.data { case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): @@ -76,23 +76,371 @@ actions: // Handle empty response break } - - target: $["paths"]["/playlists/{playlistID}"]["get"] + - target: $["paths"]["/library/sections"]["get"] update: x-codeSamples: - lang: swift - label: getPlaylist + label: getLibraries source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.playlists.getPlaylist( - request: Operations.GetPlaylistRequest( - playlistID: 4109.48 + let response = try await client.library.getLibraries() + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/library/sections/{sectionId}"]["get"] + update: + x-codeSamples: + - lang: swift + label: getLibrary + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.library.getLibrary(\n request: Operations.GetLibraryRequest(\n sectionId: 1000, \n includeDetails: .zero\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/playlists/upload"]["post"] + update: + x-codeSamples: + - lang: swift + label: uploadPlaylist + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.uploadPlaylist(\n request: Operations.UploadPlaylistRequest(\n force: .zero, \n path: \"/home/barkley/playlist.m3u\"\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/transcode/sessions/{sessionKey}"]["delete"] + update: + x-codeSamples: + - lang: swift + label: stopTranscodeSession + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.sessions.stopTranscodeSession( + request: Operations.StopTranscodeSessionRequest( + sessionKey: "zz7llzqlx8w9vnrsbnwhbmep" ) ) + switch response.data { + case .object(let object): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/:/prefs"]["get"] + update: + x-codeSamples: + - lang: swift + label: getServerPreferences + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.server.getServerPreferences() + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/myplex/account"]["get"] + update: + x-codeSamples: + - lang: swift + label: getMyPlexAccount + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.server.getMyPlexAccount() + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/:/progress"]["post"] + update: + x-codeSamples: + - lang: swift + label: updatePlayProgress + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.media.updatePlayProgress(\n request: Operations.UpdatePlayProgressRequest(\n key: \"\", \n state: \"played\", \n time: 90000\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/playlists/{playlistID}/items"]["get"] + update: + x-codeSamples: + - lang: swift + label: getPlaylistContents + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.getPlaylistContents(\n request: Operations.GetPlaylistContentsRequest(\n playlistID: 5004.46, \n type: 9403.59\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/hubs"]["get"] + update: + x-codeSamples: + - lang: swift + label: getGlobalHubs + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.hubs.getGlobalHubs(\n request: Operations.GetGlobalHubsRequest(\n count: 1262.49, \n onlyTransient: .one\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/library/sections/{sectionId}"]["delete"] + update: + x-codeSamples: + - lang: swift + label: deleteLibrary + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.library.deleteLibrary( + request: Operations.DeleteLibraryRequest( + sectionId: 1000 + ) + ) + + switch response.data { + case .object(let object): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/library/onDeck"]["get"] + update: + x-codeSamples: + - lang: swift + label: getOnDeck + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.library.getOnDeck() + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/security/resources"]["get"] + update: + x-codeSamples: + - lang: swift + label: getSourceConnectionInformation + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.authentication.getSourceConnectionInformation( + request: Operations.GetSourceConnectionInformationRequest( + source: "server://client-identifier" + ) + ) + + switch response.data { + case .object(let object): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/pins"]["post"] + update: + x-codeSamples: + - lang: swift + label: getPin + source: "import Foundation\nimport Plexswift\n\nlet client = Client()\n\nlet response = try await client.plex.getPin(\n request: Operations.GetPinRequest(\n strong: false, \n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredApplicationJsonObject(let fourHundredApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/statistics/media"]["get"] + update: + x-codeSamples: + - lang: swift + label: getStatistics + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.statistics.getStatistics( + request: Operations.GetStatisticsRequest( + timespan: 4 + ) + ) + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/:/unscrobble"]["get"] + update: + x-codeSamples: + - lang: swift + label: markUnplayed + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.media.markUnplayed( + request: Operations.MarkUnplayedRequest( + key: 59398 + ) + ) + + switch response.data { + case .object(let object): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/butler"]["get"] + update: + x-codeSamples: + - lang: swift + label: getButlerTasks + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.butler.getButlerTasks() + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/hubs/sections/{sectionId}"]["get"] + update: + x-codeSamples: + - lang: swift + label: getLibraryHubs + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.hubs.getLibraryHubs(\n request: Operations.GetLibraryHubsRequest(\n sectionId: 6728.76, \n count: 9010.22, \n onlyTransient: .zero\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/library/hashes"]["get"] + update: + x-codeSamples: + - lang: swift + label: getFileHash + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.library.getFileHash(\n request: Operations.GetFileHashRequest(\n url: \"file://C:\\Image.png&type=13\", \n type: 4462.17\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/library/metadata/{ratingKey}"]["get"] + update: + x-codeSamples: + - lang: swift + label: getMetadata + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.library.getMetadata( + request: Operations.GetMetadataRequest( + ratingKey: 8382.31 + ) + ) + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/library/metadata/{ratingKey}/children"]["get"] + update: + x-codeSamples: + - lang: swift + label: getMetadataChildren + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.library.getMetadataChildren( + request: Operations.GetMetadataChildrenRequest( + ratingKey: 1539.14 + ) + ) + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/servers"]["get"] + update: + x-codeSamples: + - lang: swift + label: getServerList + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.server.getServerList() + switch response.data { case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): // Handle response @@ -129,22 +477,18 @@ actions: // Handle empty response break } - - target: $["paths"]["/:/unscrobble"]["get"] + - target: $["paths"]["/log/networked"]["get"] update: x-codeSamples: - lang: swift - label: markUnplayed + label: enablePaperTrail source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.media.markUnplayed( - request: Operations.MarkUnplayedRequest( - key: 59398 - ) - ) + let response = try await client.log.enablePaperTrail() switch response.data { case .object(let object): @@ -160,79 +504,18 @@ actions: - lang: swift label: startUniversalTranscode source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.video.startUniversalTranscode(\n request: Operations.StartUniversalTranscodeRequest(\n hasMDE: 1, \n mediaIndex: 0, \n partIndex: 0, \n path: \"/library/metadata/23409\", \n `protocol`: \"hls\", \n addDebugOverlay: 0, \n audioBoost: 100, \n autoAdjustQuality: 0, \n directPlay: 0, \n directStream: 0, \n fastSeek: 0, \n location: \"lan\", \n mediaBufferSize: 102400, \n session: \"zvcage8b7rkioqcm8f4uns4c\", \n subtites: \"burn\", \n subtitleSize: 100\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/hubs"]["get"] + - target: $["paths"]["/butler"]["delete"] update: x-codeSamples: - lang: swift - label: getGlobalHubs - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.hubs.getGlobalHubs(\n request: Operations.GetGlobalHubsRequest(\n count: 1262.49, \n onlyTransient: .one\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/library/recentlyAdded"]["get"] - update: - x-codeSamples: - - lang: swift - label: getRecentlyAdded + label: stopAllTasks source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.library.getRecentlyAdded() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/library/sections/{sectionId}"]["get"] - update: - x-codeSamples: - - lang: swift - label: getLibrary - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.library.getLibrary(\n request: Operations.GetLibraryRequest(\n sectionId: 1000, \n includeDetails: .zero\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/butler/{taskName}"]["delete"] - update: - x-codeSamples: - - lang: swift - label: stopTask - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.butler.stopTask( - request: Operations.StopTaskRequest( - taskName: .backupDatabase - ) - ) - - switch response.data { - case .object(let object): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/log/networked"]["get"] - update: - x-codeSamples: - - lang: swift - label: enablePaperTrail - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.log.enablePaperTrail() + let response = try await client.butler.stopAllTasks() switch response.data { case .object(let object): @@ -292,20 +575,26 @@ actions: // Handle empty response break } - - target: $["paths"]["/updater/check"]["put"] + - target: $["paths"]["/playlists/{playlistID}"]["put"] update: x-codeSamples: - lang: swift - label: checkForUpdates + label: updatePlaylist + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.updatePlaylist(\n request: Operations.UpdatePlaylistRequest(\n playlistID: 3915, \n summary: \"\", \n title: \"\"\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/playlists/{playlistID}/items"]["delete"] + update: + x-codeSamples: + - lang: swift + label: clearPlaylistContents source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.updater.checkForUpdates( - request: Operations.CheckForUpdatesRequest( - download: .one + let response = try await client.playlists.clearPlaylistContents( + request: Operations.ClearPlaylistContentsRequest( + playlistID: 1893.18 ) ) @@ -317,26 +606,20 @@ actions: // Handle empty response break } - - target: $["paths"]["/:/progress"]["post"] + - target: $["paths"]["/butler/{taskName}"]["delete"] update: x-codeSamples: - lang: swift - label: updatePlayProgress - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.media.updatePlayProgress(\n request: Operations.UpdatePlayProgressRequest(\n key: \"\", \n state: \"played\", \n time: 90000\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/library/sections/{sectionId}"]["delete"] - update: - x-codeSamples: - - lang: swift - label: deleteLibrary + label: stopTask source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.library.deleteLibrary( - request: Operations.DeleteLibraryRequest( - sectionId: 1000 + let response = try await client.butler.stopTask( + request: Operations.StopTaskRequest( + taskName: .backupDatabase ) ) @@ -348,22 +631,69 @@ actions: // Handle empty response break } - - target: $["paths"]["/library/metadata/{ratingKey}"]["get"] + - target: $["paths"]["/library/sections/{sectionId}/search"]["get"] update: x-codeSamples: - lang: swift - label: getMetadata + label: searchLibrary + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.library.searchLibrary(\n request: Operations.SearchLibraryRequest(\n sectionId: 933505, \n type: .four\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/pins/{pinID}"]["get"] + update: + x-codeSamples: + - lang: swift + label: getToken + source: "import Foundation\nimport Plexswift\n\nlet client = Client()\n\nlet response = try await client.plex.getToken(\n request: Operations.GetTokenRequest(\n pinID: \"\", \n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/playlists"]["get"] + update: + x-codeSamples: + - lang: swift + label: getPlaylists + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.getPlaylists(\n request: Operations.GetPlaylistsRequest(\n playlistType: .audio, \n smart: .zero\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/updater/apply"]["put"] + update: + x-codeSamples: + - lang: swift + label: applyUpdates + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.updater.applyUpdates(\n request: Operations.ApplyUpdatesRequest(\n skip: .one, \n tonight: .zero\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/library/sections/{sectionId}/{tag}"]["get"] + update: + x-codeSamples: + - lang: swift + label: getLibraryItems + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.library.getLibraryItems(\n request: Operations.GetLibraryItemsRequest(\n sectionId: 1, \n tag: .genre\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/log"]["post"] + update: + x-codeSamples: + - lang: swift + label: logMultiLine source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.library.getMetadata( - request: Operations.GetMetadataRequest( - ratingKey: 8382.31 - ) - ) + let response = try await client.log.logMultiLine() + + switch response.data { + case .object(let object): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/transcode/sessions"]["get"] + update: + x-codeSamples: + - lang: swift + label: getTranscodeSessions + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.sessions.getTranscodeSessions() switch response.data { case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): @@ -376,118 +706,6 @@ actions: // Handle empty response break } - - target: $["paths"]["/library/onDeck"]["get"] - update: - x-codeSamples: - - lang: swift - label: getOnDeck - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.library.getOnDeck() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/playlists/{playlistID}/items"]["put"] - update: - x-codeSamples: - - lang: swift - label: addPlaylistContents - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.addPlaylistContents(\n request: Operations.AddPlaylistContentsRequest(\n playlistID: 8502.01, \n uri: \"server://12345/com.plexapp.plugins.library/library/metadata/1\", \n playQueueID: 123\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/security/resources"]["get"] - update: - x-codeSamples: - - lang: swift - label: getSourceConnectionInformation - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.authentication.getSourceConnectionInformation( - request: Operations.GetSourceConnectionInformationRequest( - source: "server://client-identifier" - ) - ) - - switch response.data { - case .object(let object): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/identity"]["get"] - update: - x-codeSamples: - - lang: swift - label: getServerIdentity - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.server.getServerIdentity() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/hubs/search"]["get"] - update: - x-codeSamples: - - lang: swift - label: performSearch - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.search.performSearch(\n request: Operations.PerformSearchRequest(\n query: \"dylan\", \n limit: 5, \n sectionId: 1516.53\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/playlists/upload"]["post"] - update: - x-codeSamples: - - lang: swift - label: uploadPlaylist - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.uploadPlaylist(\n request: Operations.UploadPlaylistRequest(\n force: .zero, \n path: \"/home/barkley/playlist.m3u\"\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/butler"]["delete"] - update: - x-codeSamples: - - lang: swift - label: stopAllTasks - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.butler.stopAllTasks() - - switch response.data { - case .object(let object): - // Handle response - break - case .empty: - // Handle empty response - break - } - target: $["paths"]["/search"]["get"] update: x-codeSamples: @@ -516,26 +734,44 @@ actions: // Handle empty response break } - - target: $["paths"]["/playlists/{playlistID}/items"]["get"] + - target: $["paths"]["/identity"]["get"] update: x-codeSamples: - lang: swift - label: getPlaylistContents - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.getPlaylistContents(\n request: Operations.GetPlaylistContentsRequest(\n playlistID: 5004.46, \n type: 9403.59\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/transcode/sessions/{sessionKey}"]["delete"] - update: - x-codeSamples: - - lang: swift - label: stopTranscodeSession + label: getServerIdentity source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.sessions.stopTranscodeSession( - request: Operations.StopTranscodeSessionRequest( - sessionKey: "zz7llzqlx8w9vnrsbnwhbmep" + let response = try await client.server.getServerIdentity() + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/updater/check"]["put"] + update: + x-codeSamples: + - lang: swift + label: checkForUpdates + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.updater.checkForUpdates( + request: Operations.CheckForUpdatesRequest( + download: .one ) ) @@ -547,306 +783,6 @@ actions: // Handle empty response break } - - target: $["paths"]["/:/timeline"]["get"] - update: - x-codeSamples: - - lang: swift - label: getTimeline - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.video.getTimeline(\n request: Operations.GetTimelineRequest(\n context: \"home:hub.continueWatching\", \n duration: 10000, \n hasMDE: 1, \n key: \"/library/metadata/23409\", \n playBackTime: 2000, \n playQueueItemID: 1, \n ratingKey: 23409, \n row: 1, \n state: .playing, \n time: 2000\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/log"]["get"] - update: - x-codeSamples: - - lang: swift - label: logLine - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.log.logLine(\n request: Operations.LogLineRequest(\n level: .three, \n message: \"Test log message\", \n source: \"Postman\"\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/pins"]["post"] - update: - x-codeSamples: - - lang: swift - label: getPin - source: "import Foundation\nimport Plexswift\n\nlet client = Client()\n\nlet response = try await client.plex.getPin(\n request: Operations.GetPinRequest(\n strong: false, \n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredApplicationJsonObject(let fourHundredApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/updater/status"]["get"] - update: - x-codeSamples: - - lang: swift - label: getUpdateStatus - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.updater.getUpdateStatus() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/library/sections"]["get"] - update: - x-codeSamples: - - lang: swift - label: getLibraries - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.library.getLibraries() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/transcode/sessions"]["get"] - update: - x-codeSamples: - - lang: swift - label: getTranscodeSessions - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.sessions.getTranscodeSessions() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/photo/:/transcode"]["get"] - update: - x-codeSamples: - - lang: swift - label: getResizedPhoto - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.server.getResizedPhoto(\n request: Operations.GetResizedPhotoRequest(\n blur: 20, \n height: 165, \n minSize: .one, \n opacity: 96541, \n upscale: .zero, \n url: \"/library/metadata/49564/thumb/1654258204\", \n width: 110\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/hubs/sections/{sectionId}"]["get"] - update: - x-codeSamples: - - lang: swift - label: getLibraryHubs - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.hubs.getLibraryHubs(\n request: Operations.GetLibraryHubsRequest(\n sectionId: 6728.76, \n count: 9010.22, \n onlyTransient: .zero\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/security/token"]["get"] - update: - x-codeSamples: - - lang: swift - label: getTransientToken - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.authentication.getTransientToken(\n request: Operations.GetTransientTokenRequest(\n scope: .all, \n type: .delegation\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/statistics/media"]["get"] - update: - x-codeSamples: - - lang: swift - label: getStatistics - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.statistics.getStatistics( - request: Operations.GetStatisticsRequest( - timespan: 4 - ) - ) - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/status/sessions/history/all"]["get"] - update: - x-codeSamples: - - lang: swift - label: getSessionHistory - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.sessions.getSessionHistory() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/hubs/search/voice"]["get"] - update: - x-codeSamples: - - lang: swift - label: performVoiceSearch - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.search.performVoiceSearch(\n request: Operations.PerformVoiceSearchRequest(\n query: \"dead+poop\", \n limit: 5, \n sectionId: 4094.8\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/library/sections/{sectionId}/search"]["get"] - update: - x-codeSamples: - - lang: swift - label: searchLibrary - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.library.searchLibrary(\n request: Operations.SearchLibraryRequest(\n sectionId: 933505, \n type: .four\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/library/metadata/{ratingKey}/children"]["get"] - update: - x-codeSamples: - - lang: swift - label: getMetadataChildren - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.library.getMetadataChildren( - request: Operations.GetMetadataChildrenRequest( - ratingKey: 1539.14 - ) - ) - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/pins/{pinID}"]["get"] - update: - x-codeSamples: - - lang: swift - label: getToken - source: "import Foundation\nimport Plexswift\n\nlet client = Client()\n\nlet response = try await client.plex.getToken(\n request: Operations.GetTokenRequest(\n pinID: \"\", \n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/playlists/{playlistID}"]["delete"] - update: - x-codeSamples: - - lang: swift - label: deletePlaylist - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.playlists.deletePlaylist( - request: Operations.DeletePlaylistRequest( - playlistID: 216.22 - ) - ) - - switch response.data { - case .object(let object): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/playlists/{playlistID}"]["put"] - update: - x-codeSamples: - - lang: swift - label: updatePlaylist - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.updatePlaylist(\n request: Operations.UpdatePlaylistRequest(\n playlistID: 3915, \n summary: \"\", \n title: \"\"\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/log"]["post"] - update: - x-codeSamples: - - lang: swift - label: logMultiLine - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.log.logMultiLine() - - switch response.data { - case .object(let object): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/playlists"]["get"] - update: - x-codeSamples: - - lang: swift - label: getPlaylists - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.getPlaylists(\n request: Operations.GetPlaylistsRequest(\n playlistType: .audio, \n smart: .zero\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/library/sections/{sectionId}/{tag}"]["get"] - update: - x-codeSamples: - - lang: swift - label: getLibraryItems - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.library.getLibraryItems(\n request: Operations.GetLibraryItemsRequest(\n sectionId: 1, \n tag: .genre\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/playlists"]["post"] - update: - x-codeSamples: - - lang: swift - label: createPlaylist - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.createPlaylist(\n request: Operations.CreatePlaylistRequest(\n smart: .one, \n title: \"\", \n type: .photo, \n uri: \"https://inborn-brochure.biz\", \n playQueueID: 3686.33\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/"]["get"] - update: - x-codeSamples: - - lang: swift - label: getServerCapabilities - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.server.getServerCapabilities() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - target: $["paths"]["/devices"]["get"] update: x-codeSamples: @@ -871,18 +807,24 @@ actions: // Handle empty response break } - - target: $["paths"]["/servers"]["get"] + - target: $["paths"]["/hubs/search"]["get"] update: x-codeSamples: - lang: swift - label: getServerList + label: performSearch + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.search.performSearch(\n request: Operations.PerformSearchRequest(\n query: \"dylan\", \n limit: 5, \n sectionId: 1516.53\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/library/recentlyAdded"]["get"] + update: + x-codeSamples: + - lang: swift + label: getRecentlyAdded source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.server.getServerList() + let response = try await client.library.getRecentlyAdded() switch response.data { case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): @@ -895,27 +837,60 @@ actions: // Handle empty response break } - - target: $["paths"]["/butler"]["post"] + - target: $["paths"]["/updater/status"]["get"] update: x-codeSamples: - lang: swift - label: startAllTasks + label: getUpdateStatus source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.butler.startAllTasks() + let response = try await client.updater.getUpdateStatus() switch response.data { - case .object(let object): + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): // Handle response break case .empty: // Handle empty response break } + - target: $["paths"]["/activities"]["get"] + update: + x-codeSamples: + - lang: swift + label: getServerActivities + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.activities.getServerActivities() + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/hubs/search/voice"]["get"] + update: + x-codeSamples: + - lang: swift + label: performVoiceSearch + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.search.performVoiceSearch(\n request: Operations.PerformVoiceSearchRequest(\n query: \"dead+poop\", \n limit: 5, \n sectionId: 4094.8\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - target: $["paths"]["/status/sessions"]["get"] update: x-codeSamples: @@ -940,24 +915,22 @@ actions: // Handle empty response break } - - target: $["paths"]["/updater/apply"]["put"] + - target: $["paths"]["/playlists/{playlistID}"]["get"] update: x-codeSamples: - lang: swift - label: applyUpdates - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.updater.applyUpdates(\n request: Operations.ApplyUpdatesRequest(\n skip: .one, \n tonight: .zero\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/:/prefs"]["get"] - update: - x-codeSamples: - - lang: swift - label: getServerPreferences + label: getPlaylist source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.server.getServerPreferences() + let response = try await client.playlists.getPlaylist( + request: Operations.GetPlaylistRequest( + playlistID: 4109.48 + ) + ) switch response.data { case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): @@ -970,77 +943,104 @@ actions: // Handle empty response break } - - target: $["paths"]["/clients"]["get"] + - target: $["paths"]["/playlists/{playlistID}"]["delete"] update: x-codeSamples: - lang: swift - label: getAvailableClients + label: deletePlaylist source: |- import Foundation import Plexswift let client = Client(security: .accessToken("")) - let response = try await client.server.getAvailableClients() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/butler"]["get"] - update: - x-codeSamples: - - lang: swift - label: getButlerTasks - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.butler.getButlerTasks() - - switch response.data { - case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): - // Handle response - break - case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): - // Handle response - break - case .empty: - // Handle empty response - break - } - - target: $["paths"]["/library/hashes"]["get"] - update: - x-codeSamples: - - lang: swift - label: getFileHash - source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.library.getFileHash(\n request: Operations.GetFileHashRequest(\n url: \"file://C:\\Image.png&type=13\", \n type: 4462.17\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" - - target: $["paths"]["/playlists/{playlistID}/items"]["delete"] - update: - x-codeSamples: - - lang: swift - label: clearPlaylistContents - source: |- - import Foundation - import Plexswift - - let client = Client(security: .accessToken("")) - - let response = try await client.playlists.clearPlaylistContents( - request: Operations.ClearPlaylistContentsRequest( - playlistID: 1893.18 + let response = try await client.playlists.deletePlaylist( + request: Operations.DeletePlaylistRequest( + playlistID: 216.22 ) ) + switch response.data { + case .object(let object): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/playlists/{playlistID}/items"]["put"] + update: + x-codeSamples: + - lang: swift + label: addPlaylistContents + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.addPlaylistContents(\n request: Operations.AddPlaylistContentsRequest(\n playlistID: 8502.01, \n uri: \"server://12345/com.plexapp.plugins.library/library/metadata/1\", \n playQueueID: 123\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/log"]["get"] + update: + x-codeSamples: + - lang: swift + label: logLine + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.log.logLine(\n request: Operations.LogLineRequest(\n level: .three, \n message: \"Test log message\", \n source: \"Postman\"\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/playlists"]["post"] + update: + x-codeSamples: + - lang: swift + label: createPlaylist + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.playlists.createPlaylist(\n request: Operations.CreatePlaylistRequest(\n smart: .one, \n title: \"\", \n type: .photo, \n uri: \"https://inborn-brochure.biz\", \n playQueueID: 3686.33\n )\n)\n\nswitch response.data {\ncase .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):\n // Handle response\n break\ncase .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/security/token"]["get"] + update: + x-codeSamples: + - lang: swift + label: getTransientToken + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.authentication.getTransientToken(\n request: Operations.GetTransientTokenRequest(\n scope: .all, \n type: .delegation\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/"]["get"] + update: + x-codeSamples: + - lang: swift + label: getServerCapabilities + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.server.getServerCapabilities() + + switch response.data { + case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject): + // Handle response + break + case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject): + // Handle response + break + case .empty: + // Handle empty response + break + } + - target: $["paths"]["/photo/:/transcode"]["get"] + update: + x-codeSamples: + - lang: swift + label: getResizedPhoto + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.server.getResizedPhoto(\n request: Operations.GetResizedPhotoRequest(\n blur: 20, \n height: 165, \n minSize: .one, \n opacity: 96541, \n upscale: .zero, \n url: \"/library/metadata/49564/thumb/1654258204\", \n width: 110\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/:/timeline"]["get"] + update: + x-codeSamples: + - lang: swift + label: getTimeline + source: "import Foundation\nimport Plexswift\n\nlet client = Client(security: .accessToken(\"\"))\n\nlet response = try await client.video.getTimeline(\n request: Operations.GetTimelineRequest(\n context: \"home:hub.continueWatching\", \n duration: 10000, \n hasMDE: 1, \n key: \"/library/metadata/23409\", \n playBackTime: 2000, \n playQueueItemID: 1, \n ratingKey: 23409, \n row: 1, \n state: .playing, \n time: 2000\n )\n)\n\nswitch response.data {\ncase .object(let object):\n // Handle response\n break\ncase .empty:\n // Handle empty response\n break\n}" + - target: $["paths"]["/butler"]["post"] + update: + x-codeSamples: + - lang: swift + label: startAllTasks + source: |- + import Foundation + import Plexswift + + let client = Client(security: .accessToken("")) + + let response = try await client.butler.startAllTasks() + switch response.data { case .object(let object): // Handle response