Mixins plexapi.mixins
- class plexapi.mixins.AdvancedSettingsMixin[source]
Bases:
object
Mixin for Plex objects that can have advanced settings.
- preferences()[source]
Returns a list of
Preferences
objects.
- preference(pref)[source]
Returns a
Preferences
object for the specified pref.- Parameters:
pref (str) – The id of the preference to return.
- class plexapi.mixins.SmartFilterMixin[source]
Bases:
object
Mixin for Plex objects that can have smart filters.
- class plexapi.mixins.SplitMergeMixin[source]
Bases:
object
Mixin for Plex objects that can be split and merged.
- class plexapi.mixins.UnmatchMatchMixin[source]
Bases:
object
Mixin 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:
object
Mixin for Plex objects that can have extras.
- class plexapi.mixins.HubsMixin[source]
Bases:
object
Mixin for Plex objects that can have related hubs.
- class plexapi.mixins.PlayedUnplayedMixin[source]
Bases:
object
Mixin for Plex objects that can be marked played and unplayed.
- property isPlayed
Returns True if this video is played.
- property isWatched
Alias to self.isPlayed.
- markWatched()[source]
Alias to
markPlayed()
.
- markUnwatched()[source]
Alias to
markUnplayed()
.
- class plexapi.mixins.RatingMixin[source]
Bases:
object
Mixin 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:
object
Mixin for Plex objects that can have a background artwork url.
- property artUrl
Return the art url for the Plex object.
- class plexapi.mixins.ArtLockMixin[source]
Bases:
object
Mixin for Plex objects that can have a locked background artwork.
- class plexapi.mixins.ArtMixin[source]
Bases:
ArtUrlMixin
,ArtLockMixin
Mixin for Plex objects that can have background artwork.
- class plexapi.mixins.LogoUrlMixin[source]
Bases:
object
Mixin for Plex objects that can have a logo url.
- property logoUrl
Return the logo url for the Plex object.
- class plexapi.mixins.LogoLockMixin[source]
Bases:
object
Mixin for Plex objects that can have a locked logo.
- class plexapi.mixins.LogoMixin[source]
Bases:
LogoUrlMixin
,LogoLockMixin
Mixin for Plex objects that can have logos.
- class plexapi.mixins.PosterUrlMixin[source]
Bases:
object
Mixin for Plex objects that can have a poster url.
- property thumbUrl
Return the thumb url for the Plex object.
- property posterUrl
Alias to self.thumbUrl.
- class plexapi.mixins.PosterLockMixin[source]
Bases:
object
Mixin for Plex objects that can have a locked poster.
- class plexapi.mixins.PosterMixin[source]
Bases:
PosterUrlMixin
,PosterLockMixin
Mixin for Plex objects that can have posters.
- class plexapi.mixins.ThemeUrlMixin[source]
Bases:
object
Mixin for Plex objects that can have a theme url.
- property themeUrl
Return the theme url for the Plex object.
- class plexapi.mixins.ThemeLockMixin[source]
Bases:
object
Mixin for Plex objects that can have a locked theme.
- class plexapi.mixins.ThemeMixin[source]
Bases:
ThemeUrlMixin
,ThemeLockMixin
Mixin 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:
object
Mixin 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:
EditFieldMixin
Mixin for Plex objects that can have an added at date.
- class plexapi.mixins.AudienceRatingMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have an audience rating.
- class plexapi.mixins.ContentRatingMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a content rating.
- class plexapi.mixins.CriticRatingMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a critic rating.
- class plexapi.mixins.EditionTitleMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have an edition title.
- class plexapi.mixins.OriginallyAvailableMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have an originally available date.
- class plexapi.mixins.OriginalTitleMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have an original title.
- class plexapi.mixins.SortTitleMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a sort title.
- class plexapi.mixins.StudioMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a studio.
- class plexapi.mixins.SummaryMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a summary.
- class plexapi.mixins.TaglineMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a tagline.
- class plexapi.mixins.TitleMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a title.
- class plexapi.mixins.TrackArtistMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a track artist.
- class plexapi.mixins.TrackNumberMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a track number.
- class plexapi.mixins.TrackDiscNumberMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a track disc number.
- class plexapi.mixins.PhotoCapturedTimeMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a captured time.
- class plexapi.mixins.UserRatingMixin[source]
Bases:
EditFieldMixin
Mixin for Plex objects that can have a user rating.
- class plexapi.mixins.EditTagsMixin[source]
Bases:
object
Mixin 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:
EditTagsMixin
Mixin for Plex objects that can have collections.
- class plexapi.mixins.CountryMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have countries.
- class plexapi.mixins.DirectorMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have directors.
- class plexapi.mixins.GenreMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have genres.
- class plexapi.mixins.LabelMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have labels.
- class plexapi.mixins.MoodMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have moods.
- class plexapi.mixins.ProducerMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have producers.
- class plexapi.mixins.SimilarArtistMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have similar artists.
- class plexapi.mixins.StyleMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have styles.
- class plexapi.mixins.TagMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have tags.
- class plexapi.mixins.WriterMixin[source]
Bases:
EditTagsMixin
Mixin for Plex objects that can have writers.
- class plexapi.mixins.WatchlistMixin[source]
Bases:
object
Mixin 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
Availability
objects 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:
ArtLockMixin
,PosterLockMixin
,ThemeLockMixin
,AddedAtMixin
,AudienceRatingMixin
,ContentRatingMixin
,CriticRatingMixin
,EditionTitleMixin
,OriginallyAvailableMixin
,OriginalTitleMixin
,SortTitleMixin
,StudioMixin
,SummaryMixin
,TaglineMixin
,TitleMixin
,UserRatingMixin
,CollectionMixin
,CountryMixin
,DirectorMixin
,GenreMixin
,LabelMixin
,ProducerMixin
,WriterMixin
- class plexapi.mixins.ShowEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,ThemeLockMixin
,AddedAtMixin
,AudienceRatingMixin
,ContentRatingMixin
,CriticRatingMixin
,OriginallyAvailableMixin
,OriginalTitleMixin
,SortTitleMixin
,StudioMixin
,SummaryMixin
,TaglineMixin
,TitleMixin
,UserRatingMixin
,CollectionMixin
,GenreMixin
,LabelMixin
- class plexapi.mixins.SeasonEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,ThemeLockMixin
,AddedAtMixin
,AudienceRatingMixin
,CriticRatingMixin
,SummaryMixin
,TitleMixin
,UserRatingMixin
,CollectionMixin
,LabelMixin
- class plexapi.mixins.EpisodeEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,ThemeLockMixin
,AddedAtMixin
,AudienceRatingMixin
,ContentRatingMixin
,CriticRatingMixin
,OriginallyAvailableMixin
,SortTitleMixin
,SummaryMixin
,TitleMixin
,UserRatingMixin
,CollectionMixin
,DirectorMixin
,LabelMixin
,WriterMixin
- class plexapi.mixins.ArtistEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,ThemeLockMixin
,AddedAtMixin
,AudienceRatingMixin
,CriticRatingMixin
,SortTitleMixin
,SummaryMixin
,TitleMixin
,UserRatingMixin
,CollectionMixin
,CountryMixin
,GenreMixin
,LabelMixin
,MoodMixin
,SimilarArtistMixin
,StyleMixin
- class plexapi.mixins.AlbumEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,ThemeLockMixin
,AddedAtMixin
,AudienceRatingMixin
,CriticRatingMixin
,OriginallyAvailableMixin
,SortTitleMixin
,StudioMixin
,SummaryMixin
,TitleMixin
,UserRatingMixin
,CollectionMixin
,GenreMixin
,LabelMixin
,MoodMixin
,StyleMixin
- class plexapi.mixins.TrackEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,ThemeLockMixin
,AddedAtMixin
,AudienceRatingMixin
,CriticRatingMixin
,TitleMixin
,TrackArtistMixin
,TrackNumberMixin
,TrackDiscNumberMixin
,UserRatingMixin
,CollectionMixin
,GenreMixin
,LabelMixin
,MoodMixin
- class plexapi.mixins.PhotoalbumEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,AddedAtMixin
,SortTitleMixin
,SummaryMixin
,TitleMixin
,UserRatingMixin
- class plexapi.mixins.PhotoEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,AddedAtMixin
,PhotoCapturedTimeMixin
,SortTitleMixin
,SummaryMixin
,TitleMixin
,UserRatingMixin
,TagMixin
- class plexapi.mixins.CollectionEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,ThemeLockMixin
,AddedAtMixin
,AudienceRatingMixin
,ContentRatingMixin
,CriticRatingMixin
,SortTitleMixin
,SummaryMixin
,TitleMixin
,UserRatingMixin
,LabelMixin
- class plexapi.mixins.PlaylistEditMixins[source]
Bases:
ArtLockMixin
,PosterLockMixin
,SortTitleMixin
,SummaryMixin
,TitleMixin