* `plex-api.butler.startTask()`: * `request` **Changed** **Breaking** ⚠️ * `error` **Changed** **Breaking** ⚠️ * `plex-api.butler.stopTask()`: * `request` **Changed** **Breaking** ⚠️ * `error` **Changed** **Breaking** ⚠️ * `plex-api.updater.applyUpdates()`: * `request` **Changed** **Breaking** ⚠️ * `error` **Changed** **Breaking** ⚠️ * `plex-api.general.getServerInfo()`: **Added** * `plex-api.general.getIdentity()`: **Added** * `plex-api.general.getSourceConnectionInformation()`: **Added** * `plex-api.general.getTransientToken()`: **Added** * `plex-api.events.getNotifications()`: **Added** * `plex-api.events.connectWebSocket()`: **Added** * `plex-api.preferences.getAllPreferences()`: **Added** * `plex-api.preferences.setPreferences()`: **Added** * `plex-api.preferences.getPreference()`: **Added** * `plex-api.rate.setRating()`: **Added** * `plex-api.timeline.markPlayed()`: **Added** * `plex-api.timeline.report()`: **Added** * `plex-api.timeline.unscrobble()`: **Added** * `plex-api.activities.listActivities()`: **Added** * `plex-api.activities.cancelActivity()`: **Added** * `plex-api.butler.stopTasks()`: **Added** * `plex-api.butler.getTasks()`: **Added** * `plex-api.butler.startTasks()`: **Added** * `plex-api.downloadQueue.createDownloadQueue()`: **Added** * `plex-api.downloadQueue.getDownloadQueue()`: **Added** * `plex-api.downloadQueue.addDownloadQueueItems()`: **Added** * `plex-api.downloadQueue.listDownloadQueueItems()`: **Added** * `plex-api.downloadQueue.getItemDecision()`: **Added** * `plex-api.downloadQueue.getDownloadQueueMedia()`: **Added** * `plex-api.downloadQueue.removeDownloadQueueItems()`: **Added** * `plex-api.downloadQueue.getDownloadQueueItems()`: **Added** * `plex-api.downloadQueue.restartProcessingDownloadQueueItems()`: **Added** * `plex-api.hubs.getAllHubs()`: **Added** * `plex-api.hubs.getContinueWatching()`: **Added** * `plex-api.hubs.getHubItems()`: **Added** * `plex-api.hubs.getPromotedHubs()`: **Added** * `plex-api.hubs.getMetadataHubs()`: **Added** * `plex-api.hubs.getPostplayHubs()`: **Added** * `plex-api.hubs.getRelatedHubs()`: **Added** * `plex-api.hubs.getSectionHubs()`: **Added** * `plex-api.hubs.resetSectionDefaults()`: **Added** * `plex-api.hubs.listHubs()`: **Added** * `plex-api.hubs.createCustomHub()`: **Added** * `plex-api.hubs.moveHub()`: **Added** * `plex-api.hubs.deleteCustomHub()`: **Added** * `plex-api.hubs.updateHubVisibility()`: **Added** * `plex-api.search.searchHubs()`: **Added** * `plex-api.search.voiceSearchHubs()`: **Added** * `plex-api.library.getLibraryItems()`: **Added** * `plex-api.library.deleteCaches()`: **Added** * `plex-api.library.cleanBundles()`: **Added** * `plex-api.library.ingestTransientItem()`: **Added** * `plex-api.library.getLibraryMatches()`: **Added** * `plex-api.library.optimizeDatabase()`: **Added** * `plex-api.library.getRandomArtwork()`: **Added** * `plex-api.library.getSections()`: **Added** * `plex-api.library.addSection()`: **Added** * `plex-api.library.stopAllRefreshes()`: **Added** * `plex-api.library.getSectionsPrefs()`: **Added** * `plex-api.library.refreshSectionsMetadata()`: **Added** * `plex-api.library.getTags()`: **Added** * `plex-api.library.deleteMetadataItem()`: **Added** * `plex-api.library.editMetadataItem()`: **Added** * `plex-api.library.detectAds()`: **Added** * `plex-api.library.getAllItemLeaves()`: **Added** * `plex-api.library.analyzeMetadata()`: **Added** * `plex-api.library.generateThumbs()`: **Added** * `plex-api.library.detectCredits()`: **Added** * `plex-api.library.getExtras()`: **Added** * `plex-api.library.addExtras()`: **Added** * `plex-api.library.getFile()`: **Added** * `plex-api.library.startBifGeneration()`: **Added** * `plex-api.library.detectIntros()`: **Added** * `plex-api.library.createMarker()`: **Added** * `plex-api.library.matchItem()`: **Added** * `plex-api.library.listMatches()`: **Added** * `plex-api.library.mergeItems()`: **Added** * `plex-api.library.listSonicallySimilar()`: **Added** * `plex-api.library.setItemPreferences()`: **Added** * `plex-api.library.refreshItemsMetadata()`: **Added** * `plex-api.library.getRelatedItems()`: **Added** * `plex-api.library.listSimilar()`: **Added** * `plex-api.library.splitItem()`: **Added** * `plex-api.library.addSubtitles()`: **Added** * `plex-api.library.getItemTree()`: **Added** * `plex-api.library.unmatch()`: **Added** * `plex-api.library.listTopUsers()`: **Added** * `plex-api.library.detectVoiceActivity()`: **Added** * `plex-api.library.getAugmentationStatus()`: **Added** * `plex-api.library.setStreamSelection()`: **Added** * `plex-api.library.getPerson()`: **Added** * `plex-api.library.listPersonMedia()`: **Added** * `plex-api.library.deleteLibrarySection()`: **Added** * `plex-api.library.getLibraryDetails()`: **Added** * `plex-api.library.editSection()`: **Added** * `plex-api.library.updateItems()`: **Added** * `plex-api.library.startAnalysis()`: **Added** * `plex-api.library.autocomplete()`: **Added** * `plex-api.library.getCollections()`: **Added** * `plex-api.library.getCommon()`: **Added** * `plex-api.library.emptyTrash()`: **Added** * `plex-api.library.getSectionFilters()`: **Added** * `plex-api.library.getFirstCharacters()`: **Added** * `plex-api.library.deleteIndexes()`: **Added** * `plex-api.library.deleteIntros()`: **Added** * `plex-api.library.getSectionPreferences()`: **Added** * `plex-api.library.setSectionPreferences()`: **Added** * `plex-api.library.cancelRefresh()`: **Added** * `plex-api.library.refreshSection()`: **Added** * `plex-api.library.getAvailableSorts()`: **Added** * `plex-api.library.getStreamLevels()`: **Added** * `plex-api.library.getStreamLoudness()`: **Added** * `plex-api.library.getChapterImage()`: **Added** * `plex-api.library.setItemArtwork()`: **Added** * `plex-api.library.updateItemArtwork()`: **Added** * `plex-api.library.deleteMarker()`: **Added** * `plex-api.library.editMarker()`: **Added** * `plex-api.library.deleteMediaItem()`: **Added** * `plex-api.library.getPartIndex()`: **Added** * `plex-api.library.deleteCollection()`: **Added** * `plex-api.library.getSectionImage()`: **Added** * `plex-api.library.deleteStream()`: **Added** * `plex-api.library.getStream()`: **Added** * `plex-api.library.setStreamOffset()`: **Added** * `plex-api.library.getItemArtwork()`: **Added** * `plex-api.library.getMediaPart()`: **Added** * `plex-api.library.getImageFromBif()`: **Added** * `plex-api.collections.createCollection()`: **Added** * `plex-api.dvRs.listDvRs()`: **Added** * `plex-api.dvRs.createDvr()`: **Added** * `plex-api.dvRs.deleteDvr()`: **Added** * `plex-api.dvRs.getDvr()`: **Added** * `plex-api.dvRs.deleteLineup()`: **Added** * `plex-api.dvRs.addLineup()`: **Added** * `plex-api.dvRs.setDvrPreferences()`: **Added** * `plex-api.dvRs.stopDvrReload()`: **Added** * `plex-api.dvRs.reloadGuide()`: **Added** * `plex-api.dvRs.tuneChannel()`: **Added** * `plex-api.dvRs.removeDeviceFromDvr()`: **Added** * `plex-api.dvRs.addDeviceToDvr()`: **Added** * `plex-api.epg.computeChannelMap()`: **Added** * `plex-api.epg.getChannels()`: **Added** * `plex-api.epg.getCountries()`: **Added** * `plex-api.epg.getAllLanguages()`: **Added** * `plex-api.epg.getLineup()`: **Added** * `plex-api.epg.getLineupChannels()`: **Added** * `plex-api.epg.getCountriesLineups()`: **Added** * `plex-api.epg.getCountryRegions()`: **Added** * `plex-api.epg.listLineups()`: **Added** * `plex-api.liveTv.getSessions()`: **Added** * `plex-api.liveTv.getLiveTvSession()`: **Added** * `plex-api.liveTv.getSessionPlaylistIndex()`: **Added** * `plex-api.liveTv.getSessionSegment()`: **Added** * `plex-api.log.writeLog()`: **Added** * `plex-api.log.writeMessage()`: **Added** * `plex-api.log.enablePapertrail()`: **Added** * `plex-api.devices.getAvailableGrabbers()`: **Added** * `plex-api.devices.listDevices()`: **Added** * `plex-api.devices.addDevice()`: **Added** * `plex-api.devices.discoverDevices()`: **Added** * `plex-api.devices.removeDevice()`: **Added** * `plex-api.devices.getDeviceDetails()`: **Added** * `plex-api.devices.modifyDevice()`: **Added** * `plex-api.devices.setChannelmap()`: **Added** * `plex-api.devices.getDevicesChannels()`: **Added** * `plex-api.devices.setDevicePreferences()`: **Added** * `plex-api.devices.stopScan()`: **Added** * `plex-api.devices.scan()`: **Added** * `plex-api.devices.getThumb()`: **Added** * `plex-api.provider.listProviders()`: **Added** * `plex-api.provider.addProvider()`: **Added** * `plex-api.provider.refreshProviders()`: **Added** * `plex-api.provider.deleteMediaProvider()`: **Added** * `plex-api.subscriptions.getAllSubscriptions()`: **Added** * `plex-api.subscriptions.createSubscription()`: **Added** * `plex-api.subscriptions.processSubscriptions()`: **Added** * `plex-api.subscriptions.getScheduledRecordings()`: **Added** * `plex-api.subscriptions.getTemplate()`: **Added** * `plex-api.subscriptions.cancelGrab()`: **Added** * `plex-api.subscriptions.deleteSubscription()`: **Added** * `plex-api.subscriptions.getSubscription()`: **Added** * `plex-api.subscriptions.editSubscriptionPreferences()`: **Added** * `plex-api.subscriptions.reorderSubscription()`: **Added** * `plex-api.transcoder.transcodeImage()`: **Added** * `plex-api.transcoder.makeDecision()`: **Added** * `plex-api.transcoder.triggerFallback()`: **Added** * `plex-api.transcoder.transcodeSubtitles()`: **Added** * `plex-api.transcoder.startTranscodeSession()`: **Added** * `plex-api.playlist.listPlaylists()`: **Added** * `plex-api.playlist.getPlaylist()`: **Added** * `plex-api.playlist.getPlaylistItems()`: **Added** * `plex-api.libraryPlaylists.createPlaylist()`: **Added** * `plex-api.libraryPlaylists.uploadPlaylist()`: **Added** * `plex-api.libraryPlaylists.deletePlaylist()`: **Added** * `plex-api.libraryPlaylists.updatePlaylist()`: **Added** * `plex-api.libraryPlaylists.getPlaylistGenerators()`: **Added** * `plex-api.libraryPlaylists.clearPlaylistItems()`: **Added** * `plex-api.libraryPlaylists.addPlaylistItems()`: **Added** * `plex-api.libraryPlaylists.deletePlaylistItem()`: **Added** * `plex-api.libraryPlaylists.getPlaylistGenerator()`: **Added** * `plex-api.libraryPlaylists.modifyPlaylistGenerator()`: **Added** * `plex-api.libraryPlaylists.getPlaylistGeneratorItems()`: **Added** * `plex-api.libraryPlaylists.movePlaylistItem()`: **Added** * `plex-api.libraryPlaylists.refreshPlaylist()`: **Added** * `plex-api.playQueue.createPlayQueue()`: **Added** * `plex-api.playQueue.getPlayQueue()`: **Added** * `plex-api.playQueue.addToPlayQueue()`: **Added** * `plex-api.playQueue.clearPlayQueue()`: **Added** * `plex-api.playQueue.resetPlayQueue()`: **Added** * `plex-api.playQueue.shuffle()`: **Added** * `plex-api.playQueue.unshuffle()`: **Added** * `plex-api.playQueue.deletePlayQueueItem()`: **Added** * `plex-api.playQueue.movePlayQueueItem()`: **Added** * `plex-api.ultraBlur.getColors()`: **Added** * `plex-api.ultraBlur.getImage()`: **Added** * `plex-api.status.listSessions()`: **Added** * `plex-api.status.getBackgroundTasks()`: **Added** * `plex-api.status.listPlaybackHistory()`: **Added** * `plex-api.status.terminateSession()`: **Added** * `plex-api.status.deleteHistory()`: **Added** * `plex-api.status.getHistoryItem()`: **Added** * `plex-api.updater.checkUpdates()`: **Added** * `plex-api.updater.getUpdatesStatus()`: **Added** * `plex-api.content.getCollectionItems()`: **Added** * `plex-api.content.getMetadataItem()`: **Added** * `plex-api.content.getAlbums()`: **Added** * `plex-api.content.listContent()`: **Added** * `plex-api.content.getAllLeaves()`: **Added** * `plex-api.content.getArts()`: **Added** * `plex-api.content.getCategories()`: **Added** * `plex-api.content.getCluster()`: **Added** * `plex-api.content.getSonicPath()`: **Added** * `plex-api.content.getFolders()`: **Added** * `plex-api.content.listMoments()`: **Added** * `plex-api.content.getSonicallySimilar()`: **Added** * `plex-api.content.getCollectionImage()`: **Added** * `plex-api.libraryCollections.addCollectionItems()`: **Added** * `plex-api.libraryCollections.deleteCollectionItem()`: **Added** * `plex-api.libraryCollections.moveCollectionItem()`: **Added** * `plex-api.server.getServerCapabilities()`: **Deleted** **Breaking** ⚠️ * `plex-api.server.getServerPreferences()`: **Deleted** **Breaking** ⚠️ * `plex-api.server.getAvailableClients()`: **Deleted** **Breaking** ⚠️ * `plex-api.server.getDevices()`: **Deleted** **Breaking** ⚠️ * `plex-api.server.getServerIdentity()`: **Deleted** **Breaking** ⚠️ * `plex-api.server.getMyPlexAccount()`: **Deleted** **Breaking** ⚠️ * `plex-api.server.getResizedPhoto()`: **Deleted** **Breaking** ⚠️ * `plex-api.server.getMediaProviders()`: **Deleted** **Breaking** ⚠️ * `plex-api.server.getServerList()`: **Deleted** **Breaking** ⚠️ * `plex-api.media.markPlayed()`: **Deleted** **Breaking** ⚠️ * `plex-api.media.markUnplayed()`: **Deleted** **Breaking** ⚠️ * `plex-api.media.updatePlayProgress()`: **Deleted** **Breaking** ⚠️ * `plex-api.media.getBannerImage()`: **Deleted** **Breaking** ⚠️ * `plex-api.media.getThumbImage()`: **Deleted** **Breaking** ⚠️ * `plex-api.video.getTimeline()`: **Deleted** **Breaking** ⚠️ * `plex-api.video.startUniversalTranscode()`: **Deleted** **Breaking** ⚠️ * `plex-api.activities.getServerActivities()`: **Deleted** **Breaking** ⚠️ * `plex-api.activities.cancelServerActivities()`: **Deleted** **Breaking** ⚠️ * `plex-api.butler.getButlerTasks()`: **Deleted** **Breaking** ⚠️ * `plex-api.butler.startAllTasks()`: **Deleted** **Breaking** ⚠️ * `plex-api.butler.stopAllTasks()`: **Deleted** **Breaking** ⚠️ * `plex-api.plex.getCompanionsData()`: **Deleted** **Breaking** ⚠️ * `plex-api.plex.getUserFriends()`: **Deleted** **Breaking** ⚠️ * `plex-api.plex.getGeoData()`: **Deleted** **Breaking** ⚠️ * `plex-api.plex.getHomeData()`: **Deleted** **Breaking** ⚠️ * `plex-api.plex.getServerResources()`: **Deleted** **Breaking** ⚠️ * `plex-api.plex.getPin()`: **Deleted** **Breaking** ⚠️ * `plex-api.plex.getTokenByPinId()`: **Deleted** **Breaking** ⚠️ * `plex-api.hubs.getGlobalHubs()`: **Deleted** **Breaking** ⚠️ * `plex-api.hubs.getRecentlyAdded()`: **Deleted** **Breaking** ⚠️ * `plex-api.hubs.getLibraryHubs()`: **Deleted** **Breaking** ⚠️ * `plex-api.search.performSearch()`: **Deleted** **Breaking** ⚠️ * `plex-api.search.performVoiceSearch()`: **Deleted** **Breaking** ⚠️ * `plex-api.search.getSearchResults()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getFileHash()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getRecentlyAddedLibrary()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getAllLibraries()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getLibraryDetails()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.deleteLibrary()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getLibraryItems()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getLibrarySectionsAll()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getRefreshLibraryMetadata()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getSearchLibrary()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getGenresLibrary()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getCountriesLibrary()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getActorsLibrary()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getSearchAllLibraries()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getMediaMetaData()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getMediaArts()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.postMediaArts()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getMediaPosters()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.postMediaPoster()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getMetadataChildren()`: **Deleted** **Breaking** ⚠️ * `plex-api.library.getTopWatchedContent()`: **Deleted** **Breaking** ⚠️ * `plex-api.watchlist.getWatchList()`: **Deleted** **Breaking** ⚠️ * `plex-api.log.logLine()`: **Deleted** **Breaking** ⚠️ * `plex-api.log.logMultiLine()`: **Deleted** **Breaking** ⚠️ * `plex-api.log.enablePaperTrail()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.createPlaylist()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.getPlaylists()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.getPlaylist()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.deletePlaylist()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.updatePlaylist()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.getPlaylistContents()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.clearPlaylistContents()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.addPlaylistContents()`: **Deleted** **Breaking** ⚠️ * `plex-api.playlists.uploadPlaylist()`: **Deleted** **Breaking** ⚠️ * `plex-api.authentication.getTransientToken()`: **Deleted** **Breaking** ⚠️ * `plex-api.authentication.getSourceConnectionInformation()`: **Deleted** **Breaking** ⚠️ * `plex-api.authentication.getTokenDetails()`: **Deleted** **Breaking** ⚠️ * `plex-api.authentication.postUsersSignInData()`: **Deleted** **Breaking** ⚠️ * `plex-api.statistics.getStatistics()`: **Deleted** **Breaking** ⚠️ * `plex-api.statistics.getResourcesStatistics()`: **Deleted** **Breaking** ⚠️ * `plex-api.statistics.getBandwidthStatistics()`: **Deleted** **Breaking** ⚠️ * `plex-api.sessions.getSessions()`: **Deleted** **Breaking** ⚠️ * `plex-api.sessions.getSessionHistory()`: **Deleted** **Breaking** ⚠️ * `plex-api.sessions.getTranscodeSessions()`: **Deleted** **Breaking** ⚠️ * `plex-api.sessions.stopTranscodeSession()`: **Deleted** **Breaking** ⚠️ * `plex-api.updater.getUpdateStatus()`: **Deleted** **Breaking** ⚠️ * `plex-api.updater.checkForUpdates()`: **Deleted** **Breaking** ⚠️ * `plex-api.users.getUsers()`: **Deleted** **Breaking** ⚠️
89 KiB
Hubs
(hubs)
Overview
The hubs within a media provider
Available Operations
- getAllHubs - Get global hubs
- getContinueWatching - Get the continue watching hub
- getHubItems - Get a hub's items
- getPromotedHubs - Get the hubs which are promoted
- getMetadataHubs - Get hubs for section by metadata item
- getPostplayHubs - Get postplay hubs
- getRelatedHubs - Get related hubs
- getSectionHubs - Get section hubs
- resetSectionDefaults - Reset hubs to defaults
- listHubs - Get hubs
- createCustomHub - Create a custom hub
- moveHub - Move Hub
- deleteCustomHub - Delete a custom hub
- updateHubVisibility - Change hub visibility
getAllHubs
Get the global hubs in this PMS
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.getAllHubs({
onlyTransient: BoolInt.One,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsGetAllHubs } from "@lukehagar/plexjs/funcs/hubsGetAllHubs.js";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsGetAllHubs(plexAPI, {
onlyTransient: BoolInt.One,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsGetAllHubs failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.GetAllHubsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.GetAllHubsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
getContinueWatching
Get the global continue watching hub
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.getContinueWatching({});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsGetContinueWatching } from "@lukehagar/plexjs/funcs/hubsGetContinueWatching.js";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsGetContinueWatching(plexAPI, {});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsGetContinueWatching failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.GetContinueWatchingRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.GetContinueWatchingResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
getHubItems
Get the items within a single hub specified by identifier
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.getHubItems({
identifier: [
"<value 1>",
"<value 2>",
"<value 3>",
],
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsGetHubItems } from "@lukehagar/plexjs/funcs/hubsGetHubItems.js";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsGetHubItems(plexAPI, {
identifier: [
"<value 1>",
"<value 2>",
"<value 3>",
],
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsGetHubItems failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.GetHubItemsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.GetHubItemsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
getPromotedHubs
Get the global hubs which are promoted (should be displayed on the home screen)
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.getPromotedHubs({});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsGetPromotedHubs } from "@lukehagar/plexjs/funcs/hubsGetPromotedHubs.js";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsGetPromotedHubs(plexAPI, {});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsGetPromotedHubs failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.GetPromotedHubsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.GetPromotedHubsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
getMetadataHubs
Get the hubs for a section by metadata item. Currently only for music sections
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.getMetadataHubs({
metadataId: 605482,
onlyTransient: BoolInt.One,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsGetMetadataHubs } from "@lukehagar/plexjs/funcs/hubsGetMetadataHubs.js";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsGetMetadataHubs(plexAPI, {
metadataId: 605482,
onlyTransient: BoolInt.One,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsGetMetadataHubs failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.GetMetadataHubsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.GetMetadataHubsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
getPostplayHubs
Get the hubs for a metadata to be displayed in post play
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.getPostplayHubs({
metadataId: 441419,
onlyTransient: BoolInt.One,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsGetPostplayHubs } from "@lukehagar/plexjs/funcs/hubsGetPostplayHubs.js";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsGetPostplayHubs(plexAPI, {
metadataId: 441419,
onlyTransient: BoolInt.One,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsGetPostplayHubs failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.GetPostplayHubsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.GetPostplayHubsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
getRelatedHubs
Get the hubs for a metadata related to the provided metadata item
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.getRelatedHubs({
metadataId: 8858,
onlyTransient: BoolInt.One,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsGetRelatedHubs } from "@lukehagar/plexjs/funcs/hubsGetRelatedHubs.js";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsGetRelatedHubs(plexAPI, {
metadataId: 8858,
onlyTransient: BoolInt.One,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsGetRelatedHubs failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.GetRelatedHubsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.GetRelatedHubsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
getSectionHubs
Get the hubs for a single section
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.getSectionHubs({
sectionId: 336924,
onlyTransient: BoolInt.One,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsGetSectionHubs } from "@lukehagar/plexjs/funcs/hubsGetSectionHubs.js";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsGetSectionHubs(plexAPI, {
sectionId: 336924,
onlyTransient: BoolInt.One,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsGetSectionHubs failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.GetSectionHubsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.GetSectionHubsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
resetSectionDefaults
Reset hubs for this section to defaults and delete custom hubs
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.resetSectionDefaults({
sectionId: 383022,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsResetSectionDefaults } from "@lukehagar/plexjs/funcs/hubsResetSectionDefaults.js";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsResetSectionDefaults(plexAPI, {
sectionId: 383022,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsResetSectionDefaults failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.ResetSectionDefaultsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.ResetSectionDefaultsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
listHubs
Get the list of hubs including both built-in and custom
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.listHubs({
sectionId: 442546,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsListHubs } from "@lukehagar/plexjs/funcs/hubsListHubs.js";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsListHubs(plexAPI, {
sectionId: 442546,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsListHubs failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.ListHubsRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.ListHubsResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
createCustomHub
Create a custom hub based on a metadata item
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.createCustomHub({
sectionId: 869922,
metadataItemId: 703843,
promotedToRecommended: BoolInt.One,
promotedToOwnHome: BoolInt.One,
promotedToSharedHome: BoolInt.One,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsCreateCustomHub } from "@lukehagar/plexjs/funcs/hubsCreateCustomHub.js";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsCreateCustomHub(plexAPI, {
sectionId: 869922,
metadataItemId: 703843,
promotedToRecommended: BoolInt.One,
promotedToOwnHome: BoolInt.One,
promotedToSharedHome: BoolInt.One,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsCreateCustomHub failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.CreateCustomHubRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.CreateCustomHubResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
moveHub
Changed the ordering of a hub among others hubs
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.moveHub({
sectionId: 755710,
identifier: "<value>",
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsMoveHub } from "@lukehagar/plexjs/funcs/hubsMoveHub.js";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsMoveHub(plexAPI, {
sectionId: 755710,
identifier: "<value>",
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsMoveHub failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.MoveHubRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.MoveHubResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
deleteCustomHub
Delete a custom hub from the server
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.deleteCustomHub({
sectionId: 625677,
identifier: "<value>",
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsDeleteCustomHub } from "@lukehagar/plexjs/funcs/hubsDeleteCustomHub.js";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsDeleteCustomHub(plexAPI, {
sectionId: 625677,
identifier: "<value>",
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsDeleteCustomHub failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.DeleteCustomHubRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.DeleteCustomHubResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |
updateHubVisibility
Changed the visibility of a hub for both the admin and shared users
Example Usage
import { PlexAPI } from "@lukehagar/plexjs";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
const plexAPI = new PlexAPI({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const result = await plexAPI.hubs.updateHubVisibility({
sectionId: 341650,
identifier: "<value>",
promotedToRecommended: BoolInt.One,
promotedToOwnHome: BoolInt.One,
promotedToSharedHome: BoolInt.One,
});
console.log(result);
}
run();
Standalone function
The standalone function version of this method:
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { hubsUpdateHubVisibility } from "@lukehagar/plexjs/funcs/hubsUpdateHubVisibility.js";
import { BoolInt } from "@lukehagar/plexjs/sdk/models/shared";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const plexAPI = new PlexAPICore({
xPlexClientIdentifier: "abc123",
xPlexProduct: "Plex for Roku",
xPlexVersion: "2.4.1",
xPlexPlatform: "Roku",
xPlexPlatformVersion: "4.3 build 1057",
xPlexDevice: "Roku 3",
xPlexModel: "4200X",
xPlexDeviceVendor: "Roku",
xPlexDeviceName: "Living Room TV",
xPlexMarketplace: "googlePlay",
});
async function run() {
const res = await hubsUpdateHubVisibility(plexAPI, {
sectionId: 341650,
identifier: "<value>",
promotedToRecommended: BoolInt.One,
promotedToOwnHome: BoolInt.One,
promotedToSharedHome: BoolInt.One,
});
if (res.ok) {
const { value: result } = res;
console.log(result);
} else {
console.log("hubsUpdateHubVisibility failed:", res.error);
}
}
run();
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
request |
operations.UpdateHubVisibilityRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body, are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Response
Promise<operations.UpdateHubVisibilityResponse>
Errors
| Error Type | Status Code | Content Type |
|---|---|---|
| errors.SDKError | 4XX, 5XX | */* |