ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.656.1

This commit is contained in:
speakeasybot
2025-11-13 00:03:21 +00:00
parent 7e592152f3
commit 69fc422fd0
21 changed files with 137 additions and 136 deletions

View File

@@ -1,12 +1,12 @@
lockVersion: 2.0.0
id: 3eeea668-4ef4-464e-a888-bdfa023bedf5
management:
docChecksum: 46ec1ce493542eb1a574ee88fc8b0895
docChecksum: e95c0e17d3e268dcd18d26ac8d0bfc98
docVersion: 1.1.1
speakeasyVersion: 1.636.3
generationVersion: 2.723.11
releaseVersion: 0.31.1
configChecksum: d4b60d697d9adda801e645448c8c8682
speakeasyVersion: 1.656.1
generationVersion: 2.753.1
releaseVersion: 0.32.0
configChecksum: d3526d999dca0a302e02f1fda0407994
repoURL: https://github.com/LukeHagar/plexpy.git
repoSubDirectory: .
installationURL: https://github.com/LukeHagar/plexpy.git
@@ -17,7 +17,7 @@ features:
additionalDependencies: 1.0.0
additionalProperties: 1.0.1
constsAndDefaults: 1.0.5
core: 5.22.1
core: 5.23.6
deepObjectParams: 0.1.0
defaultEnabledRetries: 0.2.0
downloadStreams: 1.0.1
@@ -27,7 +27,7 @@ features:
globalSecurity: 3.0.4
globalSecurityCallbacks: 1.0.0
globalSecurityFlattening: 1.0.0
globalServerURLs: 3.1.1
globalServerURLs: 3.2.0
globals: 3.0.0
nameOverrides: 3.0.1
responseFormat: 1.0.1
@@ -73,6 +73,9 @@ generatedFiles:
- docs/models/components/items.md
- docs/models/components/librarysection.md
- docs/models/components/librarysectionlocation.md
- docs/models/components/librarysections.md
- docs/models/components/librarysectionsdirectory.md
- docs/models/components/librarysectionsmediacontainer.md
- docs/models/components/lineup.md
- docs/models/components/lineuptype.md
- docs/models/components/location.md
@@ -124,9 +127,6 @@ generatedFiles:
- docs/models/components/postresponses200type.md
- docs/models/components/protocol.md
- docs/models/components/recommendationsvisibility.md
- docs/models/components/requesthandlerslashgetresponses200.md
- docs/models/components/requesthandlerslashgetresponses200directory.md
- docs/models/components/requesthandlerslashgetresponses200mediacontainer.md
- docs/models/components/security.md
- docs/models/components/session.md
- docs/models/components/sessionlocation.md
@@ -1125,6 +1125,7 @@ generatedFiles:
- src/plex_api_client/models/components/image.py
- src/plex_api_client/models/components/items.py
- src/plex_api_client/models/components/librarysection.py
- src/plex_api_client/models/components/librarysections.py
- src/plex_api_client/models/components/lineup.py
- src/plex_api_client/models/components/location.py
- src/plex_api_client/models/components/media.py
@@ -1148,7 +1149,6 @@ generatedFiles:
- src/plex_api_client/models/components/player.py
- src/plex_api_client/models/components/post_responses_200.py
- src/plex_api_client/models/components/protocol.py
- src/plex_api_client/models/components/requesthandler_slash_get_responses_200.py
- src/plex_api_client/models/components/security.py
- src/plex_api_client/models/components/session.py
- src/plex_api_client/models/components/setting.py

View File

@@ -17,12 +17,15 @@ generation:
oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false
hoistGlobalSecurity: true
schemas:
allOfMergeStrategy: shallowMerge
requestBodyFieldName: ""
tests:
generateTests: true
generateNewTests: false
skipResponseBodyAssertions: false
python:
version: 0.31.1
version: 0.32.0
additionalDependencies:
dev: {}
main: {}

View File

@@ -1,4 +1,4 @@
speakeasyVersion: 1.636.3
speakeasyVersion: 1.656.1
sources:
my-source:
sourceNamespace: my-source
@@ -8,20 +8,20 @@ sources:
- latest
plexapi:
sourceNamespace: plexapi
sourceRevisionDigest: sha256:0e9f7ca03e6a970d7b77654ab41d0a1605f0105871db2630a7afc85d4362b624
sourceBlobDigest: sha256:c0a6079f21e9d8cf8b3a205d2da333b78b2cb7e0db9dd895a41c68c2580e2d64
sourceRevisionDigest: sha256:56fc783b16af019db4eb0fe52df504315e8e7c7ae41e319a61bba8823f19df4b
sourceBlobDigest: sha256:b62613477fd824bb42cf0bf5d0f9980448259c9c7456e03ca6a10eef39a3994f
tags:
- latest
- speakeasy-sdk-regen-1760313692
- speakeasy-sdk-regen-1762992090
- 1.1.1
targets:
plexpy:
source: plexapi
sourceNamespace: plexapi
sourceRevisionDigest: sha256:0e9f7ca03e6a970d7b77654ab41d0a1605f0105871db2630a7afc85d4362b624
sourceBlobDigest: sha256:c0a6079f21e9d8cf8b3a205d2da333b78b2cb7e0db9dd895a41c68c2580e2d64
sourceRevisionDigest: sha256:56fc783b16af019db4eb0fe52df504315e8e7c7ae41e319a61bba8823f19df4b
sourceBlobDigest: sha256:b62613477fd824bb42cf0bf5d0f9980448259c9c7456e03ca6a10eef39a3994f
codeSamplesNamespace: code-samples-python-plexpy
codeSamplesRevisionDigest: sha256:ef94fd945c9ba9164051956a6495266df49f6565208eb2cdb415b0a47cb4368e
codeSamplesRevisionDigest: sha256:aa577c7f90db2dde8d7204e9cb62fd39b320a5e3b9e21e685ef19f7f6468ef49
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest

View File

@@ -756,18 +756,18 @@ You can override the default server globally by passing a server index to the `s
| --- | ---------------------------------------------------------- | -------------------------------------------- | ----------- |
| 0 | `https://{IP-description}.{identifier}.plex.direct:{port}` | `identifier`<br/>`IP-description`<br/>`port` | |
| 1 | `{protocol}://{host}:{port}` | `protocol`<br/>`host`<br/>`port` | |
| 2 | `https://{full_server_url}` | `server_url` | |
| 2 | `https://{full_server_url}` | `full_server_url` | |
If the selected server has variables, you may override its default values through the additional parameters made available in the SDK constructor:
| Variable | Parameter | Default | Description |
| ---------------- | ------------------------ | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `identifier` | `identifier: str` | `"0123456789abcdef0123456789abcdef"` | The unique identifier of this particular PMS |
| `IP-description` | `ip_description: str` | `"1-2-3-4"` | A `-` separated string of the IPv4 or IPv6 address components |
| `port` | `port: str` | `"32400"` | The Port number configured on the PMS. Typically (`32400`). <br/>If using a reverse proxy, this would be the port number configured on the proxy.<br/> |
| `protocol` | `protocol: str` | `"http"` | The network protocol to use. Typically (`http` or `https`) |
| `host` | `host: str` | `"localhost"` | The Host of the PMS.<br/>If using on a local network, this is the internal IP address of the server hosting the PMS.<br/>If using on an external network, this is the external IP address for your network, and requires port forwarding.<br/>If using a reverse proxy, this would be the external DNS domain for your network, and requires the proxy handle port forwarding. <br/> |
| `server_url` | `server_url_global: str` | `"http://localhost:32400"` | The full manual URL to access the PMS |
| Variable | Parameter | Default | Description |
| ----------------- | ---------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `identifier` | `identifier: str` | `"0123456789abcdef0123456789abcdef"` | The unique identifier of this particular PMS |
| `IP-description` | `ip_description: str` | `"1-2-3-4"` | A `-` separated string of the IPv4 or IPv6 address components |
| `port` | `port: str` | `"32400"` | The Port number configured on the PMS. Typically (`32400`). <br/>If using a reverse proxy, this would be the port number configured on the proxy.<br/> |
| `protocol` | `protocol: str` | `"http"` | The network protocol to use. Typically (`http` or `https`) |
| `host` | `host: str` | `"localhost"` | The Host of the PMS.<br/>If using on a local network, this is the internal IP address of the server hosting the PMS.<br/>If using on an external network, this is the external IP address for your network, and requires port forwarding.<br/>If using a reverse proxy, this would be the external DNS domain for your network, and requires the proxy handle port forwarding. <br/> |
| `full_server_url` | `full_server_url: str` | `"http://localhost:32400"` | The full manual URL to access the PMS |
#### Example
@@ -777,10 +777,10 @@ from plex_api_client.models import components
with PlexAPI(
server_idx=1,
protocol="<value>"
host="electric-excess.name"
port="36393"
server_idx=0,
identifier="0123456789abcdef0123456789abcdef",
ip_description="1-2-3-4",
port="32400",
accepts=components.Accepts.APPLICATION_XML,
client_identifier="abc123",
product="Plex for Roku",
@@ -813,7 +813,7 @@ from plex_api_client.models import components
with PlexAPI(
server_url="https://{full_server_url}",
server_url="https://http://localhost:32400",
accepts=components.Accepts.APPLICATION_XML,
client_identifier="abc123",
product="Plex for Roku",

View File

@@ -1119,3 +1119,13 @@ Based on:
- [python v0.31.1] .
### Releases
- [PyPI v0.31.1] https://pypi.org/project/plex-api-client/0.31.1 - .
## 2025-11-13 00:01:13
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.656.1 (2.753.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v0.32.0] .
### Releases
- [PyPI v0.32.0] https://pypi.org/project/plex-api-client/0.32.0 - .

View File

@@ -3311,10 +3311,10 @@ actions:
res = plex_api.library.stop_all_refreshes()
assert res.request_handler_slash_get_responses_200 is not None
assert res.library_sections is not None
# Handle response
print(res.request_handler_slash_get_responses_200)
print(res.library_sections)
- target: $["paths"]["/library/sections/prefs"]["get"]
update:
x-codeSamples:
@@ -3344,10 +3344,10 @@ actions:
"type": 460221,
})
assert res.request_handler_slash_get_responses_200 is not None
assert res.library_sections is not None
# Handle response
print(res.request_handler_slash_get_responses_200)
print(res.library_sections)
- target: $["paths"]["/library/sections/refresh"]["post"]
update:
x-codeSamples:

View File

@@ -0,0 +1,10 @@
# LibrarySections
OK
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `media_container` | [Optional[components.LibrarySectionsMediaContainer]](../../models/components/librarysectionsmediacontainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -1,4 +1,4 @@
# RequestHandlerSlashGetResponses200Directory
# LibrarySectionsDirectory
## Fields

View File

@@ -1,4 +1,4 @@
# RequestHandlerSlashGetResponses200MediaContainer
# LibrarySectionsMediaContainer
`MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable.
Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination)
@@ -62,4 +62,4 @@ The container often "hoists" common attributes from its children. For example, i
| `updater` | *Optional[bool]* | :heavy_minus_sign: | N/A | |
| `version` | *Optional[str]* | :heavy_minus_sign: | N/A | |
| `voice_search` | *Optional[bool]* | :heavy_minus_sign: | N/A | |
| `directory` | List[[components.RequestHandlerSlashGetResponses200Directory](../../models/components/requesthandlerslashgetresponses200directory.md)] | :heavy_minus_sign: | N/A | |
| `directory` | List[[components.LibrarySectionsDirectory](../../models/components/librarysectionsdirectory.md)] | :heavy_minus_sign: | N/A | |

View File

@@ -1,10 +0,0 @@
# RequestHandlerSlashGetResponses200
OK
## Fields
| Field | Type | Required | Description |
| ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `media_container` | [Optional[components.RequestHandlerSlashGetResponses200MediaContainer]](../../models/components/requesthandlerslashgetresponses200mediacontainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -3,9 +3,9 @@
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `content_type` | *str* | :heavy_check_mark: | HTTP response content type for this operation |
| `status_code` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `raw_response` | [httpx.Response](https://www.python-httpx.org/api/#response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `request_handler_slash_get_responses_200` | [Optional[components.RequestHandlerSlashGetResponses200]](../../models/components/requesthandlerslashgetresponses200.md) | :heavy_minus_sign: | OK |
| Field | Type | Required | Description |
| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| `content_type` | *str* | :heavy_check_mark: | HTTP response content type for this operation |
| `status_code` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `raw_response` | [httpx.Response](https://www.python-httpx.org/api/#response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `library_sections` | [Optional[components.LibrarySections]](../../models/components/librarysections.md) | :heavy_minus_sign: | OK |

View File

@@ -3,9 +3,9 @@
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `content_type` | *str* | :heavy_check_mark: | HTTP response content type for this operation |
| `status_code` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `raw_response` | [httpx.Response](https://www.python-httpx.org/api/#response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `request_handler_slash_get_responses_200` | [Optional[components.RequestHandlerSlashGetResponses200]](../../models/components/requesthandlerslashgetresponses200.md) | :heavy_minus_sign: | OK |
| Field | Type | Required | Description |
| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| `content_type` | *str* | :heavy_check_mark: | HTTP response content type for this operation |
| `status_code` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `raw_response` | [httpx.Response](https://www.python-httpx.org/api/#response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `library_sections` | [Optional[components.LibrarySections]](../../models/components/librarysections.md) | :heavy_minus_sign: | OK |

View File

@@ -579,10 +579,10 @@ with PlexAPI(
res = plex_api.library.stop_all_refreshes()
assert res.request_handler_slash_get_responses_200 is not None
assert res.library_sections is not None
# Handle response
print(res.request_handler_slash_get_responses_200)
print(res.library_sections)
```
@@ -633,10 +633,10 @@ with PlexAPI(
"type": 460221,
})
assert res.request_handler_slash_get_responses_200 is not None
assert res.library_sections is not None
# Handle response
print(res.request_handler_slash_get_responses_200)
print(res.library_sections)
```
@@ -2819,8 +2819,8 @@ with PlexAPI(
## autocomplete
The field to autocomplete on is specified by the {field}.query parameter. For example `genre.query` or `title.query`.
Returns a set of items from the filtered items whose {field} starts with {field}.query. In the results, a {field}.queryRange will be present to express the range of the match
The field to autocomplete on is specified by the `{field}.query` parameter. For example `genre.query` or `title.query`.
Returns a set of items from the filtered items whose `{field}` starts with `{field}.query`. In the results, a `{field}.queryRange` will be present to express the range of the match
### Example Usage

View File

@@ -1,7 +1,7 @@
[project]
name = "plex-api-client"
version = "0.31.1"
version = "0.32.0"
description = "Python Client SDK Generated by Speakeasy"
authors = [{ name = "Speakeasy" },]
readme = "README-PYPI.md"

View File

@@ -3,10 +3,10 @@
import importlib.metadata
__title__: str = "plex-api-client"
__version__: str = "0.31.1"
__version__: str = "0.32.0"
__openapi_doc_version__: str = "1.1.1"
__gen_version__: str = "2.723.11"
__user_agent__: str = "speakeasy-sdk/python 0.31.1 2.723.11 1.1.1 plex-api-client"
__gen_version__: str = "2.753.1"
__user_agent__: str = "speakeasy-sdk/python 0.32.0 2.753.1 1.1.1 plex-api-client"
try:
if __package__ is not None:

View File

@@ -1828,8 +1828,8 @@ class Library(BaseSDK):
if utils.match_response(http_res, "200", "application/json"):
return operations.StopAllRefreshesResponse(
request_handler_slash_get_responses_200=unmarshal_json_response(
Optional[components.RequestHandlerSlashGetResponses200], http_res
library_sections=unmarshal_json_response(
Optional[components.LibrarySections], http_res
),
status_code=http_res.status_code,
content_type=http_res.headers.get("Content-Type") or "",
@@ -1909,8 +1909,8 @@ class Library(BaseSDK):
if utils.match_response(http_res, "200", "application/json"):
return operations.StopAllRefreshesResponse(
request_handler_slash_get_responses_200=unmarshal_json_response(
Optional[components.RequestHandlerSlashGetResponses200], http_res
library_sections=unmarshal_json_response(
Optional[components.LibrarySections], http_res
),
status_code=http_res.status_code,
content_type=http_res.headers.get("Content-Type") or "",
@@ -2013,8 +2013,8 @@ class Library(BaseSDK):
if utils.match_response(http_res, "200", "application/json"):
return operations.GetSectionsPrefsResponse(
request_handler_slash_get_responses_200=unmarshal_json_response(
Optional[components.RequestHandlerSlashGetResponses200], http_res
library_sections=unmarshal_json_response(
Optional[components.LibrarySections], http_res
),
status_code=http_res.status_code,
content_type=http_res.headers.get("Content-Type") or "",
@@ -2117,8 +2117,8 @@ class Library(BaseSDK):
if utils.match_response(http_res, "200", "application/json"):
return operations.GetSectionsPrefsResponse(
request_handler_slash_get_responses_200=unmarshal_json_response(
Optional[components.RequestHandlerSlashGetResponses200], http_res
library_sections=unmarshal_json_response(
Optional[components.LibrarySections], http_res
),
status_code=http_res.status_code,
content_type=http_res.headers.get("Content-Type") or "",
@@ -9968,8 +9968,8 @@ class Library(BaseSDK):
) -> operations.AutocompleteResponse:
r"""Get autocompletions for search
The field to autocomplete on is specified by the {field}.query parameter. For example `genre.query` or `title.query`.
Returns a set of items from the filtered items whose {field} starts with {field}.query. In the results, a {field}.queryRange will be present to express the range of the match
The field to autocomplete on is specified by the `{field}.query` parameter. For example `genre.query` or `title.query`.
Returns a set of items from the filtered items whose `{field}` starts with `{field}.query`. In the results, a `{field}.queryRange` will be present to express the range of the match
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -10073,8 +10073,8 @@ class Library(BaseSDK):
) -> operations.AutocompleteResponse:
r"""Get autocompletions for search
The field to autocomplete on is specified by the {field}.query parameter. For example `genre.query` or `title.query`.
Returns a set of items from the filtered items whose {field} starts with {field}.query. In the results, a {field}.queryRange will be present to express the range of the match
The field to autocomplete on is specified by the `{field}.query` parameter. For example `genre.query` or `title.query`.
Returns a set of items from the filtered items whose `{field}` starts with `{field}.query`. In the results, a `{field}.queryRange` will be present to express the range of the match
:param request: The request object to send.
:param retries: Override the default retry configuration for this method

View File

@@ -52,6 +52,14 @@ if TYPE_CHECKING:
LibrarySectionLocationTypedDict,
LibrarySectionTypedDict,
)
from .librarysections import (
LibrarySections,
LibrarySectionsDirectory,
LibrarySectionsDirectoryTypedDict,
LibrarySectionsMediaContainer,
LibrarySectionsMediaContainerTypedDict,
LibrarySectionsTypedDict,
)
from .lineup import Lineup, LineupType, LineupTypedDict
from .location import Location
from .media import Media, MediaTypedDict
@@ -165,14 +173,6 @@ if TYPE_CHECKING:
PostResponses200TypedDict,
)
from .protocol import Protocol
from .requesthandler_slash_get_responses_200 import (
RequestHandlerSlashGetResponses200,
RequestHandlerSlashGetResponses200Directory,
RequestHandlerSlashGetResponses200DirectoryTypedDict,
RequestHandlerSlashGetResponses200MediaContainer,
RequestHandlerSlashGetResponses200MediaContainerTypedDict,
RequestHandlerSlashGetResponses200TypedDict,
)
from .security import Security, SecurityTypedDict
from .session import Session, SessionLocation, SessionTypedDict
from .setting import (
@@ -263,6 +263,12 @@ __all__ = [
"LibrarySectionLocation",
"LibrarySectionLocationTypedDict",
"LibrarySectionTypedDict",
"LibrarySections",
"LibrarySectionsDirectory",
"LibrarySectionsDirectoryTypedDict",
"LibrarySectionsMediaContainer",
"LibrarySectionsMediaContainerTypedDict",
"LibrarySectionsTypedDict",
"Lineup",
"LineupType",
"LineupTypedDict",
@@ -356,12 +362,6 @@ __all__ = [
"PostResponses200TypedDict",
"Protocol",
"RecommendationsVisibility",
"RequestHandlerSlashGetResponses200",
"RequestHandlerSlashGetResponses200Directory",
"RequestHandlerSlashGetResponses200DirectoryTypedDict",
"RequestHandlerSlashGetResponses200MediaContainer",
"RequestHandlerSlashGetResponses200MediaContainerTypedDict",
"RequestHandlerSlashGetResponses200TypedDict",
"Security",
"SecurityTypedDict",
"Session",
@@ -450,6 +450,12 @@ _dynamic_imports: dict[str, str] = {
"LibrarySectionLocation": ".librarysection",
"LibrarySectionLocationTypedDict": ".librarysection",
"LibrarySectionTypedDict": ".librarysection",
"LibrarySections": ".librarysections",
"LibrarySectionsDirectory": ".librarysections",
"LibrarySectionsDirectoryTypedDict": ".librarysections",
"LibrarySectionsMediaContainer": ".librarysections",
"LibrarySectionsMediaContainerTypedDict": ".librarysections",
"LibrarySectionsTypedDict": ".librarysections",
"Lineup": ".lineup",
"LineupType": ".lineup",
"LineupTypedDict": ".lineup",
@@ -543,12 +549,6 @@ _dynamic_imports: dict[str, str] = {
"PostResponses200Type": ".post_responses_200",
"PostResponses200TypedDict": ".post_responses_200",
"Protocol": ".protocol",
"RequestHandlerSlashGetResponses200": ".requesthandler_slash_get_responses_200",
"RequestHandlerSlashGetResponses200Directory": ".requesthandler_slash_get_responses_200",
"RequestHandlerSlashGetResponses200DirectoryTypedDict": ".requesthandler_slash_get_responses_200",
"RequestHandlerSlashGetResponses200MediaContainer": ".requesthandler_slash_get_responses_200",
"RequestHandlerSlashGetResponses200MediaContainerTypedDict": ".requesthandler_slash_get_responses_200",
"RequestHandlerSlashGetResponses200TypedDict": ".requesthandler_slash_get_responses_200",
"Security": ".security",
"SecurityTypedDict": ".security",
"Session": ".session",

View File

@@ -7,14 +7,14 @@ from typing import Any, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
class RequestHandlerSlashGetResponses200DirectoryTypedDict(TypedDict):
class LibrarySectionsDirectoryTypedDict(TypedDict):
count: NotRequired[int]
key: NotRequired[str]
r"""The key where this directory is found"""
title: NotRequired[str]
class RequestHandlerSlashGetResponses200Directory(BaseModel):
class LibrarySectionsDirectory(BaseModel):
count: Optional[int] = None
key: Optional[str] = None
@@ -23,7 +23,7 @@ class RequestHandlerSlashGetResponses200Directory(BaseModel):
title: Optional[str] = None
class RequestHandlerSlashGetResponses200MediaContainerTypedDict(TypedDict):
class LibrarySectionsMediaContainerTypedDict(TypedDict):
r"""`MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable.
Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination)
The container often \"hoists\" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.
@@ -91,10 +91,10 @@ class RequestHandlerSlashGetResponses200MediaContainerTypedDict(TypedDict):
updater: NotRequired[bool]
version: NotRequired[str]
voice_search: NotRequired[bool]
directory: NotRequired[List[RequestHandlerSlashGetResponses200DirectoryTypedDict]]
directory: NotRequired[List[LibrarySectionsDirectoryTypedDict]]
class RequestHandlerSlashGetResponses200MediaContainer(BaseModel):
class LibrarySectionsMediaContainer(BaseModel):
r"""`MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable.
Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination)
The container often \"hoists\" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.
@@ -275,23 +275,19 @@ class RequestHandlerSlashGetResponses200MediaContainer(BaseModel):
voice_search: Annotated[Optional[bool], pydantic.Field(alias="voiceSearch")] = None
directory: Annotated[
Optional[List[RequestHandlerSlashGetResponses200Directory]],
pydantic.Field(alias="Directory"),
Optional[List[LibrarySectionsDirectory]], pydantic.Field(alias="Directory")
] = None
class RequestHandlerSlashGetResponses200TypedDict(TypedDict):
class LibrarySectionsTypedDict(TypedDict):
r"""OK"""
media_container: NotRequired[
RequestHandlerSlashGetResponses200MediaContainerTypedDict
]
media_container: NotRequired[LibrarySectionsMediaContainerTypedDict]
class RequestHandlerSlashGetResponses200(BaseModel):
class LibrarySections(BaseModel):
r"""OK"""
media_container: Annotated[
Optional[RequestHandlerSlashGetResponses200MediaContainer],
pydantic.Field(alias="MediaContainer"),
Optional[LibrarySectionsMediaContainer], pydantic.Field(alias="MediaContainer")
] = None

View File

@@ -4,7 +4,7 @@ from __future__ import annotations
import httpx
from plex_api_client.models.components import (
accepts as components_accepts,
requesthandler_slash_get_responses_200 as components_requesthandler_slash_get_responses_200,
librarysections as components_librarysections,
)
from plex_api_client.types import BaseModel
from plex_api_client.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata
@@ -241,9 +241,7 @@ class GetSectionsPrefsResponseTypedDict(TypedDict):
r"""HTTP response status code for this operation"""
raw_response: httpx.Response
r"""Raw HTTP response; suitable for custom response parsing"""
request_handler_slash_get_responses_200: NotRequired[
components_requesthandler_slash_get_responses_200.RequestHandlerSlashGetResponses200TypedDict
]
library_sections: NotRequired[components_librarysections.LibrarySectionsTypedDict]
r"""OK"""
@@ -257,7 +255,5 @@ class GetSectionsPrefsResponse(BaseModel):
raw_response: httpx.Response
r"""Raw HTTP response; suitable for custom response parsing"""
request_handler_slash_get_responses_200: Optional[
components_requesthandler_slash_get_responses_200.RequestHandlerSlashGetResponses200
] = None
library_sections: Optional[components_librarysections.LibrarySections] = None
r"""OK"""

View File

@@ -3,7 +3,7 @@
from __future__ import annotations
import httpx
from plex_api_client.models.components import (
requesthandler_slash_get_responses_200 as components_requesthandler_slash_get_responses_200,
librarysections as components_librarysections,
)
from plex_api_client.types import BaseModel
from typing import Optional
@@ -17,9 +17,7 @@ class StopAllRefreshesResponseTypedDict(TypedDict):
r"""HTTP response status code for this operation"""
raw_response: httpx.Response
r"""Raw HTTP response; suitable for custom response parsing"""
request_handler_slash_get_responses_200: NotRequired[
components_requesthandler_slash_get_responses_200.RequestHandlerSlashGetResponses200TypedDict
]
library_sections: NotRequired[components_librarysections.LibrarySectionsTypedDict]
r"""OK"""
@@ -33,7 +31,5 @@ class StopAllRefreshesResponse(BaseModel):
raw_response: httpx.Response
r"""Raw HTTP response; suitable for custom response parsing"""
request_handler_slash_get_responses_200: Optional[
components_requesthandler_slash_get_responses_200.RequestHandlerSlashGetResponses200
] = None
library_sections: Optional[components_librarysections.LibrarySections] = None
r"""OK"""

View File

@@ -218,7 +218,7 @@ class PlexAPI(BaseSDK):
port: Optional[str] = None,
protocol: Optional[str] = None,
host: Optional[str] = None,
server_url_server: Optional[str] = None,
full_server_url: Optional[str] = None,
server_idx: Optional[int] = None,
server_url: Optional[str] = None,
url_params: Optional[Dict[str, str]] = None,
@@ -247,7 +247,7 @@ class PlexAPI(BaseSDK):
:param port: Allows setting the port variable for url substitution
:param protocol: Allows setting the protocol variable for url substitution
:param host: Allows setting the host variable for url substitution
:param server_url_server: Allows setting the server_url variable for url substitution
:param full_server_url: Allows setting the full_server_url variable for url substitution
:param server_idx: The index of the server to use for all methods
:param server_url: The server URL to use for all methods
:param url_params: Parameters to optionally template the server URL with
@@ -299,7 +299,7 @@ class PlexAPI(BaseSDK):
"port": port or "32400",
},
{
"server_url": server_url_server or "http://localhost:32400",
"full_server_url": full_server_url or "http://localhost:32400",
},
]