Mixins plexapi.mixins¶
-
class
plexapi.mixins.AdvancedSettingsMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have advanced settings.
-
preferences()[source]¶ Returns a list of
Preferencesobjects.
-
preference(pref)[source]¶ Returns a
Preferencesobject for the specified pref.Parameters: pref (str) – The id of the preference to return.
-
-
class
plexapi.mixins.SmartFilterMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have smart filters.
-
class
plexapi.mixins.SplitMergeMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can be split and merged.
-
class
plexapi.mixins.UnmatchMatchMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can be unmatched and matched.
-
matches(agent=None, title=None, year=None, language=None)[source]¶ Return list of (
SearchResult) metadata matches.- Parameters:
- agent (str): Agent name to be used (imdb, thetvdb, themoviedb, etc.) title (str): Title of item to search for year (str): Year of item to search in language (str) : Language of item to search in
Examples
- video.matches()
- video.matches(title=”something”, year=2020)
- video.matches(title=”something”)
- video.matches(year=2020)
- video.matches(title=”something”, year=””)
- video.matches(title=””, year=2020)
- video.matches(title=””, year=””)
- The default behaviour in Plex Web = no params in plexapi
- Both title and year specified by user
- Year automatically filled in
- Title automatically filled in
- Explicitly searches for title with blank year
- Explicitly searches for blank title with year
- I don’t know what the user is thinking… return the same result as 1
For 2 to 7, the agent and language is automatically filled in
-
fixMatch(searchResult=None, auto=False, agent=None)[source]¶ Use match result to update show metadata.
Parameters: - auto (bool) – True uses first match from matches False allows user to provide the match
- searchResult (
SearchResult) – Search result from ~plexapi.base.matches() - agent (str) – Agent name to be used (imdb, thetvdb, themoviedb, etc.)
-
-
class
plexapi.mixins.ExtrasMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have extras.
-
class
plexapi.mixins.HubsMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have related hubs.
-
class
plexapi.mixins.PlayedUnplayedMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can be marked played and unplayed.
-
isPlayed¶ Returns True if this video is played.
-
isWatched¶ Alias to self.isPlayed.
-
markWatched()[source]¶ Alias to
markPlayed().
-
markUnwatched()[source]¶ Alias to
markUnplayed().
-
-
class
plexapi.mixins.RatingMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have user star ratings.
-
rate(rating=None)[source]¶ Rate the Plex object. Note: Plex ratings are displayed out of 5 stars (e.g. rating 7.0 = 3.5 stars).
Parameters: rating (float, optional) – Rating from 0 to 10. Exclude to reset the rating. Raises: BadRequest– If the rating is invalid.
-
-
class
plexapi.mixins.ArtUrlMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have a background artwork url.
-
artUrl¶ Return the art url for the Plex object.
-
-
class
plexapi.mixins.ArtLockMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have a locked background artwork.
-
class
plexapi.mixins.ArtMixin[source]¶ Bases:
plexapi.mixins.ArtUrlMixin,plexapi.mixins.ArtLockMixinMixin for Plex objects that can have background artwork.
-
class
plexapi.mixins.PosterUrlMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have a poster url.
-
thumbUrl¶ Return the thumb url for the Plex object.
-
posterUrl¶ Alias to self.thumbUrl.
-
-
class
plexapi.mixins.PosterLockMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have a locked poster.
-
class
plexapi.mixins.PosterMixin[source]¶ Bases:
plexapi.mixins.PosterUrlMixin,plexapi.mixins.PosterLockMixinMixin for Plex objects that can have posters.
-
class
plexapi.mixins.ThemeUrlMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have a theme url.
-
themeUrl¶ Return the theme url for the Plex object.
-
-
class
plexapi.mixins.ThemeLockMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can have a locked theme.
-
class
plexapi.mixins.ThemeMixin[source]¶ Bases:
plexapi.mixins.ThemeUrlMixin,plexapi.mixins.ThemeLockMixinMixin for Plex objects that can have themes.
-
uploadTheme(url=None, filepath=None, timeout=None)[source]¶ Upload a theme from url or filepath.
Warning: Themes cannot be deleted using PlexAPI!
Parameters: - url (str) – The full URL to the theme to upload.
- filepath (str) – The full file path to the theme to upload or file-like object.
- timeout (int, optional) – Timeout, in seconds, to use when uploading themes to the server. (default config.TIMEOUT).
-
-
class
plexapi.mixins.EditFieldMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for editing Plex object fields.
-
editField(field, value, locked=True, **kwargs)[source]¶ Edit the field of a Plex object. All field editing methods can be chained together. Also see
batchEdits()for batch editing fields.Parameters: - field (str) – The name of the field to edit.
- value (str) – The value to edit the field to.
- locked (bool) – True (default) to lock the field, False to unlock the field.
Example
# Chaining multiple field edits with reloading Movie.editTitle('A New Title').editSummary('A new summary').editTagline('A new tagline').reload()
-
-
class
plexapi.mixins.AddedAtMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have an added at date.
-
class
plexapi.mixins.ContentRatingMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a content rating.
-
class
plexapi.mixins.EditionTitleMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have an edition title.
-
class
plexapi.mixins.OriginallyAvailableMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have an originally available date.
-
class
plexapi.mixins.OriginalTitleMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have an original title.
-
class
plexapi.mixins.SortTitleMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a sort title.
-
class
plexapi.mixins.StudioMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a studio.
-
class
plexapi.mixins.SummaryMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a summary.
-
class
plexapi.mixins.TaglineMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a tagline.
-
class
plexapi.mixins.TitleMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a title.
-
class
plexapi.mixins.TrackArtistMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a track artist.
-
class
plexapi.mixins.TrackNumberMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a track number.
-
class
plexapi.mixins.TrackDiscNumberMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a track disc number.
-
class
plexapi.mixins.PhotoCapturedTimeMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a captured time.
-
class
plexapi.mixins.UserRatingMixin[source]¶ Bases:
plexapi.mixins.EditFieldMixinMixin for Plex objects that can have a user rating.
-
class
plexapi.mixins.EditTagsMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for editing Plex object tags.
-
editTags(tag, items, locked=True, remove=False, **kwargs)[source]¶ Edit the tags of a Plex object. All tag editing methods can be chained together. Also see
batchEdits()for batch editing tags.Parameters: - tag (str) – Name of the tag to edit.
- items (List<str> or List<
MediaTag>) – List of tags to add or remove. - locked (bool) – True (default) to lock the tags, False to unlock the tags.
- remove (bool) – True to remove the tags in items.
Example
# Chaining multiple tag edits with reloading Show.addCollection('New Collection').removeGenre('Action').addLabel('Favorite').reload()
-
-
class
plexapi.mixins.CollectionMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have collections.
-
class
plexapi.mixins.CountryMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have countries.
-
class
plexapi.mixins.DirectorMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have directors.
-
class
plexapi.mixins.GenreMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have genres.
-
class
plexapi.mixins.LabelMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have labels.
-
class
plexapi.mixins.MoodMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have moods.
-
class
plexapi.mixins.ProducerMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have producers.
-
class
plexapi.mixins.SimilarArtistMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have similar artists.
-
class
plexapi.mixins.StyleMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have styles.
-
class
plexapi.mixins.TagMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have tags.
-
class
plexapi.mixins.WriterMixin[source]¶ Bases:
plexapi.mixins.EditTagsMixinMixin for Plex objects that can have writers.
-
class
plexapi.mixins.WatchlistMixin[source]¶ Bases:
future.types.newobject.newobjectMixin for Plex objects that can be added to a user’s watchlist.
-
onWatchlist(account=None)[source]¶ Returns True if the item is on the user’s watchlist. Also see
onWatchlist().Parameters: account ( MyPlexAccount, optional) – Account to check item on the watchlist. Note: This is required if you are not connected to a Plex server instance using the admin account.
-
addToWatchlist(account=None)[source]¶ Add this item to the specified user’s watchlist. Also see
addToWatchlist().Parameters: account ( MyPlexAccount, optional) – Account to add item to the watchlist. Note: This is required if you are not connected to a Plex server instance using the admin account.
-
removeFromWatchlist(account=None)[source]¶ Remove this item from the specified user’s watchlist. Also see
removeFromWatchlist().Parameters: account ( MyPlexAccount, optional) – Account to remove item from the watchlist. Note: This is required if you are not connected to a Plex server instance using the admin account.
-
streamingServices(account=None)[source]¶ Return a list of
Availabilityobjects for the available streaming services for this item.Parameters: account ( MyPlexAccount, optional) – Account used to retrieve availability. Note: This is required if you are not connected to a Plex server instance using the admin account.
-
-
class
plexapi.mixins.MovieEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.ThemeLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.ContentRatingMixin,plexapi.mixins.EditionTitleMixin,plexapi.mixins.OriginallyAvailableMixin,plexapi.mixins.OriginalTitleMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.StudioMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TaglineMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.CollectionMixin,plexapi.mixins.CountryMixin,plexapi.mixins.DirectorMixin,plexapi.mixins.GenreMixin,plexapi.mixins.LabelMixin,plexapi.mixins.ProducerMixin,plexapi.mixins.WriterMixin
-
class
plexapi.mixins.ShowEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.ThemeLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.ContentRatingMixin,plexapi.mixins.OriginallyAvailableMixin,plexapi.mixins.OriginalTitleMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.StudioMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TaglineMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.CollectionMixin,plexapi.mixins.GenreMixin,plexapi.mixins.LabelMixin
-
class
plexapi.mixins.SeasonEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.ThemeLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.CollectionMixin,plexapi.mixins.LabelMixin
-
class
plexapi.mixins.EpisodeEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.ThemeLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.ContentRatingMixin,plexapi.mixins.OriginallyAvailableMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.CollectionMixin,plexapi.mixins.DirectorMixin,plexapi.mixins.LabelMixin,plexapi.mixins.WriterMixin
-
class
plexapi.mixins.ArtistEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.ThemeLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.CollectionMixin,plexapi.mixins.CountryMixin,plexapi.mixins.GenreMixin,plexapi.mixins.LabelMixin,plexapi.mixins.MoodMixin,plexapi.mixins.SimilarArtistMixin,plexapi.mixins.StyleMixin
-
class
plexapi.mixins.AlbumEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.ThemeLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.OriginallyAvailableMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.StudioMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.CollectionMixin,plexapi.mixins.GenreMixin,plexapi.mixins.LabelMixin,plexapi.mixins.MoodMixin,plexapi.mixins.StyleMixin
-
class
plexapi.mixins.TrackEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.ThemeLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.TitleMixin,plexapi.mixins.TrackArtistMixin,plexapi.mixins.TrackNumberMixin,plexapi.mixins.TrackDiscNumberMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.CollectionMixin,plexapi.mixins.GenreMixin,plexapi.mixins.LabelMixin,plexapi.mixins.MoodMixin
-
class
plexapi.mixins.PhotoalbumEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin
-
class
plexapi.mixins.PhotoEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.PhotoCapturedTimeMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.TagMixin
-
class
plexapi.mixins.CollectionEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.ThemeLockMixin,plexapi.mixins.AddedAtMixin,plexapi.mixins.ContentRatingMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TitleMixin,plexapi.mixins.UserRatingMixin,plexapi.mixins.LabelMixin
-
class
plexapi.mixins.PlaylistEditMixins[source]¶ Bases:
plexapi.mixins.ArtLockMixin,plexapi.mixins.PosterLockMixin,plexapi.mixins.SortTitleMixin,plexapi.mixins.SummaryMixin,plexapi.mixins.TitleMixin