plex-api-client 0.20.0__tar.gz → 0.21.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.20.0/README-PYPI.md → plex_api_client-0.21.0/PKG-INFO +53 -0
- plex_api_client-0.20.0/PKG-INFO → plex_api_client-0.21.0/README-PYPI.md +31 -24
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/pyproject.toml +15 -13
- plex_api_client-0.21.0/src/plex_api_client/__init__.py +17 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/_version.py +4 -1
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/activities.py +28 -8
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/authentication.py +56 -16
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/basesdk.py +7 -7
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/butler.py +70 -20
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/httpclient.py +50 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/hubs.py +42 -12
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/library.py +182 -52
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/log.py +42 -12
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/media.py +70 -20
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/components/__init__.py +1 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/__init__.py +1 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/__init__.py +13 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_library_items.py +40 -3
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_recently_added.py +38 -3
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_search_all_libraries.py +40 -3
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getbandwidthstatistics.py +2 -2
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getsessions.py +7 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/playlists.py +126 -36
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/plex.py +98 -28
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/sdk.py +13 -3
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/sdkconfiguration.py +10 -4
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/search.py +42 -12
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/server.py +126 -36
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/sessions.py +56 -16
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/statistics.py +42 -12
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/updater.py +42 -12
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/video.py +28 -8
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/watchlist.py +14 -4
- plex_api_client-0.20.0/src/plex_api_client/__init__.py +0 -8
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/LICENSE.md +0 -0
- {plex_api_client-0.20.0/src/plex_api_client → plex_api_client-0.21.0}/py.typed +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/_hooks/__init__.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/_hooks/registration.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/_hooks/sdkhooks.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/_hooks/types.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/components/security.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/addplaylistcontents.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/applyupdates.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/cancelserveractivities.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/checkforupdates.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/clearplaylistcontents.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/createplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/deletelibrary.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/deleteplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/enablepapertrail.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_all_libraries.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_banner_image.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_library_details.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_library_items.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_media_providers.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_meta_data_by_rating_key.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_recently_added_library.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_refresh_library_metadata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_search_all_libraries.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_search_library.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_server_identity.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_server_resources.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_thumb_image.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/get_watch_list.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getavailableclients.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getbandwidthstatistics.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getbutlertasks.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getcompanionsdata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getdevices.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getfilehash.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getgeodata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getglobalhubs.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/gethomedata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getlibraryhubs.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getmetadatachildren.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getmyplexaccount.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getondeck.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getpin.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getplaylistcontents.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getplaylists.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getresizedphoto.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getresourcesstatistics.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getsearchresults.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getserveractivities.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getservercapabilities.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getserverlist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getserverpreferences.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getsessionhistory.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getsessions.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getsourceconnectioninformation.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getstatistics.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/gettimeline.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/gettokenbypinid.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/gettokendetails.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/gettopwatchedcontent.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/gettranscodesessions.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/gettransienttoken.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getupdatestatus.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/getuserfriends.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/logline.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/logmultiline.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/markplayed.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/markunplayed.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/performsearch.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/performvoicesearch.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/post_users_sign_in_data.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/sdkerror.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/startalltasks.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/starttask.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/startuniversaltranscode.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/stopalltasks.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/stoptask.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/stoptranscodesession.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/updateplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/updateplayprogress.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/errors/uploadplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/addplaylistcontents.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/applyupdates.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/cancelserveractivities.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/checkforupdates.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/clearplaylistcontents.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/createplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/deletelibrary.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/deleteplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/enablepapertrail.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_all_libraries.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_banner_image.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_library_details.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_media_providers.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_meta_data_by_rating_key.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_recently_added_library.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_refresh_library_metadata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_search_library.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_server_identity.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_server_resources.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_thumb_image.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/get_watch_list.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getavailableclients.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getbutlertasks.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getcompanionsdata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getdevices.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getfilehash.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getgeodata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getglobalhubs.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/gethomedata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getlibraryhubs.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getmetadatachildren.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getmyplexaccount.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getondeck.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getpin.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getplaylistcontents.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getplaylists.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getresizedphoto.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getresourcesstatistics.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getsearchresults.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getserveractivities.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getservercapabilities.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getserverlist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getserverpreferences.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getsessionhistory.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getsourceconnectioninformation.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getstatistics.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/gettimeline.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/gettokenbypinid.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/gettokendetails.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/gettopwatchedcontent.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/gettranscodesessions.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/gettransienttoken.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getupdatestatus.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/getuserfriends.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/logline.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/logmultiline.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/markplayed.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/markunplayed.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/performsearch.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/performvoicesearch.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/post_users_sign_in_data.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/startalltasks.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/starttask.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/startuniversaltranscode.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/stopalltasks.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/stoptask.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/stoptranscodesession.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/updateplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/updateplayprogress.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/models/operations/uploadplaylist.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0/src/plex_api_client}/py.typed +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/types/__init__.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/types/basemodel.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/__init__.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/annotations.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/enums.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/eventstreaming.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/forms.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/headers.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/logger.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/metadata.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/queryparams.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/requestbodies.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/retries.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/security.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/serializers.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/url.py +0 -0
- {plex_api_client-0.20.0 → plex_api_client-0.21.0}/src/plex_api_client/utils/values.py +0 -0
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: plex-api-client
|
|
3
|
+
Version: 0.21.0
|
|
4
|
+
Summary: Python Client SDK Generated by Speakeasy
|
|
5
|
+
Author: Speakeasy
|
|
6
|
+
Requires-Python: >=3.9
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
10
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
13
|
+
Requires-Dist: eval-type-backport (>=0.2.0)
|
|
14
|
+
Requires-Dist: httpx (>=0.28.1)
|
|
15
|
+
Requires-Dist: jsonpath-python (>=1.0.6)
|
|
16
|
+
Requires-Dist: pydantic (>=2.10.3)
|
|
17
|
+
Requires-Dist: python-dateutil (>=2.8.2)
|
|
18
|
+
Requires-Dist: typing-inspect (>=0.9.0)
|
|
19
|
+
Project-URL: Repository, https://github.com/LukeHagar/plexpy.git
|
|
20
|
+
Description-Content-Type: text/markdown
|
|
21
|
+
|
|
1
22
|
# plexpy
|
|
2
23
|
|
|
3
24
|
<div align="left">
|
|
@@ -54,6 +75,7 @@ The following SDKs are generated from the OpenAPI Specification. They are automa
|
|
|
54
75
|
* [Server Selection](https://github.com/LukeHagar/plexpy/blob/master/#server-selection)
|
|
55
76
|
* [Custom HTTP Client](https://github.com/LukeHagar/plexpy/blob/master/#custom-http-client)
|
|
56
77
|
* [Authentication](https://github.com/LukeHagar/plexpy/blob/master/#authentication)
|
|
78
|
+
* [Resource Management](https://github.com/LukeHagar/plexpy/blob/master/#resource-management)
|
|
57
79
|
* [Debugging](https://github.com/LukeHagar/plexpy/blob/master/#debugging)
|
|
58
80
|
* [Development](https://github.com/LukeHagar/plexpy/blob/master/#development)
|
|
59
81
|
* [Maturity](https://github.com/LukeHagar/plexpy/blob/master/#maturity)
|
|
@@ -64,6 +86,11 @@ The following SDKs are generated from the OpenAPI Specification. They are automa
|
|
|
64
86
|
<!-- Start SDK Installation [installation] -->
|
|
65
87
|
## SDK Installation
|
|
66
88
|
|
|
89
|
+
> [!NOTE]
|
|
90
|
+
> **Python version upgrade policy**
|
|
91
|
+
>
|
|
92
|
+
> Once a Python version reaches its [official end of life date](https://devguide.python.org/versions/), a 3-month grace period is provided for users to upgrade. Following this grace period, the minimum python version supported in the SDK will be updated.
|
|
93
|
+
|
|
67
94
|
The SDK can be installed with either *pip* or *poetry* package managers.
|
|
68
95
|
|
|
69
96
|
### PIP
|
|
@@ -529,6 +556,31 @@ with PlexAPI(
|
|
|
529
556
|
```
|
|
530
557
|
<!-- End Authentication [security] -->
|
|
531
558
|
|
|
559
|
+
<!-- Start Resource Management [resource-management] -->
|
|
560
|
+
## Resource Management
|
|
561
|
+
|
|
562
|
+
The `PlexAPI` class implements the context manager protocol and registers a finalizer function to close the underlying sync and async HTTPX clients it uses under the hood. This will close HTTP connections, release memory and free up other resources held by the SDK. In short-lived Python programs and notebooks that make a few SDK method calls, resource management may not be a concern. However, in longer-lived programs, it is beneficial to create a single SDK instance via a [context manager][context-manager] and reuse it across the application.
|
|
563
|
+
|
|
564
|
+
[context-manager]: https://docs.python.org/3/reference/datamodel.html#context-managers
|
|
565
|
+
|
|
566
|
+
```python
|
|
567
|
+
from plex_api_client import PlexAPI
|
|
568
|
+
def main():
|
|
569
|
+
with PlexAPI(
|
|
570
|
+
access_token="<YOUR_API_KEY_HERE>",
|
|
571
|
+
) as plex_api:
|
|
572
|
+
# Rest of application here...
|
|
573
|
+
|
|
574
|
+
|
|
575
|
+
# Or when using async:
|
|
576
|
+
async def amain():
|
|
577
|
+
async with PlexAPI(
|
|
578
|
+
access_token="<YOUR_API_KEY_HERE>",
|
|
579
|
+
) as plex_api:
|
|
580
|
+
# Rest of application here...
|
|
581
|
+
```
|
|
582
|
+
<!-- End Resource Management [resource-management] -->
|
|
583
|
+
|
|
532
584
|
<!-- Start Debugging [debug] -->
|
|
533
585
|
## Debugging
|
|
534
586
|
|
|
@@ -560,3 +612,4 @@ While we value open-source contributions to this SDK, this library is generated
|
|
|
560
612
|
Feel free to open a PR or a Github issue as a proof of concept and we'll do our best to include it in a future release!
|
|
561
613
|
|
|
562
614
|
### SDK Created by [Speakeasy](https://docs.speakeasyapi.dev/docs/using-speakeasy/client-sdks)
|
|
615
|
+
|
|
@@ -1,26 +1,3 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: plex-api-client
|
|
3
|
-
Version: 0.20.0
|
|
4
|
-
Summary: Python Client SDK Generated by Speakeasy
|
|
5
|
-
Home-page: https://github.com/LukeHagar/plexpy.git
|
|
6
|
-
Author: Speakeasy
|
|
7
|
-
Requires-Python: >=3.8,<4.0
|
|
8
|
-
Classifier: Programming Language :: Python :: 3
|
|
9
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
10
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
-
Requires-Dist: eval-type-backport (>=0.2.0,<0.3.0)
|
|
16
|
-
Requires-Dist: httpx (>=0.28.1,<0.29.0)
|
|
17
|
-
Requires-Dist: jsonpath-python (>=1.0.6,<2.0.0)
|
|
18
|
-
Requires-Dist: pydantic (>=2.10.3,<2.11.0)
|
|
19
|
-
Requires-Dist: python-dateutil (>=2.8.2,<3.0.0)
|
|
20
|
-
Requires-Dist: typing-inspect (>=0.9.0,<0.10.0)
|
|
21
|
-
Project-URL: Repository, https://github.com/LukeHagar/plexpy.git
|
|
22
|
-
Description-Content-Type: text/markdown
|
|
23
|
-
|
|
24
1
|
# plexpy
|
|
25
2
|
|
|
26
3
|
<div align="left">
|
|
@@ -77,6 +54,7 @@ The following SDKs are generated from the OpenAPI Specification. They are automa
|
|
|
77
54
|
* [Server Selection](https://github.com/LukeHagar/plexpy/blob/master/#server-selection)
|
|
78
55
|
* [Custom HTTP Client](https://github.com/LukeHagar/plexpy/blob/master/#custom-http-client)
|
|
79
56
|
* [Authentication](https://github.com/LukeHagar/plexpy/blob/master/#authentication)
|
|
57
|
+
* [Resource Management](https://github.com/LukeHagar/plexpy/blob/master/#resource-management)
|
|
80
58
|
* [Debugging](https://github.com/LukeHagar/plexpy/blob/master/#debugging)
|
|
81
59
|
* [Development](https://github.com/LukeHagar/plexpy/blob/master/#development)
|
|
82
60
|
* [Maturity](https://github.com/LukeHagar/plexpy/blob/master/#maturity)
|
|
@@ -87,6 +65,11 @@ The following SDKs are generated from the OpenAPI Specification. They are automa
|
|
|
87
65
|
<!-- Start SDK Installation [installation] -->
|
|
88
66
|
## SDK Installation
|
|
89
67
|
|
|
68
|
+
> [!NOTE]
|
|
69
|
+
> **Python version upgrade policy**
|
|
70
|
+
>
|
|
71
|
+
> Once a Python version reaches its [official end of life date](https://devguide.python.org/versions/), a 3-month grace period is provided for users to upgrade. Following this grace period, the minimum python version supported in the SDK will be updated.
|
|
72
|
+
|
|
90
73
|
The SDK can be installed with either *pip* or *poetry* package managers.
|
|
91
74
|
|
|
92
75
|
### PIP
|
|
@@ -552,6 +535,31 @@ with PlexAPI(
|
|
|
552
535
|
```
|
|
553
536
|
<!-- End Authentication [security] -->
|
|
554
537
|
|
|
538
|
+
<!-- Start Resource Management [resource-management] -->
|
|
539
|
+
## Resource Management
|
|
540
|
+
|
|
541
|
+
The `PlexAPI` class implements the context manager protocol and registers a finalizer function to close the underlying sync and async HTTPX clients it uses under the hood. This will close HTTP connections, release memory and free up other resources held by the SDK. In short-lived Python programs and notebooks that make a few SDK method calls, resource management may not be a concern. However, in longer-lived programs, it is beneficial to create a single SDK instance via a [context manager][context-manager] and reuse it across the application.
|
|
542
|
+
|
|
543
|
+
[context-manager]: https://docs.python.org/3/reference/datamodel.html#context-managers
|
|
544
|
+
|
|
545
|
+
```python
|
|
546
|
+
from plex_api_client import PlexAPI
|
|
547
|
+
def main():
|
|
548
|
+
with PlexAPI(
|
|
549
|
+
access_token="<YOUR_API_KEY_HERE>",
|
|
550
|
+
) as plex_api:
|
|
551
|
+
# Rest of application here...
|
|
552
|
+
|
|
553
|
+
|
|
554
|
+
# Or when using async:
|
|
555
|
+
async def amain():
|
|
556
|
+
async with PlexAPI(
|
|
557
|
+
access_token="<YOUR_API_KEY_HERE>",
|
|
558
|
+
) as plex_api:
|
|
559
|
+
# Rest of application here...
|
|
560
|
+
```
|
|
561
|
+
<!-- End Resource Management [resource-management] -->
|
|
562
|
+
|
|
555
563
|
<!-- Start Debugging [debug] -->
|
|
556
564
|
## Debugging
|
|
557
565
|
|
|
@@ -583,4 +591,3 @@ While we value open-source contributions to this SDK, this library is generated
|
|
|
583
591
|
Feel free to open a PR or a Github issue as a proof of concept and we'll do our best to include it in a future release!
|
|
584
592
|
|
|
585
593
|
### SDK Created by [Speakeasy](https://docs.speakeasyapi.dev/docs/using-speakeasy/client-sdks)
|
|
586
|
-
|
|
@@ -1,9 +1,20 @@
|
|
|
1
|
-
[
|
|
1
|
+
[project]
|
|
2
2
|
name = "plex-api-client"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.21.0"
|
|
4
4
|
description = "Python Client SDK Generated by Speakeasy"
|
|
5
|
-
authors = ["Speakeasy",]
|
|
5
|
+
authors = [{ name = "Speakeasy" },]
|
|
6
6
|
readme = "README-PYPI.md"
|
|
7
|
+
requires-python = ">=3.9"
|
|
8
|
+
dependencies = [
|
|
9
|
+
"eval-type-backport >=0.2.0",
|
|
10
|
+
"httpx >=0.28.1",
|
|
11
|
+
"jsonpath-python >=1.0.6",
|
|
12
|
+
"pydantic >=2.10.3",
|
|
13
|
+
"python-dateutil >=2.8.2",
|
|
14
|
+
"typing-inspect >=0.9.0",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
[tool.poetry]
|
|
7
18
|
repository = "https://github.com/LukeHagar/plexpy.git"
|
|
8
19
|
packages = [
|
|
9
20
|
{ include = "plex_api_client", from = "src" }
|
|
@@ -16,17 +27,8 @@ include = ["py.typed", "src/plex_api_client/py.typed"]
|
|
|
16
27
|
[virtualenvs]
|
|
17
28
|
in-project = true
|
|
18
29
|
|
|
19
|
-
[tool.poetry.dependencies]
|
|
20
|
-
python = "^3.8"
|
|
21
|
-
eval-type-backport = "^0.2.0"
|
|
22
|
-
httpx = "^0.28.1"
|
|
23
|
-
jsonpath-python = "^1.0.6"
|
|
24
|
-
pydantic = "~2.10.3"
|
|
25
|
-
python-dateutil = "^2.8.2"
|
|
26
|
-
typing-inspect = "^0.9.0"
|
|
27
|
-
|
|
28
30
|
[tool.poetry.group.dev.dependencies]
|
|
29
|
-
mypy = "==1.
|
|
31
|
+
mypy = "==1.14.1"
|
|
30
32
|
pylint = "==3.2.3"
|
|
31
33
|
types-python-dateutil = "^2.9.0.20240316"
|
|
32
34
|
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from ._version import (
|
|
4
|
+
__title__,
|
|
5
|
+
__version__,
|
|
6
|
+
__openapi_doc_version__,
|
|
7
|
+
__gen_version__,
|
|
8
|
+
__user_agent__,
|
|
9
|
+
)
|
|
10
|
+
from .sdk import *
|
|
11
|
+
from .sdkconfiguration import *
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
VERSION: str = __version__
|
|
15
|
+
OPENAPI_DOC_VERSION = __openapi_doc_version__
|
|
16
|
+
SPEAKEASY_GENERATOR_VERSION = __gen_version__
|
|
17
|
+
USER_AGENT = __user_agent__
|
|
@@ -3,7 +3,10 @@
|
|
|
3
3
|
import importlib.metadata
|
|
4
4
|
|
|
5
5
|
__title__: str = "plex-api-client"
|
|
6
|
-
__version__: str = "0.
|
|
6
|
+
__version__: str = "0.21.0"
|
|
7
|
+
__openapi_doc_version__: str = "0.0.3"
|
|
8
|
+
__gen_version__: str = "2.496.0"
|
|
9
|
+
__user_agent__: str = "speakeasy-sdk/python 0.21.0 2.496.0 0.0.3 plex-api-client"
|
|
7
10
|
|
|
8
11
|
try:
|
|
9
12
|
if __package__ is not None:
|
|
@@ -43,7 +43,7 @@ class Activities(BaseSDK):
|
|
|
43
43
|
|
|
44
44
|
if server_url is not None:
|
|
45
45
|
base_url = server_url
|
|
46
|
-
req = self.
|
|
46
|
+
req = self._build_request(
|
|
47
47
|
method="GET",
|
|
48
48
|
path="/activities",
|
|
49
49
|
base_url=base_url,
|
|
@@ -100,7 +100,12 @@ class Activities(BaseSDK):
|
|
|
100
100
|
)
|
|
101
101
|
data.raw_response = http_res
|
|
102
102
|
raise errors.GetServerActivitiesUnauthorized(data=data)
|
|
103
|
-
if utils.match_response(http_res,
|
|
103
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
104
|
+
http_res_text = utils.stream_to_text(http_res)
|
|
105
|
+
raise errors.SDKError(
|
|
106
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
107
|
+
)
|
|
108
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
104
109
|
http_res_text = utils.stream_to_text(http_res)
|
|
105
110
|
raise errors.SDKError(
|
|
106
111
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -139,7 +144,7 @@ class Activities(BaseSDK):
|
|
|
139
144
|
|
|
140
145
|
if server_url is not None:
|
|
141
146
|
base_url = server_url
|
|
142
|
-
req = self.
|
|
147
|
+
req = self._build_request_async(
|
|
143
148
|
method="GET",
|
|
144
149
|
path="/activities",
|
|
145
150
|
base_url=base_url,
|
|
@@ -196,7 +201,12 @@ class Activities(BaseSDK):
|
|
|
196
201
|
)
|
|
197
202
|
data.raw_response = http_res
|
|
198
203
|
raise errors.GetServerActivitiesUnauthorized(data=data)
|
|
199
|
-
if utils.match_response(http_res,
|
|
204
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
205
|
+
http_res_text = await utils.stream_to_text_async(http_res)
|
|
206
|
+
raise errors.SDKError(
|
|
207
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
208
|
+
)
|
|
209
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
200
210
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
201
211
|
raise errors.SDKError(
|
|
202
212
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -242,7 +252,7 @@ class Activities(BaseSDK):
|
|
|
242
252
|
activity_uuid=activity_uuid,
|
|
243
253
|
)
|
|
244
254
|
|
|
245
|
-
req = self.
|
|
255
|
+
req = self._build_request(
|
|
246
256
|
method="DELETE",
|
|
247
257
|
path="/activities/{activityUUID}",
|
|
248
258
|
base_url=base_url,
|
|
@@ -296,7 +306,12 @@ class Activities(BaseSDK):
|
|
|
296
306
|
)
|
|
297
307
|
data.raw_response = http_res
|
|
298
308
|
raise errors.CancelServerActivitiesUnauthorized(data=data)
|
|
299
|
-
if utils.match_response(http_res,
|
|
309
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
310
|
+
http_res_text = utils.stream_to_text(http_res)
|
|
311
|
+
raise errors.SDKError(
|
|
312
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
313
|
+
)
|
|
314
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
300
315
|
http_res_text = utils.stream_to_text(http_res)
|
|
301
316
|
raise errors.SDKError(
|
|
302
317
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -342,7 +357,7 @@ class Activities(BaseSDK):
|
|
|
342
357
|
activity_uuid=activity_uuid,
|
|
343
358
|
)
|
|
344
359
|
|
|
345
|
-
req = self.
|
|
360
|
+
req = self._build_request_async(
|
|
346
361
|
method="DELETE",
|
|
347
362
|
path="/activities/{activityUUID}",
|
|
348
363
|
base_url=base_url,
|
|
@@ -396,7 +411,12 @@ class Activities(BaseSDK):
|
|
|
396
411
|
)
|
|
397
412
|
data.raw_response = http_res
|
|
398
413
|
raise errors.CancelServerActivitiesUnauthorized(data=data)
|
|
399
|
-
if utils.match_response(http_res,
|
|
414
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
415
|
+
http_res_text = await utils.stream_to_text_async(http_res)
|
|
416
|
+
raise errors.SDKError(
|
|
417
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
418
|
+
)
|
|
419
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
400
420
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
401
421
|
raise errors.SDKError(
|
|
402
422
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -46,7 +46,7 @@ class Authentication(BaseSDK):
|
|
|
46
46
|
scope=scope,
|
|
47
47
|
)
|
|
48
48
|
|
|
49
|
-
req = self.
|
|
49
|
+
req = self._build_request(
|
|
50
50
|
method="GET",
|
|
51
51
|
path="/security/token",
|
|
52
52
|
base_url=base_url,
|
|
@@ -100,7 +100,12 @@ class Authentication(BaseSDK):
|
|
|
100
100
|
)
|
|
101
101
|
data.raw_response = http_res
|
|
102
102
|
raise errors.GetTransientTokenUnauthorized(data=data)
|
|
103
|
-
if utils.match_response(http_res,
|
|
103
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
104
|
+
http_res_text = utils.stream_to_text(http_res)
|
|
105
|
+
raise errors.SDKError(
|
|
106
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
107
|
+
)
|
|
108
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
104
109
|
http_res_text = utils.stream_to_text(http_res)
|
|
105
110
|
raise errors.SDKError(
|
|
106
111
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -150,7 +155,7 @@ class Authentication(BaseSDK):
|
|
|
150
155
|
scope=scope,
|
|
151
156
|
)
|
|
152
157
|
|
|
153
|
-
req = self.
|
|
158
|
+
req = self._build_request_async(
|
|
154
159
|
method="GET",
|
|
155
160
|
path="/security/token",
|
|
156
161
|
base_url=base_url,
|
|
@@ -204,7 +209,12 @@ class Authentication(BaseSDK):
|
|
|
204
209
|
)
|
|
205
210
|
data.raw_response = http_res
|
|
206
211
|
raise errors.GetTransientTokenUnauthorized(data=data)
|
|
207
|
-
if utils.match_response(http_res,
|
|
212
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
213
|
+
http_res_text = await utils.stream_to_text_async(http_res)
|
|
214
|
+
raise errors.SDKError(
|
|
215
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
216
|
+
)
|
|
217
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
208
218
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
209
219
|
raise errors.SDKError(
|
|
210
220
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -252,7 +262,7 @@ class Authentication(BaseSDK):
|
|
|
252
262
|
source=source,
|
|
253
263
|
)
|
|
254
264
|
|
|
255
|
-
req = self.
|
|
265
|
+
req = self._build_request(
|
|
256
266
|
method="GET",
|
|
257
267
|
path="/security/resources",
|
|
258
268
|
base_url=base_url,
|
|
@@ -306,7 +316,12 @@ class Authentication(BaseSDK):
|
|
|
306
316
|
)
|
|
307
317
|
data.raw_response = http_res
|
|
308
318
|
raise errors.GetSourceConnectionInformationUnauthorized(data=data)
|
|
309
|
-
if utils.match_response(http_res,
|
|
319
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
320
|
+
http_res_text = utils.stream_to_text(http_res)
|
|
321
|
+
raise errors.SDKError(
|
|
322
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
323
|
+
)
|
|
324
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
310
325
|
http_res_text = utils.stream_to_text(http_res)
|
|
311
326
|
raise errors.SDKError(
|
|
312
327
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -354,7 +369,7 @@ class Authentication(BaseSDK):
|
|
|
354
369
|
source=source,
|
|
355
370
|
)
|
|
356
371
|
|
|
357
|
-
req = self.
|
|
372
|
+
req = self._build_request_async(
|
|
358
373
|
method="GET",
|
|
359
374
|
path="/security/resources",
|
|
360
375
|
base_url=base_url,
|
|
@@ -408,7 +423,12 @@ class Authentication(BaseSDK):
|
|
|
408
423
|
)
|
|
409
424
|
data.raw_response = http_res
|
|
410
425
|
raise errors.GetSourceConnectionInformationUnauthorized(data=data)
|
|
411
|
-
if utils.match_response(http_res,
|
|
426
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
427
|
+
http_res_text = await utils.stream_to_text_async(http_res)
|
|
428
|
+
raise errors.SDKError(
|
|
429
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
430
|
+
)
|
|
431
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
412
432
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
413
433
|
raise errors.SDKError(
|
|
414
434
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -449,7 +469,7 @@ class Authentication(BaseSDK):
|
|
|
449
469
|
base_url = server_url
|
|
450
470
|
else:
|
|
451
471
|
base_url = operations.GET_TOKEN_DETAILS_SERVERS[0]
|
|
452
|
-
req = self.
|
|
472
|
+
req = self._build_request(
|
|
453
473
|
method="GET",
|
|
454
474
|
path="/user",
|
|
455
475
|
base_url=base_url,
|
|
@@ -506,7 +526,12 @@ class Authentication(BaseSDK):
|
|
|
506
526
|
)
|
|
507
527
|
data.raw_response = http_res
|
|
508
528
|
raise errors.GetTokenDetailsUnauthorized(data=data)
|
|
509
|
-
if utils.match_response(http_res,
|
|
529
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
530
|
+
http_res_text = utils.stream_to_text(http_res)
|
|
531
|
+
raise errors.SDKError(
|
|
532
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
533
|
+
)
|
|
534
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
510
535
|
http_res_text = utils.stream_to_text(http_res)
|
|
511
536
|
raise errors.SDKError(
|
|
512
537
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -547,7 +572,7 @@ class Authentication(BaseSDK):
|
|
|
547
572
|
base_url = server_url
|
|
548
573
|
else:
|
|
549
574
|
base_url = operations.GET_TOKEN_DETAILS_SERVERS[0]
|
|
550
|
-
req = self.
|
|
575
|
+
req = self._build_request_async(
|
|
551
576
|
method="GET",
|
|
552
577
|
path="/user",
|
|
553
578
|
base_url=base_url,
|
|
@@ -604,7 +629,12 @@ class Authentication(BaseSDK):
|
|
|
604
629
|
)
|
|
605
630
|
data.raw_response = http_res
|
|
606
631
|
raise errors.GetTokenDetailsUnauthorized(data=data)
|
|
607
|
-
if utils.match_response(http_res,
|
|
632
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
633
|
+
http_res_text = await utils.stream_to_text_async(http_res)
|
|
634
|
+
raise errors.SDKError(
|
|
635
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
636
|
+
)
|
|
637
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
608
638
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
609
639
|
raise errors.SDKError(
|
|
610
640
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -655,7 +685,7 @@ class Authentication(BaseSDK):
|
|
|
655
685
|
request = utils.unmarshal(request, operations.PostUsersSignInDataRequest)
|
|
656
686
|
request = cast(operations.PostUsersSignInDataRequest, request)
|
|
657
687
|
|
|
658
|
-
req = self.
|
|
688
|
+
req = self._build_request(
|
|
659
689
|
method="POST",
|
|
660
690
|
path="/users/signin",
|
|
661
691
|
base_url=base_url,
|
|
@@ -719,7 +749,12 @@ class Authentication(BaseSDK):
|
|
|
719
749
|
)
|
|
720
750
|
data.raw_response = http_res
|
|
721
751
|
raise errors.PostUsersSignInDataUnauthorized(data=data)
|
|
722
|
-
if utils.match_response(http_res,
|
|
752
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
753
|
+
http_res_text = utils.stream_to_text(http_res)
|
|
754
|
+
raise errors.SDKError(
|
|
755
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
756
|
+
)
|
|
757
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
723
758
|
http_res_text = utils.stream_to_text(http_res)
|
|
724
759
|
raise errors.SDKError(
|
|
725
760
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -770,7 +805,7 @@ class Authentication(BaseSDK):
|
|
|
770
805
|
request = utils.unmarshal(request, operations.PostUsersSignInDataRequest)
|
|
771
806
|
request = cast(operations.PostUsersSignInDataRequest, request)
|
|
772
807
|
|
|
773
|
-
req = self.
|
|
808
|
+
req = self._build_request_async(
|
|
774
809
|
method="POST",
|
|
775
810
|
path="/users/signin",
|
|
776
811
|
base_url=base_url,
|
|
@@ -834,7 +869,12 @@ class Authentication(BaseSDK):
|
|
|
834
869
|
)
|
|
835
870
|
data.raw_response = http_res
|
|
836
871
|
raise errors.PostUsersSignInDataUnauthorized(data=data)
|
|
837
|
-
if utils.match_response(http_res,
|
|
872
|
+
if utils.match_response(http_res, "4XX", "*"):
|
|
873
|
+
http_res_text = await utils.stream_to_text_async(http_res)
|
|
874
|
+
raise errors.SDKError(
|
|
875
|
+
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
876
|
+
)
|
|
877
|
+
if utils.match_response(http_res, "5XX", "*"):
|
|
838
878
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
839
879
|
raise errors.SDKError(
|
|
840
880
|
"API error occurred", http_res.status_code, http_res_text, http_res
|
|
@@ -20,7 +20,7 @@ class BaseSDK:
|
|
|
20
20
|
def __init__(self, sdk_config: SDKConfiguration) -> None:
|
|
21
21
|
self.sdk_configuration = sdk_config
|
|
22
22
|
|
|
23
|
-
def
|
|
23
|
+
def _get_url(self, base_url, url_variables):
|
|
24
24
|
sdk_url, sdk_variables = self.sdk_configuration.get_server_details()
|
|
25
25
|
|
|
26
26
|
if base_url is None:
|
|
@@ -31,7 +31,7 @@ class BaseSDK:
|
|
|
31
31
|
|
|
32
32
|
return utils.template_url(base_url, url_variables)
|
|
33
33
|
|
|
34
|
-
def
|
|
34
|
+
def _build_request_async(
|
|
35
35
|
self,
|
|
36
36
|
method,
|
|
37
37
|
path,
|
|
@@ -53,7 +53,7 @@ class BaseSDK:
|
|
|
53
53
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
54
54
|
) -> httpx.Request:
|
|
55
55
|
client = self.sdk_configuration.async_client
|
|
56
|
-
return self.
|
|
56
|
+
return self._build_request_with_client(
|
|
57
57
|
client,
|
|
58
58
|
method,
|
|
59
59
|
path,
|
|
@@ -73,7 +73,7 @@ class BaseSDK:
|
|
|
73
73
|
http_headers,
|
|
74
74
|
)
|
|
75
75
|
|
|
76
|
-
def
|
|
76
|
+
def _build_request(
|
|
77
77
|
self,
|
|
78
78
|
method,
|
|
79
79
|
path,
|
|
@@ -95,7 +95,7 @@ class BaseSDK:
|
|
|
95
95
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
96
96
|
) -> httpx.Request:
|
|
97
97
|
client = self.sdk_configuration.client
|
|
98
|
-
return self.
|
|
98
|
+
return self._build_request_with_client(
|
|
99
99
|
client,
|
|
100
100
|
method,
|
|
101
101
|
path,
|
|
@@ -115,7 +115,7 @@ class BaseSDK:
|
|
|
115
115
|
http_headers,
|
|
116
116
|
)
|
|
117
117
|
|
|
118
|
-
def
|
|
118
|
+
def _build_request_with_client(
|
|
119
119
|
self,
|
|
120
120
|
client,
|
|
121
121
|
method,
|
|
@@ -142,7 +142,7 @@ class BaseSDK:
|
|
|
142
142
|
url = url_override
|
|
143
143
|
if url is None:
|
|
144
144
|
url = utils.generate_url(
|
|
145
|
-
self.
|
|
145
|
+
self._get_url(base_url, url_variables),
|
|
146
146
|
path,
|
|
147
147
|
request if request_has_path_params else None,
|
|
148
148
|
_globals if request_has_path_params else None,
|