plex-api-client 0.25.2__tar.gz → 0.26.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.
Files changed (219) hide show
  1. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/PKG-INFO +2 -2
  2. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/pyproject.toml +3 -3
  3. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/_version.py +3 -3
  4. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/library.py +2 -2
  5. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/log.py +2 -2
  6. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/createplaylist.py +7 -3
  7. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_actors_library.py +12 -3
  8. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_all_libraries.py +5 -2
  9. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_all_media_library.py +20 -7
  10. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_countries_library.py +12 -3
  11. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_genres_library.py +12 -3
  12. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_library_items.py +37 -17
  13. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_recently_added.py +12 -7
  14. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_recently_added_library.py +5 -3
  15. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_search_all_libraries.py +43 -15
  16. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_search_library.py +12 -3
  17. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_watch_list.py +7 -4
  18. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getplaylistcontents.py +12 -3
  19. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getplaylists.py +7 -5
  20. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/gettimeline.py +6 -3
  21. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/gettokendetails.py +20 -8
  22. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/gettopwatchedcontent.py +7 -3
  23. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getuserfriends.py +5 -2
  24. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/logline.py +6 -3
  25. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/post_users_sign_in_data.py +34 -11
  26. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/starttask.py +5 -3
  27. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/stoptask.py +5 -3
  28. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/playlists.py +4 -4
  29. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/sdkconfiguration.py +1 -1
  30. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/LICENSE.md +0 -0
  31. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/README-PYPI.md +0 -0
  32. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/py.typed +0 -0
  33. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/__init__.py +0 -0
  34. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/_hooks/__init__.py +0 -0
  35. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/_hooks/registration.py +0 -0
  36. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/_hooks/sdkhooks.py +0 -0
  37. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/_hooks/types.py +0 -0
  38. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/activities.py +0 -0
  39. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/authentication.py +0 -0
  40. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/basesdk.py +0 -0
  41. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/butler.py +0 -0
  42. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/httpclient.py +0 -0
  43. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/hubs.py +0 -0
  44. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/media.py +0 -0
  45. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/__init__.py +0 -0
  46. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/components/__init__.py +0 -0
  47. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/components/security.py +0 -0
  48. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/__init__.py +0 -0
  49. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/addplaylistcontents.py +0 -0
  50. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/applyupdates.py +0 -0
  51. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/cancelserveractivities.py +0 -0
  52. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/checkforupdates.py +0 -0
  53. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/clearplaylistcontents.py +0 -0
  54. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/createplaylist.py +0 -0
  55. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/deletelibrary.py +0 -0
  56. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/deleteplaylist.py +0 -0
  57. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/enablepapertrail.py +0 -0
  58. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_actors_library.py +0 -0
  59. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_all_libraries.py +0 -0
  60. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_all_media_library.py +0 -0
  61. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_banner_image.py +0 -0
  62. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_countries_library.py +0 -0
  63. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_genres_library.py +0 -0
  64. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_library_details.py +0 -0
  65. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_library_items.py +0 -0
  66. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_media_meta_data.py +0 -0
  67. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_media_providers.py +0 -0
  68. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_recently_added_library.py +0 -0
  69. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_refresh_library_metadata.py +0 -0
  70. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_search_all_libraries.py +0 -0
  71. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_search_library.py +0 -0
  72. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_server_identity.py +0 -0
  73. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_server_resources.py +0 -0
  74. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_thumb_image.py +0 -0
  75. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_users.py +0 -0
  76. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/get_watch_list.py +0 -0
  77. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getavailableclients.py +0 -0
  78. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getbandwidthstatistics.py +0 -0
  79. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getbutlertasks.py +0 -0
  80. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getcompanionsdata.py +0 -0
  81. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getdevices.py +0 -0
  82. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getfilehash.py +0 -0
  83. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getgeodata.py +0 -0
  84. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getglobalhubs.py +0 -0
  85. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/gethomedata.py +0 -0
  86. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getlibraryhubs.py +0 -0
  87. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getmetadatachildren.py +0 -0
  88. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getmyplexaccount.py +0 -0
  89. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getpin.py +0 -0
  90. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getplaylist.py +0 -0
  91. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getplaylistcontents.py +0 -0
  92. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getplaylists.py +0 -0
  93. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getresizedphoto.py +0 -0
  94. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getresourcesstatistics.py +0 -0
  95. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getsearchresults.py +0 -0
  96. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getserveractivities.py +0 -0
  97. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getservercapabilities.py +0 -0
  98. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getserverlist.py +0 -0
  99. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getserverpreferences.py +0 -0
  100. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getsessionhistory.py +0 -0
  101. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getsessions.py +0 -0
  102. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getsourceconnectioninformation.py +0 -0
  103. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getstatistics.py +0 -0
  104. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/gettimeline.py +0 -0
  105. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/gettokenbypinid.py +0 -0
  106. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/gettokendetails.py +0 -0
  107. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/gettopwatchedcontent.py +0 -0
  108. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/gettranscodesessions.py +0 -0
  109. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/gettransienttoken.py +0 -0
  110. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getupdatestatus.py +0 -0
  111. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/getuserfriends.py +0 -0
  112. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/logline.py +0 -0
  113. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/logmultiline.py +0 -0
  114. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/markplayed.py +0 -0
  115. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/markunplayed.py +0 -0
  116. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/performsearch.py +0 -0
  117. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/performvoicesearch.py +0 -0
  118. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/post_users_sign_in_data.py +0 -0
  119. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/sdkerror.py +0 -0
  120. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/startalltasks.py +0 -0
  121. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/starttask.py +0 -0
  122. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/startuniversaltranscode.py +0 -0
  123. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/stopalltasks.py +0 -0
  124. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/stoptask.py +0 -0
  125. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/stoptranscodesession.py +0 -0
  126. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/updateplaylist.py +0 -0
  127. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/updateplayprogress.py +0 -0
  128. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/errors/uploadplaylist.py +0 -0
  129. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/__init__.py +0 -0
  130. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/addplaylistcontents.py +0 -0
  131. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/applyupdates.py +0 -0
  132. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/cancelserveractivities.py +0 -0
  133. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/checkforupdates.py +0 -0
  134. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/clearplaylistcontents.py +0 -0
  135. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/deletelibrary.py +0 -0
  136. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/deleteplaylist.py +0 -0
  137. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/enablepapertrail.py +0 -0
  138. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_banner_image.py +0 -0
  139. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_library_details.py +0 -0
  140. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_media_arts.py +0 -0
  141. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_media_meta_data.py +0 -0
  142. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_media_posters.py +0 -0
  143. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_media_providers.py +0 -0
  144. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_refresh_library_metadata.py +0 -0
  145. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_server_identity.py +0 -0
  146. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_server_resources.py +0 -0
  147. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_thumb_image.py +0 -0
  148. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/get_users.py +0 -0
  149. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getavailableclients.py +0 -0
  150. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getbandwidthstatistics.py +0 -0
  151. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getbutlertasks.py +0 -0
  152. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getcompanionsdata.py +0 -0
  153. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getdevices.py +0 -0
  154. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getfilehash.py +0 -0
  155. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getgeodata.py +0 -0
  156. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getglobalhubs.py +0 -0
  157. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/gethomedata.py +0 -0
  158. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getlibraryhubs.py +0 -0
  159. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getmetadatachildren.py +0 -0
  160. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getmyplexaccount.py +0 -0
  161. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getpin.py +0 -0
  162. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getplaylist.py +0 -0
  163. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getresizedphoto.py +0 -0
  164. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getresourcesstatistics.py +0 -0
  165. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getsearchresults.py +0 -0
  166. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getserveractivities.py +0 -0
  167. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getservercapabilities.py +0 -0
  168. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getserverlist.py +0 -0
  169. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getserverpreferences.py +0 -0
  170. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getsessionhistory.py +0 -0
  171. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getsessions.py +0 -0
  172. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getsourceconnectioninformation.py +0 -0
  173. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getstatistics.py +0 -0
  174. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/gettokenbypinid.py +0 -0
  175. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/gettranscodesessions.py +0 -0
  176. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/gettransienttoken.py +0 -0
  177. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/getupdatestatus.py +0 -0
  178. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/logmultiline.py +0 -0
  179. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/markplayed.py +0 -0
  180. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/markunplayed.py +0 -0
  181. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/performsearch.py +0 -0
  182. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/performvoicesearch.py +0 -0
  183. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/post_media_arts.py +0 -0
  184. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/post_media_poster.py +0 -0
  185. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/startalltasks.py +0 -0
  186. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/startuniversaltranscode.py +0 -0
  187. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/stopalltasks.py +0 -0
  188. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/stoptranscodesession.py +0 -0
  189. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/updateplaylist.py +0 -0
  190. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/updateplayprogress.py +0 -0
  191. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/models/operations/uploadplaylist.py +0 -0
  192. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/plex.py +0 -0
  193. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/py.typed +0 -0
  194. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/sdk.py +0 -0
  195. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/search.py +0 -0
  196. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/server.py +0 -0
  197. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/sessions.py +0 -0
  198. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/statistics.py +0 -0
  199. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/types/__init__.py +0 -0
  200. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/types/basemodel.py +0 -0
  201. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/updater.py +0 -0
  202. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/users.py +0 -0
  203. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/__init__.py +0 -0
  204. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/annotations.py +0 -0
  205. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/enums.py +0 -0
  206. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/eventstreaming.py +0 -0
  207. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/forms.py +0 -0
  208. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/headers.py +0 -0
  209. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/logger.py +0 -0
  210. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/metadata.py +0 -0
  211. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/queryparams.py +0 -0
  212. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/requestbodies.py +0 -0
  213. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/retries.py +0 -0
  214. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/security.py +0 -0
  215. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/serializers.py +0 -0
  216. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/url.py +0 -0
  217. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/utils/values.py +0 -0
  218. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/video.py +0 -0
  219. {plex_api_client-0.25.2 → plex_api_client-0.26.0}/src/plex_api_client/watchlist.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: plex-api-client
3
- Version: 0.25.2
3
+ Version: 0.26.0
4
4
  Summary: Python Client SDK Generated by Speakeasy
5
5
  Author: Speakeasy
6
6
  Requires-Python: >=3.9
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3.12
12
12
  Classifier: Programming Language :: Python :: 3.13
13
13
  Requires-Dist: eval-type-backport (>=0.2.0)
14
14
  Requires-Dist: httpx (>=0.28.1)
15
- Requires-Dist: pydantic (>=2.10.3)
15
+ Requires-Dist: pydantic (>=2.11.2)
16
16
  Requires-Dist: python-dateutil (>=2.8.2)
17
17
  Requires-Dist: typing-inspection (>=0.4.0)
18
18
  Project-URL: Repository, https://github.com/LukeHagar/plexpy.git
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "plex-api-client"
3
- version = "0.25.2"
3
+ version = "0.26.0"
4
4
  description = "Python Client SDK Generated by Speakeasy"
5
5
  authors = [{ name = "Speakeasy" },]
6
6
  readme = "README-PYPI.md"
@@ -8,7 +8,7 @@ requires-python = ">=3.9"
8
8
  dependencies = [
9
9
  "eval-type-backport >=0.2.0",
10
10
  "httpx >=0.28.1",
11
- "pydantic >=2.10.3",
11
+ "pydantic >=2.11.2",
12
12
  "python-dateutil >=2.8.2",
13
13
  "typing-inspection >=0.4.0",
14
14
  ]
@@ -27,7 +27,7 @@ include = ["py.typed", "src/plex_api_client/py.typed"]
27
27
  in-project = true
28
28
 
29
29
  [tool.poetry.group.dev.dependencies]
30
- mypy = "==1.14.1"
30
+ mypy = "==1.15.0"
31
31
  pylint = "==3.2.3"
32
32
  types-python-dateutil = "^2.9.0.20240316"
33
33
 
@@ -3,10 +3,10 @@
3
3
  import importlib.metadata
4
4
 
5
5
  __title__: str = "plex-api-client"
6
- __version__: str = "0.25.2"
6
+ __version__: str = "0.26.0"
7
7
  __openapi_doc_version__: str = "0.0.3"
8
- __gen_version__: str = "2.570.4"
9
- __user_agent__: str = "speakeasy-sdk/python 0.25.2 2.570.4 0.0.3 plex-api-client"
8
+ __gen_version__: str = "2.585.2"
9
+ __user_agent__: str = "speakeasy-sdk/python 0.26.0 2.585.2 0.0.3 plex-api-client"
10
10
 
11
11
  try:
12
12
  if __package__ is not None:
@@ -746,7 +746,7 @@ class Library(BaseSDK):
746
746
 
747
747
 
748
748
  :param section_key: The unique key of the Plex library. Note: This is unique in the context of the Plex server.
749
- :param include_details: Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always.
749
+ :param include_details: Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always.
750
750
  :param retries: Override the default retry configuration for this method
751
751
  :param server_url: Override the default server URL for this method
752
752
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -901,7 +901,7 @@ class Library(BaseSDK):
901
901
 
902
902
 
903
903
  :param section_key: The unique key of the Plex library. Note: This is unique in the context of the Plex server.
904
- :param include_details: Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always.
904
+ :param include_details: Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always.
905
905
  :param retries: Override the default retry configuration for this method
906
906
  :param server_url: Override the default server URL for this method
907
907
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -27,7 +27,7 @@ class Log(BaseSDK):
27
27
  This endpoint will write a single-line log message, including a level and source to the main Plex Media Server log.
28
28
 
29
29
 
30
- :param level: An integer log level to write to the PMS log with. 0: Error 1: Warning 2: Info 3: Debug 4: Verbose
30
+ :param level: An integer log level to write to the PMS log with. 0: Error 1: Warning 2: Info 3: Debug 4: Verbose
31
31
  :param message: The text of the message to write to the log.
32
32
  :param source: a string indicating the source of the message.
33
33
  :param retries: Override the default retry configuration for this method
@@ -142,7 +142,7 @@ class Log(BaseSDK):
142
142
  This endpoint will write a single-line log message, including a level and source to the main Plex Media Server log.
143
143
 
144
144
 
145
- :param level: An integer log level to write to the PMS log with. 0: Error 1: Warning 2: Info 3: Debug 4: Verbose
145
+ :param level: An integer log level to write to the PMS log with. 0: Error 1: Warning 2: Info 3: Debug 4: Verbose
146
146
  :param message: The text of the message to write to the log.
147
147
  :param source: a string indicating the source of the message.
148
148
  :param retries: Override the default retry configuration for this method
@@ -3,14 +3,16 @@
3
3
  from __future__ import annotations
4
4
  from enum import Enum
5
5
  import httpx
6
+ from plex_api_client import utils
6
7
  from plex_api_client.types import BaseModel
7
- from plex_api_client.utils import FieldMetadata, QueryParamMetadata
8
+ from plex_api_client.utils import FieldMetadata, QueryParamMetadata, validate_open_enum
8
9
  import pydantic
10
+ from pydantic.functional_validators import PlainValidator
9
11
  from typing import List, Optional
10
12
  from typing_extensions import Annotated, NotRequired, TypedDict
11
13
 
12
14
 
13
- class CreatePlaylistQueryParamType(str, Enum):
15
+ class CreatePlaylistQueryParamType(str, Enum, metaclass=utils.OpenEnumMeta):
14
16
  r"""type of playlist to create"""
15
17
 
16
18
  AUDIO = "audio"
@@ -45,7 +47,9 @@ class CreatePlaylistRequest(BaseModel):
45
47
  r"""name of the playlist"""
46
48
 
47
49
  type: Annotated[
48
- CreatePlaylistQueryParamType,
50
+ Annotated[
51
+ CreatePlaylistQueryParamType, PlainValidator(validate_open_enum(False))
52
+ ],
49
53
  FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
50
54
  ]
51
55
  r"""type of playlist to create"""
@@ -3,14 +3,21 @@
3
3
  from __future__ import annotations
4
4
  from enum import Enum
5
5
  import httpx
6
+ from plex_api_client import utils
6
7
  from plex_api_client.types import BaseModel
7
- from plex_api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
8
+ from plex_api_client.utils import (
9
+ FieldMetadata,
10
+ PathParamMetadata,
11
+ QueryParamMetadata,
12
+ validate_open_enum,
13
+ )
8
14
  import pydantic
15
+ from pydantic.functional_validators import PlainValidator
9
16
  from typing import List, Optional
10
17
  from typing_extensions import Annotated, NotRequired, TypedDict
11
18
 
12
19
 
13
- class GetActorsLibraryQueryParamType(int, Enum):
20
+ class GetActorsLibraryQueryParamType(int, Enum, metaclass=utils.OpenEnumMeta):
14
21
  r"""The type of media to retrieve or filter by.
15
22
  1 = movie
16
23
  2 = show
@@ -58,7 +65,9 @@ class GetActorsLibraryRequest(BaseModel):
58
65
  """
59
66
 
60
67
  type: Annotated[
61
- GetActorsLibraryQueryParamType,
68
+ Annotated[
69
+ GetActorsLibraryQueryParamType, PlainValidator(validate_open_enum(True))
70
+ ],
62
71
  FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
63
72
  ]
64
73
  r"""The type of media to retrieve or filter by.
@@ -3,13 +3,16 @@
3
3
  from __future__ import annotations
4
4
  from enum import Enum
5
5
  import httpx
6
+ from plex_api_client import utils
6
7
  from plex_api_client.types import BaseModel
8
+ from plex_api_client.utils import validate_open_enum
7
9
  import pydantic
10
+ from pydantic.functional_validators import PlainValidator
8
11
  from typing import List, Optional
9
12
  from typing_extensions import Annotated, NotRequired, TypedDict
10
13
 
11
14
 
12
- class GetAllLibrariesType(str, Enum):
15
+ class GetAllLibrariesType(str, Enum, metaclass=utils.OpenEnumMeta):
13
16
  r"""The library type"""
14
17
 
15
18
  MOVIE = "movie"
@@ -108,7 +111,7 @@ class GetAllLibrariesDirectory(BaseModel):
108
111
  key: str
109
112
  r"""The library key representing the unique identifier"""
110
113
 
111
- type: GetAllLibrariesType
114
+ type: Annotated[GetAllLibrariesType, PlainValidator(validate_open_enum(False))]
112
115
 
113
116
  title: str
114
117
  r"""The title of the library"""
@@ -4,14 +4,21 @@ from __future__ import annotations
4
4
  from datetime import date
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 BaseModel
8
- from plex_api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
9
+ from plex_api_client.utils import (
10
+ FieldMetadata,
11
+ PathParamMetadata,
12
+ QueryParamMetadata,
13
+ validate_open_enum,
14
+ )
9
15
  import pydantic
16
+ from pydantic.functional_validators import PlainValidator
10
17
  from typing import List, Optional, Union
11
18
  from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
12
19
 
13
20
 
14
- class GetAllMediaLibraryQueryParamType(int, Enum):
21
+ class GetAllMediaLibraryQueryParamType(int, Enum, metaclass=utils.OpenEnumMeta):
15
22
  r"""The type of media to retrieve or filter by.
16
23
  1 = movie
17
24
  2 = show
@@ -111,7 +118,9 @@ class GetAllMediaLibraryRequest(BaseModel):
111
118
  """
112
119
 
113
120
  type: Annotated[
114
- GetAllMediaLibraryQueryParamType,
121
+ Annotated[
122
+ GetAllMediaLibraryQueryParamType, PlainValidator(validate_open_enum(True))
123
+ ],
115
124
  FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
116
125
  ]
117
126
  r"""The type of media to retrieve or filter by.
@@ -363,7 +372,7 @@ class GetAllMediaLibraryMeta(BaseModel):
363
372
  ] = None
364
373
 
365
374
 
366
- class GetAllMediaLibraryLibraryType(str, Enum):
375
+ class GetAllMediaLibraryLibraryType(str, Enum, metaclass=utils.OpenEnumMeta):
367
376
  r"""The type of media content"""
368
377
 
369
378
  MOVIE = "movie"
@@ -374,7 +383,7 @@ class GetAllMediaLibraryLibraryType(str, Enum):
374
383
  ALBUM = "album"
375
384
 
376
385
 
377
- class GetAllMediaLibraryLibraryResponseType(str, Enum):
386
+ class GetAllMediaLibraryLibraryResponseType(str, Enum, metaclass=utils.OpenEnumMeta):
378
387
  COVER_POSTER = "coverPoster"
379
388
  BACKGROUND = "background"
380
389
  SNAPSHOT = "snapshot"
@@ -390,7 +399,9 @@ class GetAllMediaLibraryImageTypedDict(TypedDict):
390
399
  class GetAllMediaLibraryImage(BaseModel):
391
400
  alt: str
392
401
 
393
- type: GetAllMediaLibraryLibraryResponseType
402
+ type: Annotated[
403
+ GetAllMediaLibraryLibraryResponseType, PlainValidator(validate_open_enum(False))
404
+ ]
394
405
 
395
406
  url: str
396
407
 
@@ -1143,7 +1154,9 @@ class GetAllMediaLibraryMetadata(BaseModel):
1143
1154
  slug: str
1144
1155
  r"""A URL‐friendly version of the media title."""
1145
1156
 
1146
- type: GetAllMediaLibraryLibraryType
1157
+ type: Annotated[
1158
+ GetAllMediaLibraryLibraryType, PlainValidator(validate_open_enum(False))
1159
+ ]
1147
1160
 
1148
1161
  title: str
1149
1162
  r"""The title of the media item."""
@@ -3,14 +3,21 @@
3
3
  from __future__ import annotations
4
4
  from enum import Enum
5
5
  import httpx
6
+ from plex_api_client import utils
6
7
  from plex_api_client.types import BaseModel
7
- from plex_api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
8
+ from plex_api_client.utils import (
9
+ FieldMetadata,
10
+ PathParamMetadata,
11
+ QueryParamMetadata,
12
+ validate_open_enum,
13
+ )
8
14
  import pydantic
15
+ from pydantic.functional_validators import PlainValidator
9
16
  from typing import List, Optional
10
17
  from typing_extensions import Annotated, NotRequired, TypedDict
11
18
 
12
19
 
13
- class GetCountriesLibraryQueryParamType(int, Enum):
20
+ class GetCountriesLibraryQueryParamType(int, Enum, metaclass=utils.OpenEnumMeta):
14
21
  r"""The type of media to retrieve or filter by.
15
22
  1 = movie
16
23
  2 = show
@@ -58,7 +65,9 @@ class GetCountriesLibraryRequest(BaseModel):
58
65
  """
59
66
 
60
67
  type: Annotated[
61
- GetCountriesLibraryQueryParamType,
68
+ Annotated[
69
+ GetCountriesLibraryQueryParamType, PlainValidator(validate_open_enum(True))
70
+ ],
62
71
  FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
63
72
  ]
64
73
  r"""The type of media to retrieve or filter by.
@@ -3,14 +3,21 @@
3
3
  from __future__ import annotations
4
4
  from enum import Enum
5
5
  import httpx
6
+ from plex_api_client import utils
6
7
  from plex_api_client.types import BaseModel
7
- from plex_api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
8
+ from plex_api_client.utils import (
9
+ FieldMetadata,
10
+ PathParamMetadata,
11
+ QueryParamMetadata,
12
+ validate_open_enum,
13
+ )
8
14
  import pydantic
15
+ from pydantic.functional_validators import PlainValidator
9
16
  from typing import List, Optional
10
17
  from typing_extensions import Annotated, NotRequired, TypedDict
11
18
 
12
19
 
13
- class GetGenresLibraryQueryParamType(int, Enum):
20
+ class GetGenresLibraryQueryParamType(int, Enum, metaclass=utils.OpenEnumMeta):
14
21
  r"""The type of media to retrieve or filter by.
15
22
  1 = movie
16
23
  2 = show
@@ -58,7 +65,9 @@ class GetGenresLibraryRequest(BaseModel):
58
65
  """
59
66
 
60
67
  type: Annotated[
61
- GetGenresLibraryQueryParamType,
68
+ Annotated[
69
+ GetGenresLibraryQueryParamType, PlainValidator(validate_open_enum(True))
70
+ ],
62
71
  FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
63
72
  ]
64
73
  r"""The type of media to retrieve or filter by.
@@ -4,14 +4,21 @@ from __future__ import annotations
4
4
  from datetime import date
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 BaseModel
8
- from plex_api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
9
+ from plex_api_client.utils import (
10
+ FieldMetadata,
11
+ PathParamMetadata,
12
+ QueryParamMetadata,
13
+ validate_open_enum,
14
+ )
9
15
  import pydantic
16
+ from pydantic.functional_validators import PlainValidator
10
17
  from typing import List, Optional
11
18
  from typing_extensions import Annotated, NotRequired, TypedDict
12
19
 
13
20
 
14
- class Tag(str, Enum):
21
+ class Tag(str, Enum, metaclass=utils.OpenEnumMeta):
15
22
  r"""A key representing a specific tag within the section."""
16
23
 
17
24
  UNWATCHED = "unwatched"
@@ -39,7 +46,7 @@ class IncludeGuids(int, Enum):
39
46
  ENABLE = 1
40
47
 
41
48
 
42
- class GetLibraryItemsQueryParamType(int, Enum):
49
+ class GetLibraryItemsQueryParamType(int, Enum, metaclass=utils.OpenEnumMeta):
43
50
  r"""The type of media to retrieve or filter by.
44
51
  1 = movie
45
52
  2 = show
@@ -106,12 +113,15 @@ class GetLibraryItemsRequestTypedDict(TypedDict):
106
113
 
107
114
  class GetLibraryItemsRequest(BaseModel):
108
115
  tag: Annotated[
109
- Tag, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
116
+ Annotated[Tag, PlainValidator(validate_open_enum(False))],
117
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
110
118
  ]
111
119
  r"""A key representing a specific tag within the section."""
112
120
 
113
121
  type: Annotated[
114
- GetLibraryItemsQueryParamType,
122
+ Annotated[
123
+ GetLibraryItemsQueryParamType, PlainValidator(validate_open_enum(True))
124
+ ],
115
125
  FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
116
126
  ]
117
127
  r"""The type of media to retrieve or filter by.
@@ -334,7 +344,7 @@ class GetLibraryItemsFieldType(BaseModel):
334
344
  operator: Annotated[List[GetLibraryItemsOperator], pydantic.Field(alias="Operator")]
335
345
 
336
346
 
337
- class GetLibraryItemsLibraryType(str, Enum):
347
+ class GetLibraryItemsLibraryType(str, Enum, metaclass=utils.OpenEnumMeta):
338
348
  r"""The type of media content"""
339
349
 
340
350
  MOVIE = "movie"
@@ -345,7 +355,7 @@ class GetLibraryItemsLibraryType(str, Enum):
345
355
  ALBUM = "album"
346
356
 
347
357
 
348
- class FlattenSeasons(str, Enum):
358
+ class FlattenSeasons(str, Enum, metaclass=utils.OpenEnumMeta):
349
359
  r"""Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show)."""
350
360
 
351
361
  LIBRARY_DEFAULT = "-1"
@@ -353,7 +363,7 @@ class FlattenSeasons(str, Enum):
353
363
  SHOW = "1"
354
364
 
355
365
 
356
- class EpisodeSort(str, Enum):
366
+ class EpisodeSort(str, Enum, metaclass=utils.OpenEnumMeta):
357
367
  r"""Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first)."""
358
368
 
359
369
  LIBRARY_DEFAULT = "-1"
@@ -361,14 +371,14 @@ class EpisodeSort(str, Enum):
361
371
  NEWEST_FIRST = "1"
362
372
 
363
373
 
364
- class EnableCreditsMarkerGeneration(str, Enum):
374
+ class EnableCreditsMarkerGeneration(str, Enum, metaclass=utils.OpenEnumMeta):
365
375
  r"""Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled)."""
366
376
 
367
377
  LIBRARY_DEFAULT = "-1"
368
378
  DISABLED = "0"
369
379
 
370
380
 
371
- class ShowOrdering(str, Enum):
381
+ class ShowOrdering(str, Enum, metaclass=utils.OpenEnumMeta):
372
382
  r"""Setting that indicates the episode ordering for the show.
373
383
  None = Library default,
374
384
  tmdbAiring = The Movie Database (Aired),
@@ -868,7 +878,7 @@ class MetaDataRating(BaseModel):
868
878
  r"""The type of rating (e.g., audience, critic)."""
869
879
 
870
880
 
871
- class GetLibraryItemsLibraryResponse200Type(str, Enum):
881
+ class GetLibraryItemsLibraryResponse200Type(str, Enum, metaclass=utils.OpenEnumMeta):
872
882
  COVER_POSTER = "coverPoster"
873
883
  BACKGROUND = "background"
874
884
  SNAPSHOT = "snapshot"
@@ -884,7 +894,9 @@ class GetLibraryItemsImageTypedDict(TypedDict):
884
894
  class GetLibraryItemsImage(BaseModel):
885
895
  alt: str
886
896
 
887
- type: GetLibraryItemsLibraryResponse200Type
897
+ type: Annotated[
898
+ GetLibraryItemsLibraryResponse200Type, PlainValidator(validate_open_enum(False))
899
+ ]
888
900
 
889
901
  url: str
890
902
 
@@ -1008,7 +1020,9 @@ class GetLibraryItemsMetadata(BaseModel):
1008
1020
 
1009
1021
  guid: str
1010
1022
 
1011
- type: GetLibraryItemsLibraryType
1023
+ type: Annotated[
1024
+ GetLibraryItemsLibraryType, PlainValidator(validate_open_enum(False))
1025
+ ]
1012
1026
  r"""The type of media content
1013
1027
 
1014
1028
  """
@@ -1057,23 +1071,29 @@ class GetLibraryItemsMetadata(BaseModel):
1057
1071
  tagline: Optional[str] = None
1058
1072
 
1059
1073
  flatten_seasons: Annotated[
1060
- Optional[FlattenSeasons], pydantic.Field(alias="flattenSeasons")
1074
+ Annotated[Optional[FlattenSeasons], PlainValidator(validate_open_enum(False))],
1075
+ pydantic.Field(alias="flattenSeasons"),
1061
1076
  ] = None
1062
1077
  r"""Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show)."""
1063
1078
 
1064
1079
  episode_sort: Annotated[
1065
- Optional[EpisodeSort], pydantic.Field(alias="episodeSort")
1080
+ Annotated[Optional[EpisodeSort], PlainValidator(validate_open_enum(False))],
1081
+ pydantic.Field(alias="episodeSort"),
1066
1082
  ] = None
1067
1083
  r"""Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first)."""
1068
1084
 
1069
1085
  enable_credits_marker_generation: Annotated[
1070
- Optional[EnableCreditsMarkerGeneration],
1086
+ Annotated[
1087
+ Optional[EnableCreditsMarkerGeneration],
1088
+ PlainValidator(validate_open_enum(False)),
1089
+ ],
1071
1090
  pydantic.Field(alias="enableCreditsMarkerGeneration"),
1072
1091
  ] = None
1073
1092
  r"""Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled)."""
1074
1093
 
1075
1094
  show_ordering: Annotated[
1076
- Optional[ShowOrdering], pydantic.Field(alias="showOrdering")
1095
+ Annotated[Optional[ShowOrdering], PlainValidator(validate_open_enum(False))],
1096
+ pydantic.Field(alias="showOrdering"),
1077
1097
  ] = None
1078
1098
  r"""Setting that indicates the episode ordering for the show.
1079
1099
  None = Library default,
@@ -4,14 +4,16 @@ from __future__ import annotations
4
4
  from datetime import date
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 BaseModel
8
- from plex_api_client.utils import FieldMetadata, QueryParamMetadata
9
+ from plex_api_client.utils import FieldMetadata, QueryParamMetadata, validate_open_enum
9
10
  import pydantic
11
+ from pydantic.functional_validators import PlainValidator
10
12
  from typing import List, Optional, Union
11
13
  from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
12
14
 
13
15
 
14
- class Type(int, Enum):
16
+ class Type(int, Enum, metaclass=utils.OpenEnumMeta):
15
17
  r"""The type of media to retrieve or filter by.
16
18
  1 = movie
17
19
  2 = show
@@ -80,7 +82,8 @@ class GetRecentlyAddedRequest(BaseModel):
80
82
  r"""The content directory ID."""
81
83
 
82
84
  type: Annotated[
83
- Type, FieldMetadata(query=QueryParamMetadata(style="form", explode=True))
85
+ Annotated[Type, PlainValidator(validate_open_enum(True))],
86
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
84
87
  ]
85
88
  r"""The type of media to retrieve or filter by.
86
89
  1 = movie
@@ -318,7 +321,7 @@ class Meta(BaseModel):
318
321
  ] = None
319
322
 
320
323
 
321
- class GetRecentlyAddedHubsType(str, Enum):
324
+ class GetRecentlyAddedHubsType(str, Enum, metaclass=utils.OpenEnumMeta):
322
325
  r"""The type of media content"""
323
326
 
324
327
  MOVIE = "movie"
@@ -329,7 +332,7 @@ class GetRecentlyAddedHubsType(str, Enum):
329
332
  ALBUM = "album"
330
333
 
331
334
 
332
- class GetRecentlyAddedHubsResponseType(str, Enum):
335
+ class GetRecentlyAddedHubsResponseType(str, Enum, metaclass=utils.OpenEnumMeta):
333
336
  COVER_POSTER = "coverPoster"
334
337
  BACKGROUND = "background"
335
338
  SNAPSHOT = "snapshot"
@@ -345,7 +348,9 @@ class GetRecentlyAddedImageTypedDict(TypedDict):
345
348
  class GetRecentlyAddedImage(BaseModel):
346
349
  alt: str
347
350
 
348
- type: GetRecentlyAddedHubsResponseType
351
+ type: Annotated[
352
+ GetRecentlyAddedHubsResponseType, PlainValidator(validate_open_enum(False))
353
+ ]
349
354
 
350
355
  url: str
351
356
 
@@ -1303,7 +1308,7 @@ class GetRecentlyAddedMetadata(BaseModel):
1303
1308
  title: str
1304
1309
  r"""The title of the media item."""
1305
1310
 
1306
- type: GetRecentlyAddedHubsType
1311
+ type: Annotated[GetRecentlyAddedHubsType, PlainValidator(validate_open_enum(False))]
1307
1312
 
1308
1313
  audience_rating_image: Annotated[
1309
1314
  Optional[str], pydantic.Field(alias="audienceRatingImage")
@@ -4,14 +4,16 @@ 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 BaseModel
8
- from plex_api_client.utils import FieldMetadata, QueryParamMetadata
9
+ from plex_api_client.utils import FieldMetadata, QueryParamMetadata, validate_open_enum
9
10
  import pydantic
11
+ from pydantic.functional_validators import PlainValidator
10
12
  from typing import List, Optional
11
13
  from typing_extensions import Annotated, NotRequired, TypedDict
12
14
 
13
15
 
14
- class QueryParamType(int, Enum):
16
+ class QueryParamType(int, Enum, metaclass=utils.OpenEnumMeta):
15
17
  r"""The type of media to retrieve or filter by.
16
18
  1 = movie
17
19
  2 = show
@@ -71,7 +73,7 @@ class GetRecentlyAddedLibraryRequestTypedDict(TypedDict):
71
73
 
72
74
  class GetRecentlyAddedLibraryRequest(BaseModel):
73
75
  type: Annotated[
74
- QueryParamType,
76
+ Annotated[QueryParamType, PlainValidator(validate_open_enum(True))],
75
77
  FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
76
78
  ]
77
79
  r"""The type of media to retrieve or filter by.