plex-api-client 0.15.1__tar.gz → 0.17.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/PKG-INFO +20 -7
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/README-PYPI.md +19 -6
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/pyproject.toml +1 -4
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/__init__.py +4 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_server_resources.py +39 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/gettokendetails.py +87 -4
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/post_users_sign_in_data.py +99 -5
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/plex.py +12 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/sdkconfiguration.py +3 -3
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/LICENSE.md +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/py.typed +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/__init__.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/_hooks/__init__.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/_hooks/registration.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/_hooks/sdkhooks.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/_hooks/types.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/activities.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/authentication.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/basesdk.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/butler.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/httpclient.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/hubs.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/library.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/log.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/media.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/components/__init__.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/components/security.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/__init__.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/addplaylistcontents.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/applyupdates.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/cancelserveractivities.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/checkforupdates.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/clearplaylistcontents.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/createplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/deletelibrary.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/deleteplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/enablepapertrail.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_all_libraries.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_banner_image.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_library_details.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_library_items.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_media_providers.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_meta_data_by_rating_key.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_recently_added_library.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_refresh_library_metadata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_search_library.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_server_identity.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_server_resources.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_thumb_image.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/get_watch_list.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getavailableclients.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getbandwidthstatistics.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getbutlertasks.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getcompanionsdata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getdevices.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getfilehash.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getgeodata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getglobalhubs.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/gethomedata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getlibraryhubs.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getmetadatachildren.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getmyplexaccount.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getondeck.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getpin.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getplaylistcontents.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getplaylists.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getresizedphoto.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getresourcesstatistics.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getsearchresults.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getserveractivities.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getservercapabilities.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getserverlist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getserverpreferences.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getsessionhistory.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getsessions.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getsourceconnectioninformation.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getstatistics.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/gettimeline.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/gettokenbypinid.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/gettokendetails.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/gettopwatchedcontent.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/gettranscodesessions.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/gettransienttoken.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getupdatestatus.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/getuserfriends.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/logline.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/logmultiline.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/markplayed.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/markunplayed.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/performsearch.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/performvoicesearch.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/post_users_sign_in_data.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/sdkerror.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/startalltasks.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/starttask.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/startuniversaltranscode.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/stopalltasks.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/stoptask.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/stoptranscodesession.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/updateplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/updateplayprogress.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/errors/uploadplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/internal/__init__.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/internal/globals.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/addplaylistcontents.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/applyupdates.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/cancelserveractivities.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/checkforupdates.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/clearplaylistcontents.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/createplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/deletelibrary.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/deleteplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/enablepapertrail.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_all_libraries.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_banner_image.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_library_details.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_library_items.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_media_providers.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_meta_data_by_rating_key.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_recently_added.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_recently_added_library.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_refresh_library_metadata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_search_library.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_server_identity.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_thumb_image.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/get_watch_list.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getavailableclients.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getbandwidthstatistics.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getbutlertasks.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getcompanionsdata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getdevices.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getfilehash.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getgeodata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getglobalhubs.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/gethomedata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getlibraryhubs.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getmetadatachildren.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getmyplexaccount.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getondeck.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getpin.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getplaylistcontents.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getplaylists.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getresizedphoto.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getresourcesstatistics.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getsearchresults.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getserveractivities.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getservercapabilities.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getserverlist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getserverpreferences.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getsessionhistory.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getsessions.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getsourceconnectioninformation.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getstatistics.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/gettimeline.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/gettokenbypinid.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/gettopwatchedcontent.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/gettranscodesessions.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/gettransienttoken.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getupdatestatus.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/getuserfriends.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/logline.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/logmultiline.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/markplayed.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/markunplayed.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/performsearch.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/performvoicesearch.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/startalltasks.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/starttask.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/startuniversaltranscode.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/stopalltasks.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/stoptask.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/stoptranscodesession.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/updateplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/updateplayprogress.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/uploadplaylist.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/playlists.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/py.typed +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/sdk.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/search.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/server.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/sessions.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/statistics.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/types/__init__.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/types/basemodel.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/updater.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/__init__.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/annotations.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/enums.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/eventstreaming.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/forms.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/headers.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/logger.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/metadata.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/queryparams.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/requestbodies.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/retries.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/security.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/serializers.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/url.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/utils/values.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/video.py +0 -0
- {plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/watchlist.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: plex-api-client
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.17.0
|
|
4
4
|
Summary: Python Client SDK Generated by Speakeasy
|
|
5
5
|
Home-page: https://github.com/LukeHagar/plexpy.git
|
|
6
6
|
Author: Speakeasy
|
|
@@ -347,13 +347,24 @@ if res.object is not None:
|
|
|
347
347
|
<!-- Start Error Handling [errors] -->
|
|
348
348
|
## Error Handling
|
|
349
349
|
|
|
350
|
-
Handling errors in this SDK should largely match your expectations.
|
|
350
|
+
Handling errors in this SDK should largely match your expectations. All operations return a response object or raise an exception.
|
|
351
351
|
|
|
352
|
-
|
|
352
|
+
By default, an API error will raise a errors.SDKError exception, which has the following properties:
|
|
353
|
+
|
|
354
|
+
| Property | Type | Description |
|
|
355
|
+
|-----------------|------------------|-----------------------|
|
|
356
|
+
| `.status_code` | *int* | The HTTP status code |
|
|
357
|
+
| `.message` | *str* | The error message |
|
|
358
|
+
| `.raw_response` | *httpx.Response* | The raw HTTP response |
|
|
359
|
+
| `.body` | *str* | The response content |
|
|
360
|
+
|
|
361
|
+
When custom error responses are specified for an operation, the SDK may also raise their associated exceptions. You can refer to respective *Errors* tables in SDK docs for more details on possible exception types for each operation. For example, the `get_server_capabilities_async` method may raise the following exceptions:
|
|
362
|
+
|
|
363
|
+
| Error Type | Status Code | Content Type |
|
|
353
364
|
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
|
|
354
365
|
| errors.GetServerCapabilitiesBadRequest | 400 | application/json |
|
|
355
366
|
| errors.GetServerCapabilitiesUnauthorized | 401 | application/json |
|
|
356
|
-
| errors.SDKError |
|
|
367
|
+
| errors.SDKError | 4XX, 5XX | \*/\* |
|
|
357
368
|
|
|
358
369
|
### Example
|
|
359
370
|
|
|
@@ -598,7 +609,7 @@ if res.object is not None:
|
|
|
598
609
|
|
|
599
610
|
Certain parameters are configured globally. These parameters may be set on the SDK client instance itself during initialization. When configured as an option during SDK initialization, These global values will be used as defaults on the operations that use them. When such operations are called, there is a place in each to override the global value, if needed.
|
|
600
611
|
|
|
601
|
-
For example, you can set `ClientID` to `"gcgzw5rz2xovp84b4vha3a40"` at SDK initialization and then you do not have to pass the same value on calls to operations like `
|
|
612
|
+
For example, you can set `ClientID` to `"gcgzw5rz2xovp84b4vha3a40"` at SDK initialization and then you do not have to pass the same value on calls to operations like `get_server_resources`. But if you want to do so you may, which will locally override the global setting. See the example code below for a demonstration.
|
|
602
613
|
|
|
603
614
|
|
|
604
615
|
### Available Globals
|
|
@@ -621,8 +632,10 @@ This is used to track the client application and its usage
|
|
|
621
632
|
|
|
622
633
|
```python
|
|
623
634
|
from plex_api_client import PlexAPI
|
|
635
|
+
from plex_api_client.models import operations
|
|
624
636
|
|
|
625
637
|
s = PlexAPI(
|
|
638
|
+
access_token="<YOUR_API_KEY_HERE>",
|
|
626
639
|
client_id="gcgzw5rz2xovp84b4vha3a40",
|
|
627
640
|
client_name="Plex Web",
|
|
628
641
|
client_version="4.133.0",
|
|
@@ -630,9 +643,9 @@ s = PlexAPI(
|
|
|
630
643
|
device_name="Linux",
|
|
631
644
|
)
|
|
632
645
|
|
|
633
|
-
res = s.plex.
|
|
646
|
+
res = s.plex.get_server_resources(include_https=operations.IncludeHTTPS.ENABLE, include_relay=operations.IncludeRelay.ENABLE, include_i_pv6=operations.IncludeIPv6.ENABLE, client_id="gcgzw5rz2xovp84b4vha3a40")
|
|
634
647
|
|
|
635
|
-
if res.
|
|
648
|
+
if res.plex_devices is not None:
|
|
636
649
|
# handle response
|
|
637
650
|
pass
|
|
638
651
|
|
|
@@ -325,13 +325,24 @@ if res.object is not None:
|
|
|
325
325
|
<!-- Start Error Handling [errors] -->
|
|
326
326
|
## Error Handling
|
|
327
327
|
|
|
328
|
-
Handling errors in this SDK should largely match your expectations.
|
|
328
|
+
Handling errors in this SDK should largely match your expectations. All operations return a response object or raise an exception.
|
|
329
329
|
|
|
330
|
-
|
|
330
|
+
By default, an API error will raise a errors.SDKError exception, which has the following properties:
|
|
331
|
+
|
|
332
|
+
| Property | Type | Description |
|
|
333
|
+
|-----------------|------------------|-----------------------|
|
|
334
|
+
| `.status_code` | *int* | The HTTP status code |
|
|
335
|
+
| `.message` | *str* | The error message |
|
|
336
|
+
| `.raw_response` | *httpx.Response* | The raw HTTP response |
|
|
337
|
+
| `.body` | *str* | The response content |
|
|
338
|
+
|
|
339
|
+
When custom error responses are specified for an operation, the SDK may also raise their associated exceptions. You can refer to respective *Errors* tables in SDK docs for more details on possible exception types for each operation. For example, the `get_server_capabilities_async` method may raise the following exceptions:
|
|
340
|
+
|
|
341
|
+
| Error Type | Status Code | Content Type |
|
|
331
342
|
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
|
|
332
343
|
| errors.GetServerCapabilitiesBadRequest | 400 | application/json |
|
|
333
344
|
| errors.GetServerCapabilitiesUnauthorized | 401 | application/json |
|
|
334
|
-
| errors.SDKError |
|
|
345
|
+
| errors.SDKError | 4XX, 5XX | \*/\* |
|
|
335
346
|
|
|
336
347
|
### Example
|
|
337
348
|
|
|
@@ -576,7 +587,7 @@ if res.object is not None:
|
|
|
576
587
|
|
|
577
588
|
Certain parameters are configured globally. These parameters may be set on the SDK client instance itself during initialization. When configured as an option during SDK initialization, These global values will be used as defaults on the operations that use them. When such operations are called, there is a place in each to override the global value, if needed.
|
|
578
589
|
|
|
579
|
-
For example, you can set `ClientID` to `"gcgzw5rz2xovp84b4vha3a40"` at SDK initialization and then you do not have to pass the same value on calls to operations like `
|
|
590
|
+
For example, you can set `ClientID` to `"gcgzw5rz2xovp84b4vha3a40"` at SDK initialization and then you do not have to pass the same value on calls to operations like `get_server_resources`. But if you want to do so you may, which will locally override the global setting. See the example code below for a demonstration.
|
|
580
591
|
|
|
581
592
|
|
|
582
593
|
### Available Globals
|
|
@@ -599,8 +610,10 @@ This is used to track the client application and its usage
|
|
|
599
610
|
|
|
600
611
|
```python
|
|
601
612
|
from plex_api_client import PlexAPI
|
|
613
|
+
from plex_api_client.models import operations
|
|
602
614
|
|
|
603
615
|
s = PlexAPI(
|
|
616
|
+
access_token="<YOUR_API_KEY_HERE>",
|
|
604
617
|
client_id="gcgzw5rz2xovp84b4vha3a40",
|
|
605
618
|
client_name="Plex Web",
|
|
606
619
|
client_version="4.133.0",
|
|
@@ -608,9 +621,9 @@ s = PlexAPI(
|
|
|
608
621
|
device_name="Linux",
|
|
609
622
|
)
|
|
610
623
|
|
|
611
|
-
res = s.plex.
|
|
624
|
+
res = s.plex.get_server_resources(include_https=operations.IncludeHTTPS.ENABLE, include_relay=operations.IncludeRelay.ENABLE, include_i_pv6=operations.IncludeIPv6.ENABLE, client_id="gcgzw5rz2xovp84b4vha3a40")
|
|
612
625
|
|
|
613
|
-
if res.
|
|
626
|
+
if res.plex_devices is not None:
|
|
614
627
|
# handle response
|
|
615
628
|
pass
|
|
616
629
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "plex-api-client"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.17.0"
|
|
4
4
|
description = "Python Client SDK Generated by Speakeasy"
|
|
5
5
|
authors = ["Speakeasy",]
|
|
6
6
|
readme = "README-PYPI.md"
|
|
@@ -28,9 +28,6 @@ typing-inspect = "^0.9.0"
|
|
|
28
28
|
[tool.poetry.group.dev.dependencies]
|
|
29
29
|
mypy = "==1.10.1"
|
|
30
30
|
pylint = "==3.2.3"
|
|
31
|
-
pytest = "^8.2.0"
|
|
32
|
-
pytest-asyncio = "^0.23.7"
|
|
33
|
-
pytest-xdist = "^3.6.1"
|
|
34
31
|
types-python-dateutil = "^2.9.0.20240316"
|
|
35
32
|
|
|
36
33
|
[build-system]
|
{plex_api_client-0.15.1 → plex_api_client-0.17.0}/src/plex_api_client/models/operations/__init__.py
RENAMED
|
@@ -380,6 +380,8 @@ from .get_server_resources import (
|
|
|
380
380
|
Connections,
|
|
381
381
|
ConnectionsTypedDict,
|
|
382
382
|
GET_SERVER_RESOURCES_SERVERS,
|
|
383
|
+
GetServerResourcesGlobals,
|
|
384
|
+
GetServerResourcesGlobalsTypedDict,
|
|
383
385
|
GetServerResourcesRequest,
|
|
384
386
|
GetServerResourcesRequestTypedDict,
|
|
385
387
|
GetServerResourcesResponse,
|
|
@@ -1562,6 +1564,8 @@ __all__ = [
|
|
|
1562
1564
|
"GetServerPreferencesResponseBody",
|
|
1563
1565
|
"GetServerPreferencesResponseBodyTypedDict",
|
|
1564
1566
|
"GetServerPreferencesResponseTypedDict",
|
|
1567
|
+
"GetServerResourcesGlobals",
|
|
1568
|
+
"GetServerResourcesGlobalsTypedDict",
|
|
1565
1569
|
"GetServerResourcesRequest",
|
|
1566
1570
|
"GetServerResourcesRequestTypedDict",
|
|
1567
1571
|
"GetServerResourcesResponse",
|
|
@@ -16,6 +16,28 @@ GET_SERVER_RESOURCES_SERVERS = [
|
|
|
16
16
|
]
|
|
17
17
|
|
|
18
18
|
|
|
19
|
+
class GetServerResourcesGlobalsTypedDict(TypedDict):
|
|
20
|
+
client_id: NotRequired[str]
|
|
21
|
+
r"""The unique identifier for the client application
|
|
22
|
+
This is used to track the client application and its usage
|
|
23
|
+
(UUID, serial number, or other number unique per device)
|
|
24
|
+
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class GetServerResourcesGlobals(BaseModel):
|
|
29
|
+
client_id: Annotated[
|
|
30
|
+
Optional[str],
|
|
31
|
+
pydantic.Field(alias="X-Plex-Client-Identifier"),
|
|
32
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
33
|
+
] = None
|
|
34
|
+
r"""The unique identifier for the client application
|
|
35
|
+
This is used to track the client application and its usage
|
|
36
|
+
(UUID, serial number, or other number unique per device)
|
|
37
|
+
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
|
|
19
41
|
class IncludeHTTPS(int, Enum):
|
|
20
42
|
r"""Include Https entries in the results"""
|
|
21
43
|
|
|
@@ -50,6 +72,12 @@ class GetServerResourcesRequestTypedDict(TypedDict):
|
|
|
50
72
|
"""
|
|
51
73
|
include_i_pv6: NotRequired[IncludeIPv6]
|
|
52
74
|
r"""Include IPv6 entries in the results"""
|
|
75
|
+
client_id: NotRequired[str]
|
|
76
|
+
r"""The unique identifier for the client application
|
|
77
|
+
This is used to track the client application and its usage
|
|
78
|
+
(UUID, serial number, or other number unique per device)
|
|
79
|
+
|
|
80
|
+
"""
|
|
53
81
|
|
|
54
82
|
|
|
55
83
|
class GetServerResourcesRequest(BaseModel):
|
|
@@ -77,6 +105,17 @@ class GetServerResourcesRequest(BaseModel):
|
|
|
77
105
|
] = IncludeIPv6.DISABLE
|
|
78
106
|
r"""Include IPv6 entries in the results"""
|
|
79
107
|
|
|
108
|
+
client_id: Annotated[
|
|
109
|
+
Optional[str],
|
|
110
|
+
pydantic.Field(alias="X-Plex-Client-Identifier"),
|
|
111
|
+
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
|
112
|
+
] = None
|
|
113
|
+
r"""The unique identifier for the client application
|
|
114
|
+
This is used to track the client application and its usage
|
|
115
|
+
(UUID, serial number, or other number unique per device)
|
|
116
|
+
|
|
117
|
+
"""
|
|
118
|
+
|
|
80
119
|
|
|
81
120
|
class Protocol(str, Enum):
|
|
82
121
|
r"""The protocol used for the connection (http, https, etc)"""
|
|
@@ -4,6 +4,7 @@ from __future__ import annotations
|
|
|
4
4
|
from datetime import datetime
|
|
5
5
|
from enum import Enum
|
|
6
6
|
import httpx
|
|
7
|
+
from plex_api_client import utils
|
|
7
8
|
from plex_api_client.types import (
|
|
8
9
|
BaseModel,
|
|
9
10
|
Nullable,
|
|
@@ -11,8 +12,10 @@ from plex_api_client.types import (
|
|
|
11
12
|
UNSET,
|
|
12
13
|
UNSET_SENTINEL,
|
|
13
14
|
)
|
|
15
|
+
from plex_api_client.utils import validate_open_enum
|
|
14
16
|
import pydantic
|
|
15
17
|
from pydantic import model_serializer
|
|
18
|
+
from pydantic.functional_validators import PlainValidator
|
|
16
19
|
from typing import List, Optional, TypedDict
|
|
17
20
|
from typing_extensions import Annotated, NotRequired
|
|
18
21
|
|
|
@@ -207,7 +210,7 @@ class Services(BaseModel):
|
|
|
207
210
|
return m
|
|
208
211
|
|
|
209
212
|
|
|
210
|
-
class Features(str, Enum):
|
|
213
|
+
class Features(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
211
214
|
ANDROID_DOLBY_VISION = "Android - Dolby Vision"
|
|
212
215
|
ANDROID_PI_P = "Android - PiP"
|
|
213
216
|
CU_SUNSET = "CU Sunset"
|
|
@@ -215,28 +218,43 @@ class Features(str, Enum):
|
|
|
215
218
|
TREBLE_SHOW_FEATURES = "TREBLE-show-features"
|
|
216
219
|
AD_COUNTDOWN_TIMER = "ad-countdown-timer"
|
|
217
220
|
ADAPTIVE_BITRATE = "adaptive_bitrate"
|
|
221
|
+
ALBUM_TYPES = "album-types"
|
|
222
|
+
ALLOW_DVR = "allow_dvr"
|
|
218
223
|
AMAZON_LOOP_DEBUG = "amazon-loop-debug"
|
|
219
224
|
AVOD_AD_ANALYSIS = "avod-ad-analysis"
|
|
220
225
|
AVOD_NEW_MEDIA = "avod-new-media"
|
|
221
226
|
BLACKLIST_GET_SIGNIN = "blacklist_get_signin"
|
|
227
|
+
BOOST_VOICES = "boost-voices"
|
|
228
|
+
CAMERA_UPLOAD = "camera_upload"
|
|
222
229
|
CLIENT_RADIO_STATIONS = "client-radio-stations"
|
|
223
230
|
CLOUDFLARE_TURNSTILE_REQUIRED = "cloudflare-turnstile-required"
|
|
231
|
+
CLOUDSYNC = "cloudsync"
|
|
224
232
|
COLLECTIONS = "collections"
|
|
225
233
|
COMMENTS_AND_REPLIES_PUSH_NOTIFICATIONS = "comments_and_replies_push_notifications"
|
|
226
234
|
COMMUNITY_ACCESS_PLEX_TV = "community_access_plex_tv"
|
|
227
235
|
COMPANIONS_SONOS = "companions_sonos"
|
|
236
|
+
CONTENT_FILTER = "content_filter"
|
|
228
237
|
CUSTOM_HOME_REMOVAL = "custom-home-removal"
|
|
229
238
|
DISABLE_HOME_USER_FRIENDSHIPS = "disable_home_user_friendships"
|
|
230
239
|
DISABLE_SHARING_FRIENDSHIPS = "disable_sharing_friendships"
|
|
240
|
+
DOWNLOADS_GATING = "downloads-gating"
|
|
231
241
|
DRM_SUPPORT = "drm_support"
|
|
242
|
+
DVR = "dvr"
|
|
243
|
+
DVR_BLOCK_UNSUPPORTED_COUNTRIES = "dvr-block-unsupported-countries"
|
|
244
|
+
EPG_RECENT_CHANNELS = "epg-recent-channels"
|
|
232
245
|
EXCLUDE_RESTRICTIONS = "exclude restrictions"
|
|
233
246
|
FEDERATED_AUTH = "federated-auth"
|
|
234
247
|
FRIEND_REQUEST_PUSH_NOTIFICATIONS = "friend_request_push_notifications"
|
|
248
|
+
GRANDFATHER_SYNC = "grandfather-sync"
|
|
235
249
|
GUIDED_UPGRADE = "guided-upgrade"
|
|
250
|
+
HARDWARE_TRANSCODING = "hardware_transcoding"
|
|
236
251
|
HOME = "home"
|
|
252
|
+
HWTRANSCODE = "hwtranscode"
|
|
253
|
+
IMAGGA_V2 = "imagga-v2"
|
|
237
254
|
INCREASE_PASSWORD_COMPLEXITY = "increase-password-complexity"
|
|
238
255
|
IOS14_PRIVACY_BANNER = "ios14-privacy-banner"
|
|
239
256
|
ITERABLE_NOTIFICATION_TOKENS = "iterable-notification-tokens"
|
|
257
|
+
ITEM_CLUSTERS = "item_clusters"
|
|
240
258
|
KEEP_PAYMENT_METHOD = "keep-payment-method"
|
|
241
259
|
KEVIN_BACON = "kevin-bacon"
|
|
242
260
|
KOREA_CONSENT = "korea-consent"
|
|
@@ -245,28 +263,49 @@ class Features(str, Enum):
|
|
|
245
263
|
LIGHTNING_DVR_PIVOT = "lightning-dvr-pivot"
|
|
246
264
|
LIVE_TV_SUPPORT_INCOMPLETE_SEGMENTS = "live-tv-support-incomplete-segments"
|
|
247
265
|
LIVETV = "livetv"
|
|
266
|
+
LYRICS = "lyrics"
|
|
248
267
|
METADATA_SEARCH = "metadata_search"
|
|
268
|
+
MUSIC_ANALYSIS = "music-analysis"
|
|
269
|
+
MUSIC_VIDEOS = "music_videos"
|
|
249
270
|
NEW_PLEX_PASS_PRICES = "new_plex_pass_prices"
|
|
250
271
|
NEWS_PROVIDER_SUNSET_MODAL = "news-provider-sunset-modal"
|
|
272
|
+
NOMINATIM = "nominatim"
|
|
273
|
+
PASS = "pass"
|
|
251
274
|
PHOTOS_FAVORITES = "photos-favorites"
|
|
252
275
|
PHOTOS_METADATA_EDITION = "photos-metadata-edition"
|
|
276
|
+
PHOTOS_V6_EDIT = "photosV6-edit"
|
|
277
|
+
PHOTOS_V6_TV_ALBUMS = "photosV6-tv-albums"
|
|
253
278
|
PMS_HEALTH = "pms_health"
|
|
279
|
+
PREMIUM_DASHBOARD = "premium-dashboard"
|
|
280
|
+
PREMIUM_MUSIC_METADATA = "premium_music_metadata"
|
|
254
281
|
RADIO = "radio"
|
|
255
282
|
RATE_LIMIT_CLIENT_TOKEN = "rate-limit-client-token"
|
|
256
283
|
SCROBBLING_SERVICE_PLEX_TV = "scrobbling-service-plex-tv"
|
|
284
|
+
SESSION_BANDWIDTH_RESTRICTIONS = "session_bandwidth_restrictions"
|
|
285
|
+
SESSION_KICK = "session_kick"
|
|
257
286
|
SHARED_SERVER_NOTIFICATION = "shared_server_notification"
|
|
258
287
|
SHARED_SOURCE_NOTIFICATION = "shared_source_notification"
|
|
288
|
+
SIGNIN_NOTIFICATION = "signin_notification"
|
|
259
289
|
SIGNIN_WITH_APPLE = "signin_with_apple"
|
|
290
|
+
SILENCE_REMOVAL = "silence-removal"
|
|
291
|
+
SLEEP_TIMER = "sleep-timer"
|
|
260
292
|
SPRING_SERVE_AD_PROVIDER = "spring_serve_ad_provider"
|
|
293
|
+
SYNC = "sync"
|
|
294
|
+
SWEET_FADES = "sweet-fades"
|
|
261
295
|
TRANSCODER_CACHE = "transcoder_cache"
|
|
296
|
+
TRAILERS = "trailers"
|
|
262
297
|
TUNER_SHARING = "tuner-sharing"
|
|
263
298
|
TWO_FACTOR_AUTHENTICATION = "two-factor-authentication"
|
|
264
299
|
UNSUPPORTEDTUNERS = "unsupportedtuners"
|
|
265
300
|
UPGRADE_3DS2 = "upgrade-3ds2"
|
|
301
|
+
VISUALIZERS = "visualizers"
|
|
266
302
|
VOD_SCHEMA = "vod-schema"
|
|
267
303
|
VOD_CLOUDFLARE = "vod_cloudflare"
|
|
304
|
+
VOLUME_LEVELING = "volume-leveling"
|
|
268
305
|
WATCH_TOGETHER_INVITE = "watch-together-invite"
|
|
306
|
+
WATCHLIST_RSS = "watchlist-rss"
|
|
269
307
|
WEB_SERVER_DASHBOARD = "web_server_dashboard"
|
|
308
|
+
WEBHOOKS = "webhooks"
|
|
270
309
|
|
|
271
310
|
|
|
272
311
|
class GetTokenDetailsAuthenticationStatus(str, Enum):
|
|
@@ -296,7 +335,9 @@ class SubscriptionTypedDict(TypedDict):
|
|
|
296
335
|
class Subscription(BaseModel):
|
|
297
336
|
r"""If the account’s Plex Pass subscription is active"""
|
|
298
337
|
|
|
299
|
-
features: Optional[
|
|
338
|
+
features: Optional[
|
|
339
|
+
List[Annotated[Features, PlainValidator(validate_open_enum(False))]]
|
|
340
|
+
] = None
|
|
300
341
|
r"""List of features allowed on your Plex Pass subscription"""
|
|
301
342
|
|
|
302
343
|
active: Optional[bool] = None
|
|
@@ -356,7 +397,7 @@ class Subscription(BaseModel):
|
|
|
356
397
|
return m
|
|
357
398
|
|
|
358
399
|
|
|
359
|
-
class GetTokenDetailsFeatures(str, Enum):
|
|
400
|
+
class GetTokenDetailsFeatures(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
360
401
|
ANDROID_DOLBY_VISION = "Android - Dolby Vision"
|
|
361
402
|
ANDROID_PI_P = "Android - PiP"
|
|
362
403
|
CU_SUNSET = "CU Sunset"
|
|
@@ -364,28 +405,43 @@ class GetTokenDetailsFeatures(str, Enum):
|
|
|
364
405
|
TREBLE_SHOW_FEATURES = "TREBLE-show-features"
|
|
365
406
|
AD_COUNTDOWN_TIMER = "ad-countdown-timer"
|
|
366
407
|
ADAPTIVE_BITRATE = "adaptive_bitrate"
|
|
408
|
+
ALBUM_TYPES = "album-types"
|
|
409
|
+
ALLOW_DVR = "allow_dvr"
|
|
367
410
|
AMAZON_LOOP_DEBUG = "amazon-loop-debug"
|
|
368
411
|
AVOD_AD_ANALYSIS = "avod-ad-analysis"
|
|
369
412
|
AVOD_NEW_MEDIA = "avod-new-media"
|
|
370
413
|
BLACKLIST_GET_SIGNIN = "blacklist_get_signin"
|
|
414
|
+
BOOST_VOICES = "boost-voices"
|
|
415
|
+
CAMERA_UPLOAD = "camera_upload"
|
|
371
416
|
CLIENT_RADIO_STATIONS = "client-radio-stations"
|
|
372
417
|
CLOUDFLARE_TURNSTILE_REQUIRED = "cloudflare-turnstile-required"
|
|
418
|
+
CLOUDSYNC = "cloudsync"
|
|
373
419
|
COLLECTIONS = "collections"
|
|
374
420
|
COMMENTS_AND_REPLIES_PUSH_NOTIFICATIONS = "comments_and_replies_push_notifications"
|
|
375
421
|
COMMUNITY_ACCESS_PLEX_TV = "community_access_plex_tv"
|
|
376
422
|
COMPANIONS_SONOS = "companions_sonos"
|
|
423
|
+
CONTENT_FILTER = "content_filter"
|
|
377
424
|
CUSTOM_HOME_REMOVAL = "custom-home-removal"
|
|
378
425
|
DISABLE_HOME_USER_FRIENDSHIPS = "disable_home_user_friendships"
|
|
379
426
|
DISABLE_SHARING_FRIENDSHIPS = "disable_sharing_friendships"
|
|
427
|
+
DOWNLOADS_GATING = "downloads-gating"
|
|
380
428
|
DRM_SUPPORT = "drm_support"
|
|
429
|
+
DVR = "dvr"
|
|
430
|
+
DVR_BLOCK_UNSUPPORTED_COUNTRIES = "dvr-block-unsupported-countries"
|
|
431
|
+
EPG_RECENT_CHANNELS = "epg-recent-channels"
|
|
381
432
|
EXCLUDE_RESTRICTIONS = "exclude restrictions"
|
|
382
433
|
FEDERATED_AUTH = "federated-auth"
|
|
383
434
|
FRIEND_REQUEST_PUSH_NOTIFICATIONS = "friend_request_push_notifications"
|
|
435
|
+
GRANDFATHER_SYNC = "grandfather-sync"
|
|
384
436
|
GUIDED_UPGRADE = "guided-upgrade"
|
|
437
|
+
HARDWARE_TRANSCODING = "hardware_transcoding"
|
|
385
438
|
HOME = "home"
|
|
439
|
+
HWTRANSCODE = "hwtranscode"
|
|
440
|
+
IMAGGA_V2 = "imagga-v2"
|
|
386
441
|
INCREASE_PASSWORD_COMPLEXITY = "increase-password-complexity"
|
|
387
442
|
IOS14_PRIVACY_BANNER = "ios14-privacy-banner"
|
|
388
443
|
ITERABLE_NOTIFICATION_TOKENS = "iterable-notification-tokens"
|
|
444
|
+
ITEM_CLUSTERS = "item_clusters"
|
|
389
445
|
KEEP_PAYMENT_METHOD = "keep-payment-method"
|
|
390
446
|
KEVIN_BACON = "kevin-bacon"
|
|
391
447
|
KOREA_CONSENT = "korea-consent"
|
|
@@ -394,28 +450,49 @@ class GetTokenDetailsFeatures(str, Enum):
|
|
|
394
450
|
LIGHTNING_DVR_PIVOT = "lightning-dvr-pivot"
|
|
395
451
|
LIVE_TV_SUPPORT_INCOMPLETE_SEGMENTS = "live-tv-support-incomplete-segments"
|
|
396
452
|
LIVETV = "livetv"
|
|
453
|
+
LYRICS = "lyrics"
|
|
397
454
|
METADATA_SEARCH = "metadata_search"
|
|
455
|
+
MUSIC_ANALYSIS = "music-analysis"
|
|
456
|
+
MUSIC_VIDEOS = "music_videos"
|
|
398
457
|
NEW_PLEX_PASS_PRICES = "new_plex_pass_prices"
|
|
399
458
|
NEWS_PROVIDER_SUNSET_MODAL = "news-provider-sunset-modal"
|
|
459
|
+
NOMINATIM = "nominatim"
|
|
460
|
+
PASS = "pass"
|
|
400
461
|
PHOTOS_FAVORITES = "photos-favorites"
|
|
401
462
|
PHOTOS_METADATA_EDITION = "photos-metadata-edition"
|
|
463
|
+
PHOTOS_V6_EDIT = "photosV6-edit"
|
|
464
|
+
PHOTOS_V6_TV_ALBUMS = "photosV6-tv-albums"
|
|
402
465
|
PMS_HEALTH = "pms_health"
|
|
466
|
+
PREMIUM_DASHBOARD = "premium-dashboard"
|
|
467
|
+
PREMIUM_MUSIC_METADATA = "premium_music_metadata"
|
|
403
468
|
RADIO = "radio"
|
|
404
469
|
RATE_LIMIT_CLIENT_TOKEN = "rate-limit-client-token"
|
|
405
470
|
SCROBBLING_SERVICE_PLEX_TV = "scrobbling-service-plex-tv"
|
|
471
|
+
SESSION_BANDWIDTH_RESTRICTIONS = "session_bandwidth_restrictions"
|
|
472
|
+
SESSION_KICK = "session_kick"
|
|
406
473
|
SHARED_SERVER_NOTIFICATION = "shared_server_notification"
|
|
407
474
|
SHARED_SOURCE_NOTIFICATION = "shared_source_notification"
|
|
475
|
+
SIGNIN_NOTIFICATION = "signin_notification"
|
|
408
476
|
SIGNIN_WITH_APPLE = "signin_with_apple"
|
|
477
|
+
SILENCE_REMOVAL = "silence-removal"
|
|
478
|
+
SLEEP_TIMER = "sleep-timer"
|
|
409
479
|
SPRING_SERVE_AD_PROVIDER = "spring_serve_ad_provider"
|
|
480
|
+
SYNC = "sync"
|
|
481
|
+
SWEET_FADES = "sweet-fades"
|
|
410
482
|
TRANSCODER_CACHE = "transcoder_cache"
|
|
483
|
+
TRAILERS = "trailers"
|
|
411
484
|
TUNER_SHARING = "tuner-sharing"
|
|
412
485
|
TWO_FACTOR_AUTHENTICATION = "two-factor-authentication"
|
|
413
486
|
UNSUPPORTEDTUNERS = "unsupportedtuners"
|
|
414
487
|
UPGRADE_3DS2 = "upgrade-3ds2"
|
|
488
|
+
VISUALIZERS = "visualizers"
|
|
415
489
|
VOD_SCHEMA = "vod-schema"
|
|
416
490
|
VOD_CLOUDFLARE = "vod_cloudflare"
|
|
491
|
+
VOLUME_LEVELING = "volume-leveling"
|
|
417
492
|
WATCH_TOGETHER_INVITE = "watch-together-invite"
|
|
493
|
+
WATCHLIST_RSS = "watchlist-rss"
|
|
418
494
|
WEB_SERVER_DASHBOARD = "web_server_dashboard"
|
|
495
|
+
WEBHOOKS = "webhooks"
|
|
419
496
|
|
|
420
497
|
|
|
421
498
|
class GetTokenDetailsAuthenticationResponseStatus(str, Enum):
|
|
@@ -441,7 +518,13 @@ class GetTokenDetailsSubscriptionTypedDict(TypedDict):
|
|
|
441
518
|
|
|
442
519
|
|
|
443
520
|
class GetTokenDetailsSubscription(BaseModel):
|
|
444
|
-
features: Optional[
|
|
521
|
+
features: Optional[
|
|
522
|
+
List[
|
|
523
|
+
Annotated[
|
|
524
|
+
GetTokenDetailsFeatures, PlainValidator(validate_open_enum(False))
|
|
525
|
+
]
|
|
526
|
+
]
|
|
527
|
+
] = None
|
|
445
528
|
r"""List of features allowed on your Plex Pass subscription"""
|
|
446
529
|
|
|
447
530
|
active: Optional[bool] = None
|