diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock
index 11ccd1c7..79cc9605 100755
--- a/.speakeasy/gen.lock
+++ b/.speakeasy/gen.lock
@@ -1,12 +1,12 @@
lockVersion: 2.0.0
id: 1732900d-e173-47c1-a90d-d45182eb35d9
management:
- docChecksum: 2a6e4c8f6e1fedff5a37da76411f22df
+ docChecksum: 46ec1ce493542eb1a574ee88fc8b0895
docVersion: 1.1.1
speakeasyVersion: 1.615.2
generationVersion: 2.698.4
- releaseVersion: 0.19.1
- configChecksum: 62d759c5f60b90b5bf0da4b94b9dd29d
+ releaseVersion: 0.20.1
+ configChecksum: 3ae1fd8825523e7d3c4f0ded44ee4c16
repoURL: https://github.com/LukeHagar/plexjava.git
published: true
features:
@@ -8400,4 +8400,3 @@ examples:
application/json: {"MediaContainer": {"Metadata": [{"Autotag": [{"filter": "actor=49", "role": "Secretary", "tag": "Shaun Lawton", "tagKey": "5d3ee12c4cde6a001c3e0b27", "thumb": "http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg"}], "Country": [{"filter": "actor=49", "role": "Secretary", "tag": "Shaun Lawton", "tagKey": "5d3ee12c4cde6a001c3e0b27", "thumb": "http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg"}], "Director": [{"filter": "actor=49", "role": "Secretary", "tag": "Shaun Lawton", "tagKey": "5d3ee12c4cde6a001c3e0b27", "thumb": "http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg"}], "Genre": [{"filter": "actor=49", "role": "Secretary", "tag": "Shaun Lawton", "tagKey": "5d3ee12c4cde6a001c3e0b27", "thumb": "http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg"}], "Guid": [{"filter": "actor=49", "role": "Secretary", "tag": "Shaun Lawton", "tagKey": "5d3ee12c4cde6a001c3e0b27", "thumb": "http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg"}], "Media": [{"aspectRatio": 2.35, "audioChannels": 2, "audioCodec": "aac", "audioProfile": "lc", "bitrate": 5612, "container": "mov", "duration": 150192, "has64bitOffsets": false, "hasVoiceActivity": true, "height": 544, "id": 1, "optimizedForStreaming": false, "Part": [{"audioProfile": "lc", "container": "mov", "duration": 150192, "file": "/home/schuyler/Videos/Trailers/Cloud Atlas (2012).mov", "has64bitOffsets": false, "id": 1, "key": "/library/parts/1/1531779263/file.mov", "optimizedForStreaming": false, "size": 105355654, "Stream": [{"default": true, "audioChannelLayout": "stereo", "bitDepth": 8, "bitrate": 5466, "canAutoSync": true, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codec": "h264", "colorPrimaries": "bt709", "colorRange": "tv", "colorSpace": "bt709", "colorTrc": "bt709", "displayTitle": "English (H.264 Main)", "frameRate": 23.976, "hasScalingMatrix": false, "height": 544, "id": 1, "index": 0, "key": "/library/streams/1", "language": "English", "languageCode": "eng", "level": 31, "profile": "main", "refFrames": 2, "samplingRate": 48000, "streamIdentifier": 1, "streamType": 1, "width": 1280}], "videoProfile": "main"}], "videoCodec": "h264", "videoFrameRate": "24p", "videoProfile": "main", "videoResolution": "720", "width": 1280}], "Rating": [{"filter": "actor=49", "role": "Secretary", "tag": "Shaun Lawton", "tagKey": "5d3ee12c4cde6a001c3e0b27", "thumb": "http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg"}], "Role": [{"filter": "actor=49", "role": "Secretary", "tag": "Shaun Lawton", "tagKey": "5d3ee12c4cde6a001c3e0b27", "thumb": "http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg"}], "Writer": [{"filter": "actor=49", "role": "Secretary", "tag": "Shaun Lawton", "tagKey": "5d3ee12c4cde6a001c3e0b27", "thumb": "http://image.tmdb.org/t/p/original/lcJ8qM51ClAR2UzXU1mkZGfnn3o.jpg"}]}]}}
examplesVersion: 1.0.2
generatedTests: {}
-releaseNotes: "## Java SDK Changes Detected:\n* `plex-api.butler.startTask()`: \n * `request` **Changed** **Breaking** :warning:\n * `error` **Changed** **Breaking** :warning:\n* `plex-api.butler.stopTask()`: \n * `request` **Changed** **Breaking** :warning:\n * `error` **Changed** **Breaking** :warning:\n* `plex-api.updater.applyUpdates()`: \n * `request` **Changed** **Breaking** :warning:\n * `error` **Changed** **Breaking** :warning:\n* `plex-api.general.getServerInfo()`: **Added**\n* `plex-api.general.getIdentity()`: **Added**\n* `plex-api.general.getSourceConnectionInformation()`: **Added**\n* `plex-api.general.getTransientToken()`: **Added**\n* `plex-api.events.getNotifications()`: **Added**\n* `plex-api.events.connectWebSocket()`: **Added**\n* `plex-api.preferences.getAllPreferences()`: **Added**\n* `plex-api.preferences.setPreferences()`: **Added**\n* `plex-api.preferences.getPreference()`: **Added**\n* `plex-api.rate.setRating()`: **Added**\n* `plex-api.timeline.markPlayed()`: **Added**\n* `plex-api.timeline.report()`: **Added**\n* `plex-api.timeline.unscrobble()`: **Added**\n* `plex-api.activities.listActivities()`: **Added**\n* `plex-api.activities.cancelActivity()`: **Added**\n* `plex-api.butler.stopTasks()`: **Added**\n* `plex-api.butler.getTasks()`: **Added**\n* `plex-api.butler.startTasks()`: **Added**\n* `plex-api.downloadQueue.createDownloadQueue()`: **Added**\n* `plex-api.downloadQueue.getDownloadQueue()`: **Added**\n* `plex-api.downloadQueue.addDownloadQueueItems()`: **Added**\n* `plex-api.downloadQueue.listDownloadQueueItems()`: **Added**\n* `plex-api.downloadQueue.getItemDecision()`: **Added**\n* `plex-api.downloadQueue.getDownloadQueueMedia()`: **Added**\n* `plex-api.downloadQueue.removeDownloadQueueItems()`: **Added**\n* `plex-api.downloadQueue.getDownloadQueueItems()`: **Added**\n* `plex-api.downloadQueue.restartProcessingDownloadQueueItems()`: **Added**\n* `plex-api.hubs.getAllHubs()`: **Added**\n* `plex-api.hubs.getContinueWatching()`: **Added**\n* `plex-api.hubs.getHubItems()`: **Added**\n* `plex-api.hubs.getPromotedHubs()`: **Added**\n* `plex-api.hubs.getMetadataHubs()`: **Added**\n* `plex-api.hubs.getPostplayHubs()`: **Added**\n* `plex-api.hubs.getRelatedHubs()`: **Added**\n* `plex-api.hubs.getSectionHubs()`: **Added**\n* `plex-api.hubs.resetSectionDefaults()`: **Added**\n* `plex-api.hubs.listHubs()`: **Added**\n* `plex-api.hubs.createCustomHub()`: **Added**\n* `plex-api.hubs.moveHub()`: **Added**\n* `plex-api.hubs.deleteCustomHub()`: **Added**\n* `plex-api.hubs.updateHubVisibility()`: **Added**\n* `plex-api.search.searchHubs()`: **Added**\n* `plex-api.search.voiceSearchHubs()`: **Added**\n* `plex-api.library.getLibraryItems()`: **Added**\n* `plex-api.library.deleteCaches()`: **Added**\n* `plex-api.library.cleanBundles()`: **Added**\n* `plex-api.library.ingestTransientItem()`: **Added**\n* `plex-api.library.getLibraryMatches()`: **Added**\n* `plex-api.library.optimizeDatabase()`: **Added**\n* `plex-api.library.getRandomArtwork()`: **Added**\n* `plex-api.library.getSections()`: **Added**\n* `plex-api.library.addSection()`: **Added**\n* `plex-api.library.stopAllRefreshes()`: **Added**\n* `plex-api.library.getSectionsPrefs()`: **Added**\n* `plex-api.library.refreshSectionsMetadata()`: **Added**\n* `plex-api.library.getTags()`: **Added**\n* `plex-api.library.deleteMetadataItem()`: **Added**\n* `plex-api.library.editMetadataItem()`: **Added**\n* `plex-api.library.detectAds()`: **Added**\n* `plex-api.library.getAllItemLeaves()`: **Added**\n* `plex-api.library.analyzeMetadata()`: **Added**\n* `plex-api.library.generateThumbs()`: **Added**\n* `plex-api.library.detectCredits()`: **Added**\n* `plex-api.library.getExtras()`: **Added**\n* `plex-api.library.addExtras()`: **Added**\n* `plex-api.library.getFile()`: **Added**\n* `plex-api.library.startBifGeneration()`: **Added**\n* `plex-api.library.detectIntros()`: **Added**\n* `plex-api.library.createMarker()`: **Added**\n* `plex-api.library.matchItem()`: **Added**\n* `plex-api.library.listMatches()`: **Added**\n* `plex-api.library.mergeItems()`: **Added**\n* `plex-api.library.listSonicallySimilar()`: **Added**\n* `plex-api.library.setItemPreferences()`: **Added**\n* `plex-api.library.refreshItemsMetadata()`: **Added**\n* `plex-api.library.getRelatedItems()`: **Added**\n* `plex-api.library.listSimilar()`: **Added**\n* `plex-api.library.splitItem()`: **Added**\n* `plex-api.library.addSubtitles()`: **Added**\n* `plex-api.library.getItemTree()`: **Added**\n* `plex-api.library.unmatch()`: **Added**\n* `plex-api.library.listTopUsers()`: **Added**\n* `plex-api.library.detectVoiceActivity()`: **Added**\n* `plex-api.library.getAugmentationStatus()`: **Added**\n* `plex-api.library.setStreamSelection()`: **Added**\n* `plex-api.library.getPerson()`: **Added**\n* `plex-api.library.listPersonMedia()`: **Added**\n* `plex-api.library.deleteLibrarySection()`: **Added**\n* `plex-api.library.getLibraryDetails()`: **Added**\n* `plex-api.library.editSection()`: **Added**\n* `plex-api.library.updateItems()`: **Added**\n* `plex-api.library.startAnalysis()`: **Added**\n* `plex-api.library.autocomplete()`: **Added**\n* `plex-api.library.getCollections()`: **Added**\n* `plex-api.library.getCommon()`: **Added**\n* `plex-api.library.emptyTrash()`: **Added**\n* `plex-api.library.getSectionFilters()`: **Added**\n* `plex-api.library.getFirstCharacters()`: **Added**\n* `plex-api.library.deleteIndexes()`: **Added**\n* `plex-api.library.deleteIntros()`: **Added**\n* `plex-api.library.getSectionPreferences()`: **Added**\n* `plex-api.library.setSectionPreferences()`: **Added**\n* `plex-api.library.cancelRefresh()`: **Added**\n* `plex-api.library.refreshSection()`: **Added**\n* `plex-api.library.getAvailableSorts()`: **Added**\n* `plex-api.library.getStreamLevels()`: **Added**\n* `plex-api.library.getStreamLoudness()`: **Added**\n* `plex-api.library.getChapterImage()`: **Added**\n* `plex-api.library.setItemArtwork()`: **Added**\n* `plex-api.library.updateItemArtwork()`: **Added**\n* `plex-api.library.deleteMarker()`: **Added**\n* `plex-api.library.editMarker()`: **Added**\n* `plex-api.library.deleteMediaItem()`: **Added**\n* `plex-api.library.getPartIndex()`: **Added**\n* `plex-api.library.deleteCollection()`: **Added**\n* `plex-api.library.getSectionImage()`: **Added**\n* `plex-api.library.deleteStream()`: **Added**\n* `plex-api.library.getStream()`: **Added**\n* `plex-api.library.setStreamOffset()`: **Added**\n* `plex-api.library.getItemArtwork()`: **Added**\n* `plex-api.library.getMediaPart()`: **Added**\n* `plex-api.library.getImageFromBif()`: **Added**\n* `plex-api.collections.createCollection()`: **Added**\n* `plex-api.dvRs.listDvRs()`: **Added**\n* `plex-api.dvRs.createDvr()`: **Added**\n* `plex-api.dvRs.deleteDvr()`: **Added**\n* `plex-api.dvRs.getDvr()`: **Added**\n* `plex-api.dvRs.deleteLineup()`: **Added**\n* `plex-api.dvRs.addLineup()`: **Added**\n* `plex-api.dvRs.setDvrPreferences()`: **Added**\n* `plex-api.dvRs.stopDvrReload()`: **Added**\n* `plex-api.dvRs.reloadGuide()`: **Added**\n* `plex-api.dvRs.tuneChannel()`: **Added**\n* `plex-api.dvRs.removeDeviceFromDvr()`: **Added**\n* `plex-api.dvRs.addDeviceToDvr()`: **Added**\n* `plex-api.epg.computeChannelMap()`: **Added**\n* `plex-api.epg.getChannels()`: **Added**\n* `plex-api.epg.getCountries()`: **Added**\n* `plex-api.epg.getAllLanguages()`: **Added**\n* `plex-api.epg.getLineup()`: **Added**\n* `plex-api.epg.getLineupChannels()`: **Added**\n* `plex-api.epg.getCountriesLineups()`: **Added**\n* `plex-api.epg.getCountryRegions()`: **Added**\n* `plex-api.epg.listLineups()`: **Added**\n* `plex-api.liveTv.getSessions()`: **Added**\n* `plex-api.liveTv.getLiveTvSession()`: **Added**\n* `plex-api.liveTv.getSessionPlaylistIndex()`: **Added**\n* `plex-api.liveTv.getSessionSegment()`: **Added**\n* `plex-api.log.writeLog()`: **Added**\n* `plex-api.log.writeMessage()`: **Added**\n* `plex-api.log.enablePapertrail()`: **Added**\n* `plex-api.devices.getAvailableGrabbers()`: **Added**\n* `plex-api.devices.listDevices()`: **Added**\n* `plex-api.devices.addDevice()`: **Added**\n* `plex-api.devices.discoverDevices()`: **Added**\n* `plex-api.devices.removeDevice()`: **Added**\n* `plex-api.devices.getDeviceDetails()`: **Added**\n* `plex-api.devices.modifyDevice()`: **Added**\n* `plex-api.devices.setChannelmap()`: **Added**\n* `plex-api.devices.getDevicesChannels()`: **Added**\n* `plex-api.devices.setDevicePreferences()`: **Added**\n* `plex-api.devices.stopScan()`: **Added**\n* `plex-api.devices.scan()`: **Added**\n* `plex-api.devices.getThumb()`: **Added**\n* `plex-api.provider.listProviders()`: **Added**\n* `plex-api.provider.addProvider()`: **Added**\n* `plex-api.provider.refreshProviders()`: **Added**\n* `plex-api.provider.deleteMediaProvider()`: **Added**\n* `plex-api.subscriptions.getAllSubscriptions()`: **Added**\n* `plex-api.subscriptions.createSubscription()`: **Added**\n* `plex-api.subscriptions.processSubscriptions()`: **Added**\n* `plex-api.subscriptions.getScheduledRecordings()`: **Added**\n* `plex-api.subscriptions.getTemplate()`: **Added**\n* `plex-api.subscriptions.cancelGrab()`: **Added**\n* `plex-api.subscriptions.deleteSubscription()`: **Added**\n* `plex-api.subscriptions.getSubscription()`: **Added**\n* `plex-api.subscriptions.editSubscriptionPreferences()`: **Added**\n* `plex-api.subscriptions.reorderSubscription()`: **Added**\n* `plex-api.transcoder.transcodeImage()`: **Added**\n* `plex-api.transcoder.makeDecision()`: **Added**\n* `plex-api.transcoder.triggerFallback()`: **Added**\n* `plex-api.transcoder.transcodeSubtitles()`: **Added**\n* `plex-api.transcoder.startTranscodeSession()`: **Added**\n* `plex-api.playlist.listPlaylists()`: **Added**\n* `plex-api.playlist.getPlaylist()`: **Added**\n* `plex-api.playlist.getPlaylistItems()`: **Added**\n* `plex-api.libraryPlaylists.createPlaylist()`: **Added**\n* `plex-api.libraryPlaylists.uploadPlaylist()`: **Added**\n* `plex-api.libraryPlaylists.deletePlaylist()`: **Added**\n* `plex-api.libraryPlaylists.updatePlaylist()`: **Added**\n* `plex-api.libraryPlaylists.getPlaylistGenerators()`: **Added**\n* `plex-api.libraryPlaylists.clearPlaylistItems()`: **Added**\n* `plex-api.libraryPlaylists.addPlaylistItems()`: **Added**\n* `plex-api.libraryPlaylists.deletePlaylistItem()`: **Added**\n* `plex-api.libraryPlaylists.getPlaylistGenerator()`: **Added**\n* `plex-api.libraryPlaylists.getPlaylistGeneratorItems()`: **Added**\n* `plex-api.libraryPlaylists.movePlaylistItem()`: **Added**\n* `plex-api.libraryPlaylists.refreshPlaylist()`: **Added**\n* `plex-api.playQueue.createPlayQueue()`: **Added**\n* `plex-api.playQueue.getPlayQueue()`: **Added**\n* `plex-api.playQueue.addToPlayQueue()`: **Added**\n* `plex-api.playQueue.clearPlayQueue()`: **Added**\n* `plex-api.playQueue.resetPlayQueue()`: **Added**\n* `plex-api.playQueue.shuffle()`: **Added**\n* `plex-api.playQueue.unshuffle()`: **Added**\n* `plex-api.playQueue.deletePlayQueueItem()`: **Added**\n* `plex-api.playQueue.movePlayQueueItem()`: **Added**\n* `plex-api.ultraBlur.getColors()`: **Added**\n* `plex-api.ultraBlur.getImage()`: **Added**\n* `plex-api.status.listSessions()`: **Added**\n* `plex-api.status.getBackgroundTasks()`: **Added**\n* `plex-api.status.listPlaybackHistory()`: **Added**\n* `plex-api.status.terminateSession()`: **Added**\n* `plex-api.status.deleteHistory()`: **Added**\n* `plex-api.status.getHistoryItem()`: **Added**\n* `plex-api.updater.checkUpdates()`: **Added**\n* `plex-api.updater.getUpdatesStatus()`: **Added**\n* `plex-api.content.getCollectionItems()`: **Added**\n* `plex-api.content.getMetadataItem()`: **Added**\n* `plex-api.content.getAlbums()`: **Added**\n* `plex-api.content.listContent()`: **Added**\n* `plex-api.content.getAllLeaves()`: **Added**\n* `plex-api.content.getArts()`: **Added**\n* `plex-api.content.getCategories()`: **Added**\n* `plex-api.content.getCluster()`: **Added**\n* `plex-api.content.getSonicPath()`: **Added**\n* `plex-api.content.getFolders()`: **Added**\n* `plex-api.content.listMoments()`: **Added**\n* `plex-api.content.getSonicallySimilar()`: **Added**\n* `plex-api.content.getCollectionImage()`: **Added**\n* `plex-api.libraryCollections.addCollectionItems()`: **Added**\n* `plex-api.libraryCollections.deleteCollectionItem()`: **Added**\n* `plex-api.libraryCollections.moveCollectionItem()`: **Added**\n* `plex-api.server.getServerCapabilities()`: **Deleted** **Breaking** :warning:\n* `plex-api.server.getServerPreferences()`: **Deleted** **Breaking** :warning:\n* `plex-api.server.getAvailableClients()`: **Deleted** **Breaking** :warning:\n* `plex-api.server.getDevices()`: **Deleted** **Breaking** :warning:\n* `plex-api.server.getServerIdentity()`: **Deleted** **Breaking** :warning:\n* `plex-api.server.getMyPlexAccount()`: **Deleted** **Breaking** :warning:\n* `plex-api.server.getResizedPhoto()`: **Deleted** **Breaking** :warning:\n* `plex-api.server.getMediaProviders()`: **Deleted** **Breaking** :warning:\n* `plex-api.server.getServerList()`: **Deleted** **Breaking** :warning:\n* `plex-api.media.markPlayed()`: **Deleted** **Breaking** :warning:\n* `plex-api.media.markUnplayed()`: **Deleted** **Breaking** :warning:\n* `plex-api.media.updatePlayProgress()`: **Deleted** **Breaking** :warning:\n* `plex-api.media.getBannerImage()`: **Deleted** **Breaking** :warning:\n* `plex-api.media.getThumbImage()`: **Deleted** **Breaking** :warning:\n* `plex-api.video.getTimeline()`: **Deleted** **Breaking** :warning:\n* `plex-api.video.startUniversalTranscode()`: **Deleted** **Breaking** :warning:\n* `plex-api.activities.getServerActivities()`: **Deleted** **Breaking** :warning:\n* `plex-api.activities.cancelServerActivities()`: **Deleted** **Breaking** :warning:\n* `plex-api.butler.getButlerTasks()`: **Deleted** **Breaking** :warning:\n* `plex-api.butler.startAllTasks()`: **Deleted** **Breaking** :warning:\n* `plex-api.butler.stopAllTasks()`: **Deleted** **Breaking** :warning:\n* `plex-api.plex.getCompanionsData()`: **Deleted** **Breaking** :warning:\n* `plex-api.plex.getUserFriends()`: **Deleted** **Breaking** :warning:\n* `plex-api.plex.getGeoData()`: **Deleted** **Breaking** :warning:\n* `plex-api.plex.getHomeData()`: **Deleted** **Breaking** :warning:\n* `plex-api.plex.getServerResources()`: **Deleted** **Breaking** :warning:\n* `plex-api.plex.getPin()`: **Deleted** **Breaking** :warning:\n* `plex-api.plex.getTokenByPinId()`: **Deleted** **Breaking** :warning:\n* `plex-api.hubs.getGlobalHubs()`: **Deleted** **Breaking** :warning:\n* `plex-api.hubs.getRecentlyAdded()`: **Deleted** **Breaking** :warning:\n* `plex-api.hubs.getLibraryHubs()`: **Deleted** **Breaking** :warning:\n* `plex-api.search.performSearch()`: **Deleted** **Breaking** :warning:\n* `plex-api.search.performVoiceSearch()`: **Deleted** **Breaking** :warning:\n* `plex-api.search.getSearchResults()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getFileHash()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getRecentlyAddedLibrary()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getAllLibraries()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getLibraryDetails()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.deleteLibrary()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getLibraryItems()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getLibrarySectionsAll()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getRefreshLibraryMetadata()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getSearchLibrary()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getGenresLibrary()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getCountriesLibrary()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getActorsLibrary()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getSearchAllLibraries()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getMediaMetaData()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getMediaArts()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.postMediaArts()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getMediaPosters()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.postMediaPoster()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getMetadataChildren()`: **Deleted** **Breaking** :warning:\n* `plex-api.library.getTopWatchedContent()`: **Deleted** **Breaking** :warning:\n* `plex-api.watchlist.getWatchList()`: **Deleted** **Breaking** :warning:\n* `plex-api.log.logLine()`: **Deleted** **Breaking** :warning:\n* `plex-api.log.logMultiLine()`: **Deleted** **Breaking** :warning:\n* `plex-api.log.enablePaperTrail()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.createPlaylist()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.getPlaylists()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.getPlaylist()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.deletePlaylist()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.updatePlaylist()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.getPlaylistContents()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.clearPlaylistContents()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.addPlaylistContents()`: **Deleted** **Breaking** :warning:\n* `plex-api.playlists.uploadPlaylist()`: **Deleted** **Breaking** :warning:\n* `plex-api.authentication.getTransientToken()`: **Deleted** **Breaking** :warning:\n* `plex-api.authentication.getSourceConnectionInformation()`: **Deleted** **Breaking** :warning:\n* `plex-api.authentication.getTokenDetails()`: **Deleted** **Breaking** :warning:\n* `plex-api.authentication.postUsersSignInData()`: **Deleted** **Breaking** :warning:\n* `plex-api.statistics.getStatistics()`: **Deleted** **Breaking** :warning:\n* `plex-api.statistics.getResourcesStatistics()`: **Deleted** **Breaking** :warning:\n* `plex-api.statistics.getBandwidthStatistics()`: **Deleted** **Breaking** :warning:\n* `plex-api.sessions.getSessions()`: **Deleted** **Breaking** :warning:\n* `plex-api.sessions.getSessionHistory()`: **Deleted** **Breaking** :warning:\n* `plex-api.sessions.getTranscodeSessions()`: **Deleted** **Breaking** :warning:\n* `plex-api.sessions.stopTranscodeSession()`: **Deleted** **Breaking** :warning:\n* `plex-api.updater.getUpdateStatus()`: **Deleted** **Breaking** :warning:\n* `plex-api.updater.checkForUpdates()`: **Deleted** **Breaking** :warning:\n* `plex-api.users.getUsers()`: **Deleted** **Breaking** :warning:\n"
diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml
index 10fb88c5..ab1c2b36 100644
--- a/.speakeasy/gen.yaml
+++ b/.speakeasy/gen.yaml
@@ -22,7 +22,7 @@ generation:
generateNewTests: false
skipResponseBodyAssertions: false
java:
- version: 0.19.1
+ version: 0.20.1
additionalDependencies: []
additionalPlugins: []
artifactID: plexapi
diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock
index 4b566fe4..a38bb04e 100644
--- a/.speakeasy/workflow.lock
+++ b/.speakeasy/workflow.lock
@@ -8,20 +8,20 @@ sources:
- latest
plexapi:
sourceNamespace: plexapi
- sourceRevisionDigest: sha256:bc60551015634fd59475cf17983ca3aedcab591426d526ab1e3634b1feedaec1
- sourceBlobDigest: sha256:fc8cd5343a94564b646830738f38e065d61e2ea63e4a1383ce07533586889950
+ sourceRevisionDigest: sha256:0e9f7ca03e6a970d7b77654ab41d0a1605f0105871db2630a7afc85d4362b624
+ sourceBlobDigest: sha256:c0a6079f21e9d8cf8b3a205d2da333b78b2cb7e0db9dd895a41c68c2580e2d64
tags:
- latest
- - speakeasy-sdk-regen-1760251795
+ - speakeasy-sdk-regen-1760315484
- 1.1.1
targets:
plexjava:
source: plexapi
sourceNamespace: plexapi
- sourceRevisionDigest: sha256:bc60551015634fd59475cf17983ca3aedcab591426d526ab1e3634b1feedaec1
- sourceBlobDigest: sha256:fc8cd5343a94564b646830738f38e065d61e2ea63e4a1383ce07533586889950
+ sourceRevisionDigest: sha256:0e9f7ca03e6a970d7b77654ab41d0a1605f0105871db2630a7afc85d4362b624
+ sourceBlobDigest: sha256:c0a6079f21e9d8cf8b3a205d2da333b78b2cb7e0db9dd895a41c68c2580e2d64
codeSamplesNamespace: code-samples-java-plexjava
- codeSamplesRevisionDigest: sha256:b2a3306d8dbea9843d858a4e35373df6988c2c0cf53086ae4cd2072c2c8ffb06
+ codeSamplesRevisionDigest: sha256:e076772184b6e43037b79abcef938bd0dd86905117a8634a7ed733736455b55e
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
diff --git a/README.md b/README.md
index d5679878..d8ac799a 100644
--- a/README.md
+++ b/README.md
@@ -43,7 +43,7 @@ The samples below show how a published SDK artifact is used:
Gradle:
```groovy
-implementation 'dev.plexapi:plexapi:0.19.1'
+implementation 'dev.plexapi:plexapi:0.20.1'
```
Maven:
@@ -51,7 +51,7 @@ Maven:
dev.plexapi
plexapi
- 0.19.1
+ 0.20.1
```
@@ -592,7 +592,7 @@ You can override the default server globally using the `.serverIndex(int serverI
| --- | ---------------------------------------------------------- | -------------------------------------------- | ----------- |
| 0 | `https://{IP-description}.{identifier}.plex.direct:{port}` | `identifier`
`IP-description`
`port` | |
| 1 | `{protocol}://{host}:{port}` | `protocol`
`host`
`port` | |
-| 2 | `https://{server_url}` | `server_url` | |
+| 2 | `https://{full_server_url}` | `server_url` | |
If the selected server has variables, you may override its default values using the associated builder method(s):
@@ -670,7 +670,7 @@ public class Application {
public static void main(String[] args) throws Exception {
PlexAPI sdk = PlexAPI.builder()
- .serverURL("https://http://localhost:32400")
+ .serverURL("https://{full_server_url}")
.accepts(Accepts.APPLICATION_XML)
.clientIdentifier("abc123")
.product("Plex for Roku")
diff --git a/RELEASES.md b/RELEASES.md
index 5554e02f..fc1e1af4 100644
--- a/RELEASES.md
+++ b/RELEASES.md
@@ -388,4 +388,14 @@ Based on:
### Generated
- [java v0.19.1] .
### Releases
-- [Maven Central v0.19.1] https://central.sonatype.com/artifact/dev.plexapi/plexapi/0.19.1 - .
\ No newline at end of file
+- [Maven Central v0.19.1] https://central.sonatype.com/artifact/dev.plexapi/plexapi/0.19.1 - .
+
+## 2025-10-13 00:31:03
+### Changes
+Based on:
+- OpenAPI Doc
+- Speakeasy CLI 1.615.2 (2.698.4) https://github.com/speakeasy-api/speakeasy
+### Generated
+- [java v0.20.1] .
+### Releases
+- [Maven Central v0.20.1] https://central.sonatype.com/artifact/dev.plexapi/plexapi/0.20.1 - .
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 8bfa93d3..a0619cf7 100644
--- a/build.gradle
+++ b/build.gradle
@@ -105,7 +105,7 @@ publishing {
// https://github.com/gradle/gradle/issues/18619
groupId = "dev.plexapi"
artifactId = "plexapi"
- version = "0.19.1"
+ version = "0.20.1"
from components.java
diff --git a/gradle.properties b/gradle.properties
index b491e413..30337e89 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,4 +1,4 @@
groupId=dev.plexapi
artifactId=plexapi
-version=0.19.1
+version=0.20.1
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g
diff --git a/src/main/java/dev/plexapi/sdk/PlexAPI.java b/src/main/java/dev/plexapi/sdk/PlexAPI.java
index 0cb8ee6e..96d0672c 100644
--- a/src/main/java/dev/plexapi/sdk/PlexAPI.java
+++ b/src/main/java/dev/plexapi/sdk/PlexAPI.java
@@ -26,7 +26,7 @@ public class PlexAPI {
"{protocol}://{host}:{port}",
- "https://{server_url}",
+ "https://{full_server_url}",
};
/**
diff --git a/src/main/java/dev/plexapi/sdk/SDKConfiguration.java b/src/main/java/dev/plexapi/sdk/SDKConfiguration.java
index efdde4ad..0e2ef1cf 100644
--- a/src/main/java/dev/plexapi/sdk/SDKConfiguration.java
+++ b/src/main/java/dev/plexapi/sdk/SDKConfiguration.java
@@ -25,7 +25,7 @@ public class SDKConfiguration {
private static final String LANGUAGE = "java";
public static final String OPENAPI_DOC_VERSION = "1.1.1";
- public static final String SDK_VERSION = "0.19.1";
+ public static final String SDK_VERSION = "0.20.1";
public static final String GEN_VERSION = "2.698.4";
private static final String BASE_PACKAGE = "dev.plexapi.sdk";
public static final String USER_AGENT =