mirror of
https://github.com/LukeHagar/plexpy.git
synced 2025-12-06 12:47:44 +00:00
ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.488.0
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -13,7 +13,7 @@ generation:
|
||||
oAuth2ClientCredentialsEnabled: true
|
||||
oAuth2PasswordEnabled: false
|
||||
python:
|
||||
version: 0.22.1
|
||||
version: 0.23.0
|
||||
additionalDependencies:
|
||||
dev: {}
|
||||
main: {}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
speakeasyVersion: 1.487.1
|
||||
speakeasyVersion: 1.488.0
|
||||
sources:
|
||||
my-source:
|
||||
sourceNamespace: my-source
|
||||
@@ -8,19 +8,19 @@ sources:
|
||||
- latest
|
||||
plexapi:
|
||||
sourceNamespace: plexapi
|
||||
sourceRevisionDigest: sha256:49536684a97842ea7c069f909012b31a22a046d8277aee47b50a334494bf2c64
|
||||
sourceBlobDigest: sha256:eac671ea32ce31e1e558839153f7effef39bb35b4e461c6e95661d0eaf4ce1c8
|
||||
sourceRevisionDigest: sha256:0efb9039972533bf1190dfc1ffb377429a8e486b6299442e732f662c1ffbeca6
|
||||
sourceBlobDigest: sha256:038d73166cc9db17f514d511cfe4365ea032f4ebcb247fa86b7aa1bba0e1ab46
|
||||
tags:
|
||||
- latest
|
||||
- speakeasy-sdk-regen-1738972888
|
||||
- speakeasy-sdk-regen-1739232088
|
||||
targets:
|
||||
plexpy:
|
||||
source: plexapi
|
||||
sourceNamespace: plexapi
|
||||
sourceRevisionDigest: sha256:49536684a97842ea7c069f909012b31a22a046d8277aee47b50a334494bf2c64
|
||||
sourceBlobDigest: sha256:eac671ea32ce31e1e558839153f7effef39bb35b4e461c6e95661d0eaf4ce1c8
|
||||
sourceRevisionDigest: sha256:0efb9039972533bf1190dfc1ffb377429a8e486b6299442e732f662c1ffbeca6
|
||||
sourceBlobDigest: sha256:038d73166cc9db17f514d511cfe4365ea032f4ebcb247fa86b7aa1bba0e1ab46
|
||||
codeSamplesNamespace: code-samples-python-plexpy
|
||||
codeSamplesRevisionDigest: sha256:ad966264da2ccb1f43501d2435d91d5bf795538ec83e99a3f4a2f97acee1293a
|
||||
codeSamplesRevisionDigest: sha256:ea7739f0814edaf28e2308c9478c39068ee69344b69a79449ce4540562cf9f37
|
||||
workflow:
|
||||
workflowVersion: 1.0.0
|
||||
speakeasyVersion: latest
|
||||
|
||||
@@ -215,6 +215,7 @@ asyncio.run(main())
|
||||
* [get_library_details](docs/sdks/library/README.md#get_library_details) - Get Library Details
|
||||
* [delete_library](docs/sdks/library/README.md#delete_library) - Delete Library Section
|
||||
* [get_library_items](docs/sdks/library/README.md#get_library_items) - Get Library Items
|
||||
* [get_all_media_library](docs/sdks/library/README.md#get_all_media_library) - Get all media of library
|
||||
* [get_refresh_library_metadata](docs/sdks/library/README.md#get_refresh_library_metadata) - Refresh Metadata Of The Library
|
||||
* [get_search_library](docs/sdks/library/README.md#get_search_library) - Search Library
|
||||
* [get_genres_library](docs/sdks/library/README.md#get_genres_library) - Get Genres of library media
|
||||
|
||||
10
RELEASES.md
10
RELEASES.md
@@ -939,3 +939,13 @@ Based on:
|
||||
- [python v0.22.1] .
|
||||
### Releases
|
||||
- [PyPI v0.22.1] https://pypi.org/project/plex-api-client/0.22.1 - .
|
||||
|
||||
## 2025-02-11 00:01:13
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.488.0 (2.506.0) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [python v0.23.0] .
|
||||
### Releases
|
||||
- [PyPI v0.23.0] https://pypi.org/project/plex-api-client/0.23.0 - .
|
||||
@@ -779,6 +779,28 @@ actions:
|
||||
|
||||
assert res.object is not None
|
||||
|
||||
# Handle response
|
||||
print(res.object)
|
||||
- target: $["paths"]["/library/sections/{sectionKey}/all"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: python
|
||||
label: library
|
||||
source: |-
|
||||
from plex_api_client import PlexAPI
|
||||
from plex_api_client.models import operations
|
||||
|
||||
with PlexAPI(
|
||||
access_token="<YOUR_API_KEY_HERE>",
|
||||
) as plex_api:
|
||||
|
||||
res = plex_api.library.get_all_media_library(request={
|
||||
"section_key": 9518,
|
||||
"type": operations.GetAllMediaLibraryQueryParamType.TV_SHOW,
|
||||
})
|
||||
|
||||
assert res.object is not None
|
||||
|
||||
# Handle response
|
||||
print(res.object)
|
||||
- target: $["paths"]["/library/sections/{sectionKey}/country"]["get"]
|
||||
|
||||
11
docs/models/errors/getallmedialibrarybadrequest.md
Normal file
11
docs/models/errors/getallmedialibrarybadrequest.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetAllMediaLibraryBadRequest
|
||||
|
||||
Bad Request - A parameter was not specified, or was specified incorrectly.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
|
||||
| `errors` | List[[errors.GetAllMediaLibraryErrors](../../models/errors/getallmedialibraryerrors.md)] | :heavy_minus_sign: | N/A |
|
||||
| `raw_response` | [httpx.Response](https://www.python-httpx.org/api/#response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||
10
docs/models/errors/getallmedialibraryerrors.md
Normal file
10
docs/models/errors/getallmedialibraryerrors.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetAllMediaLibraryErrors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
|
||||
| `code` | *Optional[int]* | :heavy_minus_sign: | N/A | 1000 |
|
||||
| `message` | *Optional[str]* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
|
||||
| `status` | *Optional[int]* | :heavy_minus_sign: | N/A | 400 |
|
||||
10
docs/models/errors/getallmedialibrarylibraryerrors.md
Normal file
10
docs/models/errors/getallmedialibrarylibraryerrors.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetAllMediaLibraryLibraryErrors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
|
||||
| `code` | *Optional[int]* | :heavy_minus_sign: | N/A | 1001 |
|
||||
| `message` | *Optional[str]* | :heavy_minus_sign: | N/A | User could not be authenticated |
|
||||
| `status` | *Optional[int]* | :heavy_minus_sign: | N/A | 401 |
|
||||
11
docs/models/errors/getallmedialibraryunauthorized.md
Normal file
11
docs/models/errors/getallmedialibraryunauthorized.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetAllMediaLibraryUnauthorized
|
||||
|
||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
|
||||
| `errors` | List[[errors.GetAllMediaLibraryLibraryErrors](../../models/errors/getallmedialibrarylibraryerrors.md)] | :heavy_minus_sign: | N/A |
|
||||
| `raw_response` | [httpx.Response](https://www.python-httpx.org/api/#response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
|
||||
| `size` | *float* | :heavy_check_mark: | N/A | 50 |
|
||||
| `size` | *int* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
|
||||
| `allow_sync` | *bool* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
|
||||
| `art` | *str* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
|
||||
| `identifier` | *str* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library |
|
||||
|
||||
12
docs/models/operations/getallmedialibraryactivedirection.md
Normal file
12
docs/models/operations/getallmedialibraryactivedirection.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# GetAllMediaLibraryActiveDirection
|
||||
|
||||
The direction of the sort. Can be either `asc` or `desc`.
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------ | ------------ |
|
||||
| `ASCENDING` | asc |
|
||||
| `DESCENDING` | desc |
|
||||
8
docs/models/operations/getallmedialibrarycollection.md
Normal file
8
docs/models/operations/getallmedialibrarycollection.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetAllMediaLibraryCollection
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- |
|
||||
| `tag` | *str* | :heavy_check_mark: | The user-made collection this media item belongs to | My Awesome Collection |
|
||||
8
docs/models/operations/getallmedialibrarycountry.md
Normal file
8
docs/models/operations/getallmedialibrarycountry.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetAllMediaLibraryCountry
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
|
||||
| `tag` | *str* | :heavy_check_mark: | The country of origin of this media item | United States of America |
|
||||
12
docs/models/operations/getallmedialibrarydefaultdirection.md
Normal file
12
docs/models/operations/getallmedialibrarydefaultdirection.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# GetAllMediaLibraryDefaultDirection
|
||||
|
||||
The direction of the sort. Can be either `asc` or `desc`.
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------ | ------------ |
|
||||
| `ASCENDING` | asc |
|
||||
| `DESCENDING` | desc |
|
||||
8
docs/models/operations/getallmedialibrarydirector.md
Normal file
8
docs/models/operations/getallmedialibrarydirector.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetAllMediaLibraryDirector
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------- | -------------------- | -------------------- | -------------------- | -------------------- |
|
||||
| `tag` | *str* | :heavy_check_mark: | The role of Director | Danny Boyle |
|
||||
11
docs/models/operations/getallmedialibraryfield.md
Normal file
11
docs/models/operations/getallmedialibraryfield.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetAllMediaLibraryField
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | show.title |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | Show Title |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | string |
|
||||
| `sub_type` | *Optional[str]* | :heavy_minus_sign: | N/A | rating |
|
||||
9
docs/models/operations/getallmedialibraryfieldtype.md
Normal file
9
docs/models/operations/getallmedialibraryfieldtype.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# GetAllMediaLibraryFieldType
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | tag |
|
||||
| `operator` | List[[operations.GetAllMediaLibraryOperator](../../models/operations/getallmedialibraryoperator.md)] | :heavy_check_mark: | N/A | |
|
||||
13
docs/models/operations/getallmedialibraryfilter.md
Normal file
13
docs/models/operations/getallmedialibraryfilter.md
Normal file
@@ -0,0 +1,13 @@
|
||||
# GetAllMediaLibraryFilter
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- |
|
||||
| `filter_` | *str* | :heavy_check_mark: | N/A | genre |
|
||||
| `filter_type` | *str* | :heavy_check_mark: | N/A | string |
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | /library/sections/2/genre?type=2 |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | Genre |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | filter |
|
||||
| `advanced` | *Optional[bool]* | :heavy_minus_sign: | N/A | true |
|
||||
8
docs/models/operations/getallmedialibrarygenre.md
Normal file
8
docs/models/operations/getallmedialibrarygenre.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetAllMediaLibraryGenre
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
|
||||
| `tag` | *str* | :heavy_check_mark: | The country of origin of this media item | United States of America |
|
||||
11
docs/models/operations/getallmedialibraryhasthumbnail.md
Normal file
11
docs/models/operations/getallmedialibraryhasthumbnail.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetAllMediaLibraryHasThumbnail
|
||||
|
||||
Indicates if the part has a thumbnail.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------- | ------- |
|
||||
| `FALSE` | 0 |
|
||||
| `TRUE` | 1 |
|
||||
10
docs/models/operations/getallmedialibraryimage.md
Normal file
10
docs/models/operations/getallmedialibraryimage.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetAllMediaLibraryImage
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
|
||||
| `alt` | *str* | :heavy_check_mark: | N/A | Episode 1 |
|
||||
| `type` | [operations.GetAllMediaLibraryLibraryResponseType](../../models/operations/getallmedialibrarylibraryresponsetype.md) | :heavy_check_mark: | N/A | background |
|
||||
| `url` | *str* | :heavy_check_mark: | N/A | /library/metadata/45521/thumb/1644710589 |
|
||||
@@ -0,0 +1,19 @@
|
||||
# GetAllMediaLibraryLibraryOptimizedForStreaming
|
||||
|
||||
Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
||||
|
||||
|
||||
## Supported Types
|
||||
|
||||
### `operations.GetAllMediaLibraryOptimizedForStreaming1`
|
||||
|
||||
```python
|
||||
value: operations.GetAllMediaLibraryOptimizedForStreaming1 = /* values here */
|
||||
```
|
||||
|
||||
### `bool`
|
||||
|
||||
```python
|
||||
value: bool = /* values here */
|
||||
```
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
# GetAllMediaLibraryLibraryResponseType
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| -------------- | -------------- |
|
||||
| `COVER_POSTER` | coverPoster |
|
||||
| `BACKGROUND` | background |
|
||||
| `SNAPSHOT` | snapshot |
|
||||
| `CLEAR_LOGO` | clearLogo |
|
||||
16
docs/models/operations/getallmedialibrarylibrarytype.md
Normal file
16
docs/models/operations/getallmedialibrarylibrarytype.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# GetAllMediaLibraryLibraryType
|
||||
|
||||
The type of media content
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------- | --------- |
|
||||
| `MOVIE` | movie |
|
||||
| `TV_SHOW` | show |
|
||||
| `SEASON` | season |
|
||||
| `EPISODE` | episode |
|
||||
| `ARTIST` | artist |
|
||||
| `ALBUM` | album |
|
||||
26
docs/models/operations/getallmedialibrarymedia.md
Normal file
26
docs/models/operations/getallmedialibrarymedia.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# GetAllMediaLibraryMedia
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `id` | *int* | :heavy_check_mark: | Unique media identifier. | 387322 |
|
||||
| `has_voice_activity` | *bool* | :heavy_check_mark: | Indicates whether voice activity is detected. | false |
|
||||
| `part` | List[[operations.GetAllMediaLibraryPart](../../models/operations/getallmedialibrarypart.md)] | :heavy_check_mark: | An array of parts for this media item. | |
|
||||
| `duration` | *Optional[int]* | :heavy_minus_sign: | Duration of the media in milliseconds. | 9610350 |
|
||||
| `bitrate` | *Optional[int]* | :heavy_minus_sign: | Bitrate in bits per second. | 25512 |
|
||||
| `width` | *Optional[int]* | :heavy_minus_sign: | Video width in pixels. | 3840 |
|
||||
| `height` | *Optional[int]* | :heavy_minus_sign: | Video height in pixels. | 1602 |
|
||||
| `aspect_ratio` | *Optional[float]* | :heavy_minus_sign: | Aspect ratio of the video. | 2.35 |
|
||||
| `audio_channels` | *Optional[int]* | :heavy_minus_sign: | Number of audio channels. | 6 |
|
||||
| `display_offset` | *Optional[int]* | :heavy_minus_sign: | N/A | 50 |
|
||||
| `audio_codec` | *Optional[str]* | :heavy_minus_sign: | Audio codec used. | eac3 |
|
||||
| `video_codec` | *Optional[str]* | :heavy_minus_sign: | Video codec used. | hevc |
|
||||
| `video_resolution` | *Optional[str]* | :heavy_minus_sign: | Video resolution (e.g., 4k). | 4k |
|
||||
| `container` | *Optional[str]* | :heavy_minus_sign: | File container type. | mkv |
|
||||
| `video_frame_rate` | *Optional[str]* | :heavy_minus_sign: | Frame rate of the video. Values found include NTSC, PAL, 24p<br/> | 24p |
|
||||
| `video_profile` | *Optional[str]* | :heavy_minus_sign: | Video profile (e.g., main 10). | main 10 |
|
||||
| `audio_profile` | *Optional[str]* | :heavy_minus_sign: | The audio profile used for the media (e.g., DTS, Dolby Digital, etc.). | dts |
|
||||
| `optimized_for_streaming` | [Optional[operations.GetAllMediaLibraryOptimizedForStreaming]](../../models/operations/getallmedialibraryoptimizedforstreaming.md) | :heavy_minus_sign: | Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true | |
|
||||
| `has64bit_offsets` | *Optional[bool]* | :heavy_minus_sign: | N/A | false |
|
||||
26
docs/models/operations/getallmedialibrarymediacontainer.md
Normal file
26
docs/models/operations/getallmedialibrarymediacontainer.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# GetAllMediaLibraryMediaContainer
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
|
||||
| `size` | *int* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
|
||||
| `total_size` | *int* | :heavy_check_mark: | Total number of media items in the library. | 50 |
|
||||
| `offset` | *int* | :heavy_check_mark: | Offset value for pagination. | 0 |
|
||||
| `allow_sync` | *bool* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
|
||||
| `art` | *str* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
|
||||
| `content` | *str* | :heavy_check_mark: | The content type or mode. | secondary |
|
||||
| `identifier` | *str* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library |
|
||||
| `library_section_id` | *int* | :heavy_check_mark: | The unique identifier for the library section. | 2 |
|
||||
| `library_section_title` | *str* | :heavy_check_mark: | The title of the library section. | TV Series |
|
||||
| `media_tag_prefix` | *str* | :heavy_check_mark: | The prefix used for media tag resource paths. | /system/bundle/media/flags/ |
|
||||
| `media_tag_version` | *int* | :heavy_check_mark: | The version number for media tags. | 1734362201 |
|
||||
| `thumb` | *str* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png |
|
||||
| `nocache` | *bool* | :heavy_check_mark: | Specifies whether caching is disabled. | true |
|
||||
| `title1` | *str* | :heavy_check_mark: | The primary title of the media container. | TV Series |
|
||||
| `title2` | *str* | :heavy_check_mark: | The secondary title of the media container. | By Starring Actor |
|
||||
| `view_group` | *str* | :heavy_check_mark: | Identifier for the view group layout. | secondary |
|
||||
| `library_section_uuid` | *Optional[str]* | :heavy_minus_sign: | The universally unique identifier for the library section. | e69655a2-ef48-4aba-bb19-0cc34d1e7d36 |
|
||||
| `meta` | [Optional[operations.GetAllMediaLibraryMeta]](../../models/operations/getallmedialibrarymeta.md) | :heavy_minus_sign: | The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.<br/> | |
|
||||
| `metadata` | List[[operations.GetAllMediaLibraryMetadata](../../models/operations/getallmedialibrarymetadata.md)] | :heavy_minus_sign: | An array of metadata items. | |
|
||||
12
docs/models/operations/getallmedialibrarymeta.md
Normal file
12
docs/models/operations/getallmedialibrarymeta.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# GetAllMediaLibraryMeta
|
||||
|
||||
The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
|
||||
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
|
||||
| `type` | List[[operations.GetAllMediaLibraryType](../../models/operations/getallmedialibrarytype.md)] | :heavy_minus_sign: | N/A |
|
||||
| `field_type` | List[[operations.GetAllMediaLibraryFieldType](../../models/operations/getallmedialibraryfieldtype.md)] | :heavy_minus_sign: | N/A |
|
||||
74
docs/models/operations/getallmedialibrarymetadata.md
Normal file
74
docs/models/operations/getallmedialibrarymetadata.md
Normal file
@@ -0,0 +1,74 @@
|
||||
# GetAllMediaLibraryMetadata
|
||||
|
||||
Unknown
|
||||
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `rating_key` | *str* | :heavy_check_mark: | The rating key (Media ID) of this media item. Note: Although this is always an integer, it is represented as a string in the API. | 58683 |
|
||||
| `key` | *str* | :heavy_check_mark: | The unique key for the media item. | /library/metadata/58683 |
|
||||
| `guid` | *str* | :heavy_check_mark: | The globally unique identifier for the media item. | plex://movie/5d7768ba96b655001fdc0408 |
|
||||
| `slug` | *str* | :heavy_check_mark: | A URL‐friendly version of the media title. | 4-for-texas |
|
||||
| `type` | [operations.GetAllMediaLibraryLibraryType](../../models/operations/getallmedialibrarylibrarytype.md) | :heavy_check_mark: | N/A | movie |
|
||||
| `title` | *str* | :heavy_check_mark: | The title of the media item. | Avatar: The Way of Water |
|
||||
| `title_sort` | *str* | :heavy_check_mark: | The sort title used for ordering media items. | Whale |
|
||||
| `summary` | *str* | :heavy_check_mark: | A synopsis of the media item. | Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.<br/>Once a familiar threat returns to finish what was previously started, Jake must<br/>work with Neytiri and the army of the Na'vi race to protect their home.<br/> |
|
||||
| `rating` | *float* | :heavy_check_mark: | The critic rating for the media item. | 7.6 |
|
||||
| `audience_rating` | *float* | :heavy_check_mark: | The audience rating for the media item. | 9.2 |
|
||||
| `year` | *int* | :heavy_check_mark: | The release year of the media item. | 2022 |
|
||||
| `tagline` | *str* | :heavy_check_mark: | A brief tagline for the media item. | Return to Pandora. |
|
||||
| `thumb` | *str* | :heavy_check_mark: | The thumbnail image URL for the media item. | /library/metadata/58683/thumb/1703239236 |
|
||||
| `art` | *str* | :heavy_check_mark: | The art image URL for the media item. | /library/metadata/58683/art/1703239236 |
|
||||
| `theme` | *str* | :heavy_check_mark: | The theme URL for the media item. | /library/metadata/1/theme/1705636920 |
|
||||
| `index` | *int* | :heavy_check_mark: | The index position of the media item. | 1 |
|
||||
| `child_count` | *int* | :heavy_check_mark: | The number of child items associated with this media item. | 1 |
|
||||
| `season_count` | *int* | :heavy_check_mark: | The total number of seasons (for TV shows). | 2022 |
|
||||
| `duration` | *int* | :heavy_check_mark: | The duration of the media item in milliseconds. | 11558112 |
|
||||
| `originally_available_at` | [datetime](https://docs.python.org/3/library/datetime.html#datetime-objects) | :heavy_check_mark: | The original release date of the media item. | 2022-12-14 |
|
||||
| `added_at` | *int* | :heavy_check_mark: | N/A | 1556281940 |
|
||||
| `studio` | *Optional[str]* | :heavy_minus_sign: | The studio that produced the media item. | 20th Century Studios |
|
||||
| `content_rating` | *Optional[str]* | :heavy_minus_sign: | The content rating for the media item. | PG-13 |
|
||||
| `leaf_count` | *Optional[int]* | :heavy_minus_sign: | The number of leaf items (end nodes) under this media item. | 14 |
|
||||
| `viewed_leaf_count` | *Optional[int]* | :heavy_minus_sign: | The number of leaf items that have been viewed. | 0 |
|
||||
| `updated_at` | *Optional[int]* | :heavy_minus_sign: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `audience_rating_image` | *Optional[str]* | :heavy_minus_sign: | The URL for the audience rating image. | rottentomatoes://image.rating.upright |
|
||||
| `chapter_source` | *Optional[str]* | :heavy_minus_sign: | The source from which chapter data is derived. | media |
|
||||
| `primary_extra_key` | *Optional[str]* | :heavy_minus_sign: | The primary extra key associated with this media item. | /library/metadata/58684 |
|
||||
| `original_title` | *Optional[str]* | :heavy_minus_sign: | The original title of the media item (if different). | 映画 ブラッククローバー 魔法帝の剣 |
|
||||
| `parent_rating_key` | *Optional[str]* | :heavy_minus_sign: | The rating key of the parent media item. | 66 |
|
||||
| `grandparent_rating_key` | *Optional[str]* | :heavy_minus_sign: | The rating key of the grandparent media item. | 66 |
|
||||
| `parent_guid` | *Optional[str]* | :heavy_minus_sign: | The GUID of the parent media item. | plex://show/5d9c081b170e24001f2a7be4 |
|
||||
| `grandparent_guid` | *Optional[str]* | :heavy_minus_sign: | The GUID of the grandparent media item. | plex://show/5d9c081b170e24001f2a7be4 |
|
||||
| `grandparent_slug` | *Optional[str]* | :heavy_minus_sign: | The slug for the grandparent media item. | alice-in-borderland-2020 |
|
||||
| `grandparent_key` | *Optional[str]* | :heavy_minus_sign: | The key of the grandparent media item. | /library/metadata/66 |
|
||||
| `parent_key` | *Optional[str]* | :heavy_minus_sign: | The key of the parent media item. | /library/metadata/66 |
|
||||
| `grandparent_title` | *Optional[str]* | :heavy_minus_sign: | The title of the grandparent media item. | Caprica |
|
||||
| `grandparent_thumb` | *Optional[str]* | :heavy_minus_sign: | The thumbnail URL for the grandparent media item. | /library/metadata/66/thumb/1705716261 |
|
||||
| `grandparent_theme` | *Optional[str]* | :heavy_minus_sign: | The theme URL for the grandparent media item. | /library/metadata/66/theme/1705716261 |
|
||||
| `grandparent_art` | *Optional[str]* | :heavy_minus_sign: | The art URL for the grandparent media item. | /library/metadata/66/art/1705716261 |
|
||||
| `parent_title` | *Optional[str]* | :heavy_minus_sign: | The title of the parent media item. | Caprica |
|
||||
| `parent_index` | *Optional[int]* | :heavy_minus_sign: | The index position of the parent media item. | 1 |
|
||||
| `parent_thumb` | *Optional[str]* | :heavy_minus_sign: | The thumbnail URL for the parent media item. | /library/metadata/66/thumb/1705716261 |
|
||||
| `rating_image` | *Optional[str]* | :heavy_minus_sign: | The URL for the rating image. | rottentomatoes://image.rating.ripe |
|
||||
| `view_count` | *Optional[int]* | :heavy_minus_sign: | The number of times this media item has been viewed. | 1 |
|
||||
| `view_offset` | *Optional[int]* | :heavy_minus_sign: | The current playback offset (in milliseconds). | 5222500 |
|
||||
| `skip_count` | *Optional[int]* | :heavy_minus_sign: | The number of times this media item has been skipped. | 1 |
|
||||
| `subtype` | *Optional[str]* | :heavy_minus_sign: | A classification that further describes the type of media item. For example, 'clip' indicates that the item is a short video clip. | clip |
|
||||
| `last_rated_at` | *Optional[int]* | :heavy_minus_sign: | The Unix timestamp representing the last time the item was rated. | 1721813113 |
|
||||
| `created_at_accuracy` | *Optional[str]* | :heavy_minus_sign: | The accuracy of the creation timestamp. This value indicates the format(s) provided (for example, 'epoch,local' means both epoch and local time formats are available). | epoch,local |
|
||||
| `created_at_tz_offset` | *Optional[str]* | :heavy_minus_sign: | The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC. | 0 |
|
||||
| `last_viewed_at` | *Optional[int]* | :heavy_minus_sign: | Unix timestamp for when the media item was last viewed. | 1682752242 |
|
||||
| `user_rating` | *Optional[float]* | :heavy_minus_sign: | The rating provided by a user for the item. This value is expressed as a decimal number. | 10 |
|
||||
| `image` | List[[operations.GetAllMediaLibraryImage](../../models/operations/getallmedialibraryimage.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `ultra_blur_colors` | [Optional[operations.GetAllMediaLibraryUltraBlurColors]](../../models/operations/getallmedialibraryultrablurcolors.md) | :heavy_minus_sign: | N/A | |
|
||||
| `media` | List[[operations.GetAllMediaLibraryMedia](../../models/operations/getallmedialibrarymedia.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `genre` | List[[operations.GetAllMediaLibraryGenre](../../models/operations/getallmedialibrarygenre.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `country` | List[[operations.GetAllMediaLibraryCountry](../../models/operations/getallmedialibrarycountry.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `director` | List[[operations.GetAllMediaLibraryDirector](../../models/operations/getallmedialibrarydirector.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `writer` | List[[operations.GetAllMediaLibraryWriter](../../models/operations/getallmedialibrarywriter.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `role` | List[[operations.GetAllMediaLibraryRole](../../models/operations/getallmedialibraryrole.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `guids` | List[[operations.Guids](../../models/operations/guids.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `collection` | List[[operations.GetAllMediaLibraryCollection](../../models/operations/getallmedialibrarycollection.md)] | :heavy_minus_sign: | N/A | |
|
||||
9
docs/models/operations/getallmedialibraryoperator.md
Normal file
9
docs/models/operations/getallmedialibraryoperator.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# GetAllMediaLibraryOperator
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | = |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | is |
|
||||
@@ -0,0 +1,19 @@
|
||||
# GetAllMediaLibraryOptimizedForStreaming
|
||||
|
||||
Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
||||
|
||||
|
||||
## Supported Types
|
||||
|
||||
### `operations.One`
|
||||
|
||||
```python
|
||||
value: operations.One = /* values here */
|
||||
```
|
||||
|
||||
### `bool`
|
||||
|
||||
```python
|
||||
value: bool = /* values here */
|
||||
```
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
# GetAllMediaLibraryOptimizedForStreaming1
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------ | ------ |
|
||||
| `ZERO` | 0 |
|
||||
| `ONE` | 1 |
|
||||
23
docs/models/operations/getallmedialibrarypart.md
Normal file
23
docs/models/operations/getallmedialibrarypart.md
Normal file
@@ -0,0 +1,23 @@
|
||||
# GetAllMediaLibraryPart
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `id` | *int* | :heavy_check_mark: | Unique part identifier. | 418385 |
|
||||
| `key` | *str* | :heavy_check_mark: | Key to access this part. | /library/parts/418385/1735864239/file.mkv |
|
||||
| `file` | *str* | :heavy_check_mark: | File path for the part. | /mnt/Movies_1/W/Wicked (2024).mkv |
|
||||
| `size` | *int* | :heavy_check_mark: | File size in bytes. | 30649952104 |
|
||||
| `accessible` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the part is accessible. | true |
|
||||
| `exists` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the part exists. | true |
|
||||
| `indexes` | *Optional[str]* | :heavy_minus_sign: | N/A | sd |
|
||||
| `duration` | *Optional[int]* | :heavy_minus_sign: | Duration of the part in milliseconds. | 9610350 |
|
||||
| `packet_length` | *Optional[int]* | :heavy_minus_sign: | N/A | 188 |
|
||||
| `container` | *Optional[str]* | :heavy_minus_sign: | Container format of the part. | mkv |
|
||||
| `video_profile` | *Optional[str]* | :heavy_minus_sign: | Video profile for the part. | main 10 |
|
||||
| `audio_profile` | *Optional[str]* | :heavy_minus_sign: | The audio profile used for the media (e.g., DTS, Dolby Digital, etc.). | dts |
|
||||
| `has64bit_offsets` | *Optional[bool]* | :heavy_minus_sign: | N/A | false |
|
||||
| `optimized_for_streaming` | [Optional[operations.GetAllMediaLibraryLibraryOptimizedForStreaming]](../../models/operations/getallmedialibrarylibraryoptimizedforstreaming.md) | :heavy_minus_sign: | Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true | |
|
||||
| `has_thumbnail` | [Optional[operations.GetAllMediaLibraryHasThumbnail]](../../models/operations/getallmedialibraryhasthumbnail.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `stream` | List[[operations.GetAllMediaLibraryStream](../../models/operations/getallmedialibrarystream.md)] | :heavy_minus_sign: | An array of streams for this part. | |
|
||||
@@ -0,0 +1,12 @@
|
||||
# GetAllMediaLibraryQueryParamIncludeMeta
|
||||
|
||||
Adds the Meta object to the response
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------- | --------- |
|
||||
| `DISABLE` | 0 |
|
||||
| `ENABLE` | 1 |
|
||||
22
docs/models/operations/getallmedialibraryqueryparamtype.md
Normal file
22
docs/models/operations/getallmedialibraryqueryparamtype.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# GetAllMediaLibraryQueryParamType
|
||||
|
||||
The type of media to retrieve or filter by.
|
||||
1 = movie
|
||||
2 = show
|
||||
3 = season
|
||||
4 = episode
|
||||
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------- | --------- |
|
||||
| `MOVIE` | 1 |
|
||||
| `TV_SHOW` | 2 |
|
||||
| `SEASON` | 3 |
|
||||
| `EPISODE` | 4 |
|
||||
| `AUDIO` | 8 |
|
||||
| `ALBUM` | 9 |
|
||||
| `TRACK` | 10 |
|
||||
16
docs/models/operations/getallmedialibraryrequest.md
Normal file
16
docs/models/operations/getallmedialibraryrequest.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# GetAllMediaLibraryRequest
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `section_key` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
||||
| `type` | [operations.GetAllMediaLibraryQueryParamType](../../models/operations/getallmedialibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.<br/>1 = movie<br/>2 = show<br/>3 = season<br/>4 = episode<br/>E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries<br/> | 2 |
|
||||
| `include_meta` | [Optional[operations.GetAllMediaLibraryQueryParamIncludeMeta]](../../models/operations/getallmedialibraryqueryparamincludemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response<br/> | 1 |
|
||||
| `include_guids` | [Optional[operations.QueryParamIncludeGuids]](../../models/operations/queryparamincludeguids.md) | :heavy_minus_sign: | Adds the Guid object to the response<br/> | 1 |
|
||||
| `include_advanced` | [Optional[operations.IncludeAdvanced]](../../models/operations/includeadvanced.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `include_collections` | [Optional[operations.QueryParamIncludeCollections]](../../models/operations/queryparamincludecollections.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `include_external_media` | [Optional[operations.QueryParamIncludeExternalMedia]](../../models/operations/queryparamincludeexternalmedia.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `x_plex_container_start` | *Optional[int]* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.<br/>If the number of items exceeds the limit, the response will be paginated.<br/>By default this is 0<br/> | 0 |
|
||||
| `x_plex_container_size` | *Optional[int]* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.<br/>If the number of items exceeds the limit, the response will be paginated.<br/>By default this is 50<br/> | 50 |
|
||||
11
docs/models/operations/getallmedialibraryresponse.md
Normal file
11
docs/models/operations/getallmedialibraryresponse.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetAllMediaLibraryResponse
|
||||
|
||||
|
||||
## 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 |
|
||||
| `object` | [Optional[operations.GetAllMediaLibraryResponseBody]](../../models/operations/getallmedialibraryresponsebody.md) | :heavy_minus_sign: | Successful response containing media container data. |
|
||||
10
docs/models/operations/getallmedialibraryresponsebody.md
Normal file
10
docs/models/operations/getallmedialibraryresponsebody.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetAllMediaLibraryResponseBody
|
||||
|
||||
Successful response containing media container data.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
|
||||
| `media_container` | [Optional[operations.GetAllMediaLibraryMediaContainer]](../../models/operations/getallmedialibrarymediacontainer.md) | :heavy_minus_sign: | N/A |
|
||||
8
docs/models/operations/getallmedialibraryrole.md
Normal file
8
docs/models/operations/getallmedialibraryrole.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetAllMediaLibraryRole
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
|
||||
| `tag` | *str* | :heavy_check_mark: | The name of the actor for this role | Danny Boyle |
|
||||
15
docs/models/operations/getallmedialibrarysort.md
Normal file
15
docs/models/operations/getallmedialibrarysort.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# GetAllMediaLibrarySort
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | titleSort |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | Title |
|
||||
| `default` | *Optional[str]* | :heavy_minus_sign: | N/A | asc |
|
||||
| `active` | *Optional[bool]* | :heavy_minus_sign: | N/A | false |
|
||||
| `active_direction` | [Optional[operations.GetAllMediaLibraryActiveDirection]](../../models/operations/getallmedialibraryactivedirection.md) | :heavy_minus_sign: | The direction of the sort. Can be either `asc` or `desc`.<br/> | asc |
|
||||
| `default_direction` | [Optional[operations.GetAllMediaLibraryDefaultDirection]](../../models/operations/getallmedialibrarydefaultdirection.md) | :heavy_minus_sign: | The direction of the sort. Can be either `asc` or `desc`.<br/> | asc |
|
||||
| `desc_key` | *Optional[str]* | :heavy_minus_sign: | N/A | titleSort:desc |
|
||||
| `first_character_key` | *Optional[str]* | :heavy_minus_sign: | N/A | /library/sections/2/firstCharacter |
|
||||
54
docs/models/operations/getallmedialibrarystream.md
Normal file
54
docs/models/operations/getallmedialibrarystream.md
Normal file
@@ -0,0 +1,54 @@
|
||||
# GetAllMediaLibraryStream
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
|
||||
| `id` | *int* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
|
||||
| `stream_type` | *int* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
|
||||
| `codec` | *str* | :heavy_check_mark: | Codec used by the stream. | hevc |
|
||||
| `index` | *int* | :heavy_check_mark: | Index of the stream. | 0 |
|
||||
| `language` | *str* | :heavy_check_mark: | Language of the stream. | English |
|
||||
| `language_tag` | *str* | :heavy_check_mark: | Language tag (e.g., en). | en |
|
||||
| `language_code` | *str* | :heavy_check_mark: | ISO language code. | eng |
|
||||
| `display_title` | *str* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
|
||||
| `extended_display_title` | *str* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
|
||||
| `default` | *Optional[bool]* | :heavy_minus_sign: | Indicates if this stream is default. | true |
|
||||
| `bitrate` | *Optional[int]* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
|
||||
| `header_compression` | *Optional[bool]* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
|
||||
| `dovibl_compat_id` | *Optional[int]* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
|
||||
| `dovibl_present` | *Optional[bool]* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
|
||||
| `doviel_present` | *Optional[bool]* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
|
||||
| `dovi_level` | *Optional[int]* | :heavy_minus_sign: | Dolby Vision level. | 6 |
|
||||
| `dovi_present` | *Optional[bool]* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
|
||||
| `dovi_profile` | *Optional[int]* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
|
||||
| `dovirpu_present` | *Optional[bool]* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
|
||||
| `dovi_version` | *Optional[str]* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
|
||||
| `bit_depth` | *Optional[int]* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
|
||||
| `chroma_location` | *Optional[str]* | :heavy_minus_sign: | Chroma sample location. | topleft |
|
||||
| `chroma_subsampling` | *Optional[str]* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
|
||||
| `coded_height` | *Optional[int]* | :heavy_minus_sign: | Coded video height. | 1608 |
|
||||
| `coded_width` | *Optional[int]* | :heavy_minus_sign: | Coded video width. | 3840 |
|
||||
| `color_primaries` | *Optional[str]* | :heavy_minus_sign: | Color primaries used. | bt2020 |
|
||||
| `color_range` | *Optional[str]* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
|
||||
| `color_space` | *Optional[str]* | :heavy_minus_sign: | Color space. | bt2020nc |
|
||||
| `color_trc` | *Optional[str]* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
|
||||
| `frame_rate` | *Optional[float]* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
|
||||
| `height` | *Optional[int]* | :heavy_minus_sign: | Height of the video stream. | 1602 |
|
||||
| `level` | *Optional[int]* | :heavy_minus_sign: | Video level. | 150 |
|
||||
| `original` | *Optional[bool]* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
|
||||
| `has_scaling_matrix` | *Optional[bool]* | :heavy_minus_sign: | N/A | false |
|
||||
| `profile` | *Optional[str]* | :heavy_minus_sign: | Video profile. | main 10 |
|
||||
| `scan_type` | *Optional[str]* | :heavy_minus_sign: | N/A | progressive |
|
||||
| `ref_frames` | *Optional[int]* | :heavy_minus_sign: | Number of reference frames. | 1 |
|
||||
| `width` | *Optional[int]* | :heavy_minus_sign: | Width of the video stream. | 3840 |
|
||||
| `selected` | *Optional[bool]* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
|
||||
| `forced` | *Optional[bool]* | :heavy_minus_sign: | N/A | true |
|
||||
| `channels` | *Optional[int]* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
|
||||
| `audio_channel_layout` | *Optional[str]* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
|
||||
| `sampling_rate` | *Optional[int]* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
|
||||
| `can_auto_sync` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
|
||||
| `hearing_impaired` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
|
||||
| `dub` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
|
||||
| `title` | *Optional[str]* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
|
||||
15
docs/models/operations/getallmedialibrarytype.md
Normal file
15
docs/models/operations/getallmedialibrarytype.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# GetAllMediaLibraryType
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | /library/sections/2/all?type=2 |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | filter |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | TV Shows |
|
||||
| `active` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `subtype` | *Optional[str]* | :heavy_minus_sign: | N/A | clip |
|
||||
| `filter_` | List[[operations.GetAllMediaLibraryFilter](../../models/operations/getallmedialibraryfilter.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `sort` | List[[operations.GetAllMediaLibrarySort](../../models/operations/getallmedialibrarysort.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `field` | List[[operations.GetAllMediaLibraryField](../../models/operations/getallmedialibraryfield.md)] | :heavy_minus_sign: | N/A | |
|
||||
11
docs/models/operations/getallmedialibraryultrablurcolors.md
Normal file
11
docs/models/operations/getallmedialibraryultrablurcolors.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetAllMediaLibraryUltraBlurColors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `top_left` | *str* | :heavy_check_mark: | N/A | 11333b |
|
||||
| `top_right` | *str* | :heavy_check_mark: | N/A | 0a232d |
|
||||
| `bottom_right` | *str* | :heavy_check_mark: | N/A | 73958 |
|
||||
| `bottom_left` | *str* | :heavy_check_mark: | N/A | 1f5066 |
|
||||
8
docs/models/operations/getallmedialibrarywriter.md
Normal file
8
docs/models/operations/getallmedialibrarywriter.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetAllMediaLibraryWriter
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `tag` | *str* | :heavy_check_mark: | The role of Writer | Danny Boyle |
|
||||
@@ -5,18 +5,16 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
|
||||
| `size` | *float* | :heavy_check_mark: | N/A | 50 |
|
||||
| `identifier` | *str* | :heavy_check_mark: | N/A | com.plexapp.plugins.library |
|
||||
| `allow_sync` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `art` | *str* | :heavy_check_mark: | N/A | /:/resources/show-fanart.jpg |
|
||||
| `content` | *str* | :heavy_check_mark: | N/A | secondary |
|
||||
| `media_tag_prefix` | *str* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ |
|
||||
| `media_tag_version` | *int* | :heavy_check_mark: | N/A | 1734362201 |
|
||||
| `nocache` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `thumb` | *str* | :heavy_check_mark: | N/A | /:/resources/show.png |
|
||||
| `title1` | *str* | :heavy_check_mark: | N/A | TV Series |
|
||||
| `title2` | *str* | :heavy_check_mark: | N/A | By Country |
|
||||
| `view_group` | *str* | :heavy_check_mark: | N/A | secondary |
|
||||
| `offset` | *Optional[int]* | :heavy_minus_sign: | N/A | |
|
||||
| `total_size` | *Optional[int]* | :heavy_minus_sign: | N/A | |
|
||||
| `size` | *int* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
|
||||
| `allow_sync` | *bool* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
|
||||
| `art` | *str* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
|
||||
| `content` | *str* | :heavy_check_mark: | The content type or mode. | secondary |
|
||||
| `identifier` | *str* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library |
|
||||
| `media_tag_prefix` | *str* | :heavy_check_mark: | The prefix used for media tag resource paths. | /system/bundle/media/flags/ |
|
||||
| `media_tag_version` | *int* | :heavy_check_mark: | The version number for media tags. | 1734362201 |
|
||||
| `nocache` | *bool* | :heavy_check_mark: | Specifies whether caching is disabled. | true |
|
||||
| `thumb` | *str* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png |
|
||||
| `title1` | *str* | :heavy_check_mark: | The primary title of the media container. | TV Series |
|
||||
| `title2` | *str* | :heavy_check_mark: | The secondary title of the media container. | By Starring Actor |
|
||||
| `view_group` | *str* | :heavy_check_mark: | Identifier for the view group layout. | secondary |
|
||||
| `directory` | List[[operations.GetCountriesLibraryDirectory](../../models/operations/getcountrieslibrarydirectory.md)] | :heavy_minus_sign: | N/A | |
|
||||
@@ -5,18 +5,16 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
|
||||
| `size` | *float* | :heavy_check_mark: | N/A | 50 |
|
||||
| `identifier` | *str* | :heavy_check_mark: | N/A | com.plexapp.plugins.library |
|
||||
| `allow_sync` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `art` | *str* | :heavy_check_mark: | N/A | /:/resources/show-fanart.jpg |
|
||||
| `content` | *str* | :heavy_check_mark: | N/A | secondary |
|
||||
| `media_tag_prefix` | *str* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ |
|
||||
| `media_tag_version` | *int* | :heavy_check_mark: | N/A | 1734362201 |
|
||||
| `nocache` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `thumb` | *str* | :heavy_check_mark: | N/A | /:/resources/show.png |
|
||||
| `title1` | *str* | :heavy_check_mark: | N/A | TV Shows (Reality) |
|
||||
| `title2` | *str* | :heavy_check_mark: | N/A | By Genre |
|
||||
| `view_group` | *str* | :heavy_check_mark: | N/A | secondary |
|
||||
| `offset` | *Optional[int]* | :heavy_minus_sign: | N/A | |
|
||||
| `total_size` | *Optional[int]* | :heavy_minus_sign: | N/A | |
|
||||
| `size` | *int* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
|
||||
| `allow_sync` | *bool* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
|
||||
| `art` | *str* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
|
||||
| `content` | *str* | :heavy_check_mark: | The content type or mode. | secondary |
|
||||
| `identifier` | *str* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library |
|
||||
| `media_tag_prefix` | *str* | :heavy_check_mark: | The prefix used for media tag resource paths. | /system/bundle/media/flags/ |
|
||||
| `media_tag_version` | *int* | :heavy_check_mark: | The version number for media tags. | 1734362201 |
|
||||
| `nocache` | *bool* | :heavy_check_mark: | Specifies whether caching is disabled. | true |
|
||||
| `thumb` | *str* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png |
|
||||
| `title1` | *str* | :heavy_check_mark: | The primary title of the media container. | TV Series |
|
||||
| `title2` | *str* | :heavy_check_mark: | The secondary title of the media container. | By Starring Actor |
|
||||
| `view_group` | *str* | :heavy_check_mark: | Identifier for the view group layout. | secondary |
|
||||
| `directory` | List[[operations.GetGenresLibraryDirectory](../../models/operations/getgenreslibrarydirectory.md)] | :heavy_minus_sign: | N/A | |
|
||||
@@ -10,3 +10,4 @@
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | /library/sections/2/genre?type=2 |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | Genre |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | filter |
|
||||
| `advanced` | *Optional[bool]* | :heavy_minus_sign: | N/A | true |
|
||||
@@ -12,3 +12,5 @@ The type of media content
|
||||
| `TV_SHOW` | show |
|
||||
| `SEASON` | season |
|
||||
| `EPISODE` | episode |
|
||||
| `ARTIST` | artist |
|
||||
| `ALBUM` | album |
|
||||
@@ -6,9 +6,10 @@
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | /library/sections/2/all?type=2 |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | show |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | filter |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | TV Shows |
|
||||
| `active` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `subtype` | *Optional[str]* | :heavy_minus_sign: | N/A | clip |
|
||||
| `filter_` | List[[operations.GetLibraryItemsFilter](../../models/operations/getlibraryitemsfilter.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `sort` | List[[operations.GetLibraryItemsSort](../../models/operations/getlibraryitemssort.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `field` | List[[operations.GetLibraryItemsField](../../models/operations/getlibraryitemsfield.md)] | :heavy_minus_sign: | N/A | |
|
||||
8
docs/models/operations/getmediametadataguids.md
Normal file
8
docs/models/operations/getmediametadataguids.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetMediaMetaDataGuids
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `id` | *str* | :heavy_check_mark: | The GUID value. | imdb://tt3032476 |
|
||||
11
docs/models/operations/getmediametadatahasthumbnail.md
Normal file
11
docs/models/operations/getmediametadatahasthumbnail.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetMediaMetaDataHasThumbnail
|
||||
|
||||
Indicates if the part has a thumbnail.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------- | ------- |
|
||||
| `FALSE` | 0 |
|
||||
| `TRUE` | 1 |
|
||||
@@ -0,0 +1,19 @@
|
||||
# GetMediaMetaDataLibraryOptimizedForStreaming
|
||||
|
||||
Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
||||
|
||||
|
||||
## Supported Types
|
||||
|
||||
### `operations.GetMediaMetaDataOptimizedForStreaming1`
|
||||
|
||||
```python
|
||||
value: operations.GetMediaMetaDataOptimizedForStreaming1 = /* values here */
|
||||
```
|
||||
|
||||
### `bool`
|
||||
|
||||
```python
|
||||
value: bool = /* values here */
|
||||
```
|
||||
|
||||
@@ -3,20 +3,24 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
|
||||
| `id` | *int* | :heavy_check_mark: | Unique media identifier. | 387322 |
|
||||
| `duration` | *int* | :heavy_check_mark: | Duration of the media in milliseconds. | 9610350 |
|
||||
| `bitrate` | *int* | :heavy_check_mark: | Bitrate in bits per second. | 25512 |
|
||||
| `width` | *int* | :heavy_check_mark: | Video width in pixels. | 3840 |
|
||||
| `height` | *int* | :heavy_check_mark: | Video height in pixels. | 1602 |
|
||||
| `aspect_ratio` | *float* | :heavy_check_mark: | Aspect ratio of the video. | 2.35 |
|
||||
| `audio_channels` | *int* | :heavy_check_mark: | Number of audio channels. | 6 |
|
||||
| `audio_codec` | *str* | :heavy_check_mark: | Audio codec used. | eac3 |
|
||||
| `video_codec` | *str* | :heavy_check_mark: | Video codec used. | hevc |
|
||||
| `video_resolution` | *str* | :heavy_check_mark: | Video resolution (e.g., 4k). | 4k |
|
||||
| `container` | *str* | :heavy_check_mark: | File container type. | mkv |
|
||||
| `video_frame_rate` | *str* | :heavy_check_mark: | Frame rate of the video (e.g., 24p). | 24p |
|
||||
| `video_profile` | *str* | :heavy_check_mark: | Video profile (e.g., main 10). | main 10 |
|
||||
| `has_voice_activity` | *bool* | :heavy_check_mark: | Indicates whether voice activity is detected. | false |
|
||||
| `part` | List[[operations.GetMediaMetaDataPart](../../models/operations/getmediametadatapart.md)] | :heavy_check_mark: | An array of parts for this media item. | |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `id` | *int* | :heavy_check_mark: | Unique media identifier. | 387322 |
|
||||
| `has_voice_activity` | *bool* | :heavy_check_mark: | Indicates whether voice activity is detected. | false |
|
||||
| `part` | List[[operations.GetMediaMetaDataPart](../../models/operations/getmediametadatapart.md)] | :heavy_check_mark: | An array of parts for this media item. | |
|
||||
| `duration` | *Optional[int]* | :heavy_minus_sign: | Duration of the media in milliseconds. | 9610350 |
|
||||
| `bitrate` | *Optional[int]* | :heavy_minus_sign: | Bitrate in bits per second. | 25512 |
|
||||
| `width` | *Optional[int]* | :heavy_minus_sign: | Video width in pixels. | 3840 |
|
||||
| `height` | *Optional[int]* | :heavy_minus_sign: | Video height in pixels. | 1602 |
|
||||
| `aspect_ratio` | *Optional[float]* | :heavy_minus_sign: | Aspect ratio of the video. | 2.35 |
|
||||
| `audio_channels` | *Optional[int]* | :heavy_minus_sign: | Number of audio channels. | 6 |
|
||||
| `display_offset` | *Optional[int]* | :heavy_minus_sign: | N/A | 50 |
|
||||
| `audio_codec` | *Optional[str]* | :heavy_minus_sign: | Audio codec used. | eac3 |
|
||||
| `video_codec` | *Optional[str]* | :heavy_minus_sign: | Video codec used. | hevc |
|
||||
| `video_resolution` | *Optional[str]* | :heavy_minus_sign: | Video resolution (e.g., 4k). | 4k |
|
||||
| `container` | *Optional[str]* | :heavy_minus_sign: | File container type. | mkv |
|
||||
| `video_frame_rate` | *Optional[str]* | :heavy_minus_sign: | Frame rate of the video. Values found include NTSC, PAL, 24p<br/> | 24p |
|
||||
| `video_profile` | *Optional[str]* | :heavy_minus_sign: | Video profile (e.g., main 10). | main 10 |
|
||||
| `audio_profile` | *Optional[str]* | :heavy_minus_sign: | The audio profile used for the media (e.g., DTS, Dolby Digital, etc.). | dts |
|
||||
| `optimized_for_streaming` | [Optional[operations.GetMediaMetaDataOptimizedForStreaming]](../../models/operations/getmediametadataoptimizedforstreaming.md) | :heavy_minus_sign: | Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true | |
|
||||
| `has64bit_offsets` | *Optional[bool]* | :heavy_minus_sign: | N/A | false |
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
|
||||
| `size` | *float* | :heavy_check_mark: | N/A | 50 |
|
||||
| `size` | *int* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
|
||||
| `allow_sync` | *bool* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
|
||||
| `identifier` | *str* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library |
|
||||
| `library_section_id` | *int* | :heavy_check_mark: | The unique identifier for the library section. | 2 |
|
||||
|
||||
@@ -13,21 +13,15 @@
|
||||
| `library_section_title` | *str* | :heavy_check_mark: | The title of the library section. | TV Series |
|
||||
| `library_section_id` | *int* | :heavy_check_mark: | The ID of the library section. | 2 |
|
||||
| `library_section_key` | *str* | :heavy_check_mark: | The key of the library section. | /library/sections/2 |
|
||||
| `content_rating` | *str* | :heavy_check_mark: | The content rating (e.g., TV-MA). | TV-MA |
|
||||
| `summary` | *str* | :heavy_check_mark: | A summary of the content. | Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to "Breaking Bad" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman. |
|
||||
| `audience_rating` | *float* | :heavy_check_mark: | The audience rating for the content. | 8.7 |
|
||||
| `year` | *int* | :heavy_check_mark: | The release year. | 2015 |
|
||||
| `thumb` | *str* | :heavy_check_mark: | URL of the thumbnail image. | /library/metadata/44288/thumb/1736487993 |
|
||||
| `art` | *str* | :heavy_check_mark: | URL of the art image. | /library/metadata/44288/art/1736487993 |
|
||||
| `duration` | *int* | :heavy_check_mark: | Duration of the content in milliseconds. | 2700000 |
|
||||
| `originally_available_at` | [datetime](https://docs.python.org/3/library/datetime.html#datetime-objects) | :heavy_check_mark: | The original release date. | 2015-02-08 |
|
||||
| `added_at` | *int* | :heavy_check_mark: | Unix timestamp when the item was added. | 1625505101 |
|
||||
| `updated_at` | *int* | :heavy_check_mark: | Unix timestamp when the item was last updated. | 1736487993 |
|
||||
| `audience_rating_image` | *str* | :heavy_check_mark: | The URL for the audience rating image. | themoviedb://image.rating |
|
||||
| `added_at` | *int* | :heavy_check_mark: | N/A | 1556281940 |
|
||||
| `updated_at` | *int* | :heavy_check_mark: | N/A | 1556281940 |
|
||||
| `image` | List[[operations.GetMediaMetaDataImage](../../models/operations/getmediametadataimage.md)] | :heavy_check_mark: | An array of image objects. | |
|
||||
| `ultra_blur_colors` | [operations.GetMediaMetaDataUltraBlurColors](../../models/operations/getmediametadataultrablurcolors.md) | :heavy_check_mark: | N/A | |
|
||||
| `guids` | List[[operations.Guids](../../models/operations/guids.md)] | :heavy_check_mark: | An array of GUID objects. | |
|
||||
| `rating` | List[[operations.Rating](../../models/operations/rating.md)] | :heavy_check_mark: | An array of rating objects. | |
|
||||
| `parent_rating_key` | *Optional[str]* | :heavy_minus_sign: | The rating key of the parent of this metadata item. | 48047 |
|
||||
| `grandparent_rating_key` | *Optional[str]* | :heavy_minus_sign: | The rating key of the grandparent of this metadata item. | 45520 |
|
||||
| `parent_guid` | *Optional[str]* | :heavy_minus_sign: | A GUID identifying the parent entity (e.g., season) for the item. | plex://season/618b89208dde18df707ad15c |
|
||||
@@ -38,19 +32,25 @@
|
||||
| `slug` | *Optional[str]* | :heavy_minus_sign: | A URL-friendly identifier for the item. | better-call-saul |
|
||||
| `studio` | *Optional[str]* | :heavy_minus_sign: | The studio that produced the content. | Sony Pictures Television |
|
||||
| `original_title` | *Optional[str]* | :heavy_minus_sign: | The original title of the content. | Wicked: Part I |
|
||||
| `content_rating` | *Optional[str]* | :heavy_minus_sign: | The content rating (e.g., TV-MA). | TV-MA |
|
||||
| `index` | *Optional[int]* | :heavy_minus_sign: | The index or order of the item. | 1 |
|
||||
| `grandparent_title` | *Optional[str]* | :heavy_minus_sign: | The title of the grandparent entity (typically the show's title). | Alice in Borderland |
|
||||
| `parent_title` | *Optional[str]* | :heavy_minus_sign: | The title of the parent entity (typically the season's title). | Season 2 |
|
||||
| `audience_rating` | *Optional[float]* | :heavy_minus_sign: | The audience rating for the content. | 8.7 |
|
||||
| `view_count` | *Optional[int]* | :heavy_minus_sign: | The number of times the item has been viewed. | 4 |
|
||||
| `skip_count` | *Optional[int]* | :heavy_minus_sign: | The number of times the item has been skipped. | 1 |
|
||||
| `last_viewed_at` | *Optional[int]* | :heavy_minus_sign: | Unix timestamp of when the item was last viewed. | 1625764795 |
|
||||
| `rating` | *Optional[float]* | :heavy_minus_sign: | The general rating | 6 |
|
||||
| `rating_image` | *Optional[str]* | :heavy_minus_sign: | The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image). | rottentomatoes://image.rating.ripe |
|
||||
| `tagline` | *Optional[str]* | :heavy_minus_sign: | The tagline of the content. | Make the call |
|
||||
| `chapter_source` | *Optional[str]* | :heavy_minus_sign: | N/A | media |
|
||||
| `primary_extra_key` | *Optional[str]* | :heavy_minus_sign: | N/A | /library/metadata/134704 |
|
||||
| `theme` | *Optional[str]* | :heavy_minus_sign: | URL of the theme image. | /library/metadata/44288/theme/1736487993 |
|
||||
| `originally_available_at` | [datetime](https://docs.python.org/3/library/datetime.html#datetime-objects) | :heavy_minus_sign: | The original release date. | 2015-02-08 |
|
||||
| `leaf_count` | *Optional[int]* | :heavy_minus_sign: | The total number of episodes (or leaves). | 63 |
|
||||
| `viewed_leaf_count` | *Optional[int]* | :heavy_minus_sign: | The number of episodes that have been viewed. | 4 |
|
||||
| `child_count` | *Optional[int]* | :heavy_minus_sign: | The number of child items. | 6 |
|
||||
| `audience_rating_image` | *Optional[str]* | :heavy_minus_sign: | The URL for the audience rating image. | themoviedb://image.rating |
|
||||
| `parent_index` | *Optional[int]* | :heavy_minus_sign: | The index number of the parent entity, which could indicate its order or position. | 2 |
|
||||
| `parent_thumb` | *Optional[str]* | :heavy_minus_sign: | The URL of the parent's thumbnail image. | /library/metadata/48047/thumb/1671800243 |
|
||||
| `grandparent_thumb` | *Optional[str]* | :heavy_minus_sign: | The URL of the grandparent's thumbnail image. | /library/metadata/45520/thumb/1736488003 |
|
||||
@@ -58,6 +58,8 @@
|
||||
| `media` | List[[operations.GetMediaMetaDataMedia](../../models/operations/getmediametadatamedia.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `genre` | List[[operations.GetMediaMetaDataGenre](../../models/operations/getmediametadatagenre.md)] | :heavy_minus_sign: | An array of genre tags. | |
|
||||
| `country` | List[[operations.GetMediaMetaDataCountry](../../models/operations/getmediametadatacountry.md)] | :heavy_minus_sign: | An array of country tags. | |
|
||||
| `guids` | List[[operations.GetMediaMetaDataGuids](../../models/operations/getmediametadataguids.md)] | :heavy_minus_sign: | An array of GUID objects. | |
|
||||
| `ratings` | List[[operations.Ratings](../../models/operations/ratings.md)] | :heavy_minus_sign: | An array of rating objects. | |
|
||||
| `role` | List[[operations.GetMediaMetaDataRole](../../models/operations/getmediametadatarole.md)] | :heavy_minus_sign: | An array of Actor roles. | |
|
||||
| `director` | List[[operations.GetMediaMetaDataDirector](../../models/operations/getmediametadatadirector.md)] | :heavy_minus_sign: | An array of Director roles. | |
|
||||
| `writer` | List[[operations.GetMediaMetaDataWriter](../../models/operations/getmediametadatawriter.md)] | :heavy_minus_sign: | An array of Writer roles. | |
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# GetMediaMetaDataOptimizedForStreaming
|
||||
|
||||
Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
||||
|
||||
|
||||
## Supported Types
|
||||
|
||||
### `operations.OptimizedForStreaming1`
|
||||
|
||||
```python
|
||||
value: operations.OptimizedForStreaming1 = /* values here */
|
||||
```
|
||||
|
||||
### `bool`
|
||||
|
||||
```python
|
||||
value: bool = /* values here */
|
||||
```
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
# GetMediaMetaDataOptimizedForStreaming1
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------ | ------ |
|
||||
| `ZERO` | 0 |
|
||||
| `ONE` | 1 |
|
||||
@@ -3,16 +3,21 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
|
||||
| `id` | *int* | :heavy_check_mark: | Unique part identifier. | 418385 |
|
||||
| `key` | *str* | :heavy_check_mark: | Key to access this part. | /library/parts/418385/1735864239/file.mkv |
|
||||
| `duration` | *int* | :heavy_check_mark: | Duration of the part in milliseconds. | 9610350 |
|
||||
| `file` | *str* | :heavy_check_mark: | File path for the part. | /mnt/Movies_1/W/Wicked (2024).mkv |
|
||||
| `size` | *int* | :heavy_check_mark: | File size in bytes. | 30649952104 |
|
||||
| `container` | *str* | :heavy_check_mark: | Container format of the part. | mkv |
|
||||
| `video_profile` | *str* | :heavy_check_mark: | Video profile for the part. | main 10 |
|
||||
| `stream` | List[[operations.GetMediaMetaDataStream](../../models/operations/getmediametadatastream.md)] | :heavy_check_mark: | An array of streams for this part. | |
|
||||
| `accessible` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the part is accessible. | true |
|
||||
| `exists` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the part exists. | true |
|
||||
| `indexes` | *Optional[str]* | :heavy_minus_sign: | N/A | sd |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `id` | *int* | :heavy_check_mark: | Unique part identifier. | 418385 |
|
||||
| `key` | *str* | :heavy_check_mark: | Key to access this part. | /library/parts/418385/1735864239/file.mkv |
|
||||
| `file` | *str* | :heavy_check_mark: | File path for the part. | /mnt/Movies_1/W/Wicked (2024).mkv |
|
||||
| `size` | *int* | :heavy_check_mark: | File size in bytes. | 30649952104 |
|
||||
| `accessible` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the part is accessible. | true |
|
||||
| `exists` | *Optional[bool]* | :heavy_minus_sign: | Indicates if the part exists. | true |
|
||||
| `indexes` | *Optional[str]* | :heavy_minus_sign: | N/A | sd |
|
||||
| `duration` | *Optional[int]* | :heavy_minus_sign: | Duration of the part in milliseconds. | 9610350 |
|
||||
| `packet_length` | *Optional[int]* | :heavy_minus_sign: | N/A | 188 |
|
||||
| `container` | *Optional[str]* | :heavy_minus_sign: | Container format of the part. | mkv |
|
||||
| `video_profile` | *Optional[str]* | :heavy_minus_sign: | Video profile for the part. | main 10 |
|
||||
| `audio_profile` | *Optional[str]* | :heavy_minus_sign: | The audio profile used for the media (e.g., DTS, Dolby Digital, etc.). | dts |
|
||||
| `has64bit_offsets` | *Optional[bool]* | :heavy_minus_sign: | N/A | false |
|
||||
| `optimized_for_streaming` | [Optional[operations.GetMediaMetaDataLibraryOptimizedForStreaming]](../../models/operations/getmediametadatalibraryoptimizedforstreaming.md) | :heavy_minus_sign: | Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true | |
|
||||
| `has_thumbnail` | [Optional[operations.GetMediaMetaDataHasThumbnail]](../../models/operations/getmediametadatahasthumbnail.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `stream` | List[[operations.GetMediaMetaDataStream](../../models/operations/getmediametadatastream.md)] | :heavy_minus_sign: | An array of streams for this part. | |
|
||||
@@ -9,13 +9,14 @@
|
||||
| `stream_type` | *int* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
|
||||
| `codec` | *str* | :heavy_check_mark: | Codec used by the stream. | hevc |
|
||||
| `index` | *int* | :heavy_check_mark: | Index of the stream. | 0 |
|
||||
| `bitrate` | *int* | :heavy_check_mark: | Bitrate of the stream. | 24743 |
|
||||
| `language` | *str* | :heavy_check_mark: | Language of the stream. | English |
|
||||
| `language_tag` | *str* | :heavy_check_mark: | Language tag (e.g., en). | en |
|
||||
| `language_code` | *str* | :heavy_check_mark: | ISO language code. | eng |
|
||||
| `display_title` | *str* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
|
||||
| `extended_display_title` | *str* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
|
||||
| `default` | *Optional[bool]* | :heavy_minus_sign: | Indicates if this stream is default. | true |
|
||||
| `bitrate` | *Optional[int]* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
|
||||
| `header_compression` | *Optional[bool]* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
|
||||
| `dovibl_compat_id` | *Optional[int]* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
|
||||
| `dovibl_present` | *Optional[bool]* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
|
||||
| `doviel_present` | *Optional[bool]* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
|
||||
|
||||
@@ -10,3 +10,4 @@
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | /library/sections/2/genre?type=2 |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | Genre |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | filter |
|
||||
| `advanced` | *Optional[bool]* | :heavy_minus_sign: | N/A | true |
|
||||
@@ -12,3 +12,5 @@ The type of media content
|
||||
| `TV_SHOW` | show |
|
||||
| `SEASON` | season |
|
||||
| `EPISODE` | episode |
|
||||
| `ARTIST` | artist |
|
||||
| `ALBUM` | album |
|
||||
@@ -10,3 +10,4 @@
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | /library/sections/2/genre?type=2 |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | Genre |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | filter |
|
||||
| `advanced` | *Optional[bool]* | :heavy_minus_sign: | N/A | true |
|
||||
@@ -6,9 +6,10 @@
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | /library/sections/2/all?type=2 |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | show |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | filter |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | TV Shows |
|
||||
| `active` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `subtype` | *Optional[str]* | :heavy_minus_sign: | N/A | clip |
|
||||
| `filter_` | List[[operations.GetRecentlyAddedLibraryFilter](../../models/operations/getrecentlyaddedlibraryfilter.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `sort` | List[[operations.Sort](../../models/operations/sort.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `field` | List[[operations.FieldT](../../models/operations/fieldt.md)] | :heavy_minus_sign: | N/A | |
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
|
||||
| `size` | *float* | :heavy_check_mark: | N/A | 50 |
|
||||
| `size` | *int* | :heavy_check_mark: | N/A | 50 |
|
||||
| `offset` | *Optional[int]* | :heavy_minus_sign: | N/A | |
|
||||
| `total_size` | *Optional[int]* | :heavy_minus_sign: | N/A | |
|
||||
| `identifier` | *Optional[str]* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library |
|
||||
|
||||
@@ -6,9 +6,10 @@
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
|
||||
| `key` | *str* | :heavy_check_mark: | N/A | /library/sections/2/all?type=2 |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | show |
|
||||
| `type` | *str* | :heavy_check_mark: | N/A | filter |
|
||||
| `title` | *str* | :heavy_check_mark: | N/A | TV Shows |
|
||||
| `active` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `subtype` | *Optional[str]* | :heavy_minus_sign: | N/A | clip |
|
||||
| `filter_` | List[[operations.GetRecentlyAddedFilter](../../models/operations/getrecentlyaddedfilter.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `sort` | List[[operations.GetRecentlyAddedSort](../../models/operations/getrecentlyaddedsort.md)] | :heavy_minus_sign: | N/A | |
|
||||
| `field` | List[[operations.GetRecentlyAddedField](../../models/operations/getrecentlyaddedfield.md)] | :heavy_minus_sign: | N/A | |
|
||||
@@ -0,0 +1,11 @@
|
||||
# GetSearchAllLibrariesQueryParamIncludeCollections
|
||||
|
||||
Whether to include collections in the search results.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------- | --------- |
|
||||
| `DISABLE` | 0 |
|
||||
| `ENABLE` | 1 |
|
||||
@@ -0,0 +1,11 @@
|
||||
# GetSearchAllLibrariesQueryParamIncludeExternalMedia
|
||||
|
||||
Whether to include external media in the search results.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------- | --------- |
|
||||
| `DISABLE` | 0 |
|
||||
| `ENABLE` | 1 |
|
||||
@@ -3,11 +3,11 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
|
||||
| `query` | *str* | :heavy_check_mark: | The search query term. | |
|
||||
| `client_id` | *str* | :heavy_check_mark: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `limit` | *Optional[int]* | :heavy_minus_sign: | Limit the number of results returned. | |
|
||||
| `search_types` | List[[operations.SearchTypes](../../models/operations/searchtypes.md)] | :heavy_minus_sign: | A comma-separated list of search types to include. Valid values are: movies, music, otherVideos, people, tv.<br/> | movies,music,otherVideos,people,tv |
|
||||
| `include_collections` | [Optional[operations.QueryParamIncludeCollections]](../../models/operations/queryparamincludecollections.md) | :heavy_minus_sign: | Whether to include collections in the search results. | 1 |
|
||||
| `include_external_media` | [Optional[operations.QueryParamIncludeExternalMedia]](../../models/operations/queryparamincludeexternalmedia.md) | :heavy_minus_sign: | Whether to include external media in the search results. | 1 |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `query` | *str* | :heavy_check_mark: | The search query term. | |
|
||||
| `client_id` | *str* | :heavy_check_mark: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `limit` | *Optional[int]* | :heavy_minus_sign: | Limit the number of results returned. | |
|
||||
| `search_types` | List[[operations.SearchTypes](../../models/operations/searchtypes.md)] | :heavy_minus_sign: | A comma-separated list of search types to include. Valid values are: movies, music, otherVideos, people, tv.<br/> | movies,music,otherVideos,people,tv |
|
||||
| `include_collections` | [Optional[operations.GetSearchAllLibrariesQueryParamIncludeCollections]](../../models/operations/getsearchalllibrariesqueryparamincludecollections.md) | :heavy_minus_sign: | Whether to include collections in the search results. | 1 |
|
||||
| `include_external_media` | [Optional[operations.GetSearchAllLibrariesQueryParamIncludeExternalMedia]](../../models/operations/getsearchalllibrariesqueryparamincludeexternalmedia.md) | :heavy_minus_sign: | Whether to include external media in the search results. | 1 |
|
||||
@@ -12,3 +12,5 @@ The type of media content
|
||||
| `TV_SHOW` | show |
|
||||
| `SEASON` | season |
|
||||
| `EPISODE` | episode |
|
||||
| `ARTIST` | artist |
|
||||
| `ALBUM` | album |
|
||||
@@ -3,6 +3,6 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `id` | *str* | :heavy_check_mark: | The GUID value. | imdb://tt3032476 |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
|
||||
| `id` | *Optional[str]* | :heavy_minus_sign: | The unique identifier for the Guid. Can be imdb://tt0286347, tmdb://1763, tvdb://2337<br/> | tvdb://2337 |
|
||||
9
docs/models/operations/includeadvanced.md
Normal file
9
docs/models/operations/includeadvanced.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# IncludeAdvanced
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------- | --------- |
|
||||
| `DISABLE` | 0 |
|
||||
| `ENABLE` | 1 |
|
||||
9
docs/models/operations/one.md
Normal file
9
docs/models/operations/one.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# One
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------ | ------ |
|
||||
| `ZERO` | 0 |
|
||||
| `ONE` | 1 |
|
||||
9
docs/models/operations/optimizedforstreaming1.md
Normal file
9
docs/models/operations/optimizedforstreaming1.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# OptimizedForStreaming1
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------ | ------ |
|
||||
| `ZERO` | 0 |
|
||||
| `ONE` | 1 |
|
||||
@@ -1,7 +1,5 @@
|
||||
# QueryParamIncludeCollections
|
||||
|
||||
Whether to include collections in the search results.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
# QueryParamIncludeExternalMedia
|
||||
|
||||
Whether to include external media in the search results.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
|
||||
12
docs/models/operations/queryparamincludeguids.md
Normal file
12
docs/models/operations/queryparamincludeguids.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# QueryParamIncludeGuids
|
||||
|
||||
Adds the Guid object to the response
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------- | --------- |
|
||||
| `DISABLE` | 0 |
|
||||
| `ENABLE` | 1 |
|
||||
@@ -1,4 +1,4 @@
|
||||
# Rating
|
||||
# Ratings
|
||||
|
||||
|
||||
## Fields
|
||||
@@ -7,7 +7,6 @@ A key representing a specific tag within the section.
|
||||
|
||||
| Name | Value |
|
||||
| ----------------- | ----------------- |
|
||||
| `ALL` | all |
|
||||
| `UNWATCHED` | unwatched |
|
||||
| `NEWEST` | newest |
|
||||
| `RECENTLY_ADDED` | recentlyAdded |
|
||||
@@ -15,12 +14,9 @@ A key representing a specific tag within the section.
|
||||
| `ON_DECK` | onDeck |
|
||||
| `COLLECTION` | collection |
|
||||
| `EDITION` | edition |
|
||||
| `GENRE` | genre |
|
||||
| `YEAR` | year |
|
||||
| `DECADE` | decade |
|
||||
| `DIRECTOR` | director |
|
||||
| `ACTOR` | actor |
|
||||
| `COUNTRY` | country |
|
||||
| `CONTENT_RATING` | contentRating |
|
||||
| `RATING` | rating |
|
||||
| `RESOLUTION` | resolution |
|
||||
|
||||
@@ -14,6 +14,7 @@ API Calls interacting with Plex Media Server Libraries
|
||||
* [get_library_details](#get_library_details) - Get Library Details
|
||||
* [delete_library](#delete_library) - Delete Library Section
|
||||
* [get_library_items](#get_library_items) - Get Library Items
|
||||
* [get_all_media_library](#get_all_media_library) - Get all media of library
|
||||
* [get_refresh_library_metadata](#get_refresh_library_metadata) - Refresh Metadata Of The Library
|
||||
* [get_search_library](#get_search_library) - Search Library
|
||||
* [get_genres_library](#get_genres_library) - Get Genres of library media
|
||||
@@ -363,6 +364,52 @@ with PlexAPI(
|
||||
| errors.GetLibraryItemsUnauthorized | 401 | application/json |
|
||||
| errors.SDKError | 4XX, 5XX | \*/\* |
|
||||
|
||||
## get_all_media_library
|
||||
|
||||
Retrieves a list of all general media data for this library.
|
||||
|
||||
|
||||
### Example Usage
|
||||
|
||||
```python
|
||||
from plex_api_client import PlexAPI
|
||||
from plex_api_client.models import operations
|
||||
|
||||
with PlexAPI(
|
||||
access_token="<YOUR_API_KEY_HERE>",
|
||||
) as plex_api:
|
||||
|
||||
res = plex_api.library.get_all_media_library(request={
|
||||
"section_key": 9518,
|
||||
"type": operations.GetAllMediaLibraryQueryParamType.TV_SHOW,
|
||||
})
|
||||
|
||||
assert res.object is not None
|
||||
|
||||
# Handle response
|
||||
print(res.object)
|
||||
|
||||
```
|
||||
|
||||
### Parameters
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
|
||||
| `request` | [operations.GetAllMediaLibraryRequest](../../models/operations/getallmedialibraryrequest.md) | :heavy_check_mark: | The request object to use for the request. |
|
||||
| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
|
||||
|
||||
### Response
|
||||
|
||||
**[operations.GetAllMediaLibraryResponse](../../models/operations/getallmedialibraryresponse.md)**
|
||||
|
||||
### Errors
|
||||
|
||||
| Error Type | Status Code | Content Type |
|
||||
| ------------------------------------- | ------------------------------------- | ------------------------------------- |
|
||||
| errors.GetAllMediaLibraryBadRequest | 400 | application/json |
|
||||
| errors.GetAllMediaLibraryUnauthorized | 401 | application/json |
|
||||
| errors.SDKError | 4XX, 5XX | \*/\* |
|
||||
|
||||
## get_refresh_library_metadata
|
||||
|
||||
This endpoint Refreshes all the Metadata of the library.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[project]
|
||||
name = "plex-api-client"
|
||||
version = "0.22.1"
|
||||
version = "0.23.0"
|
||||
description = "Python Client SDK Generated by Speakeasy"
|
||||
authors = [{ name = "Speakeasy" },]
|
||||
readme = "README-PYPI.md"
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
import importlib.metadata
|
||||
|
||||
__title__: str = "plex-api-client"
|
||||
__version__: str = "0.22.1"
|
||||
__version__: str = "0.23.0"
|
||||
__openapi_doc_version__: str = "0.0.3"
|
||||
__gen_version__: str = "2.506.0"
|
||||
__user_agent__: str = "speakeasy-sdk/python 0.22.1 2.506.0 0.0.3 plex-api-client"
|
||||
__user_agent__: str = "speakeasy-sdk/python 0.23.0 2.506.0 0.0.3 plex-api-client"
|
||||
|
||||
try:
|
||||
if __package__ is not None:
|
||||
|
||||
@@ -1449,6 +1449,230 @@ class Library(BaseSDK):
|
||||
http_res,
|
||||
)
|
||||
|
||||
def get_all_media_library(
|
||||
self,
|
||||
*,
|
||||
request: Union[
|
||||
operations.GetAllMediaLibraryRequest,
|
||||
operations.GetAllMediaLibraryRequestTypedDict,
|
||||
],
|
||||
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
||||
server_url: Optional[str] = None,
|
||||
timeout_ms: Optional[int] = None,
|
||||
http_headers: Optional[Mapping[str, str]] = None,
|
||||
) -> operations.GetAllMediaLibraryResponse:
|
||||
r"""Get all media of library
|
||||
|
||||
Retrieves a list of all general media data for this library.
|
||||
|
||||
|
||||
:param request: The request object to send.
|
||||
:param retries: Override the default retry configuration for this method
|
||||
:param server_url: Override the default server URL for this method
|
||||
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
||||
:param http_headers: Additional headers to set or replace on requests.
|
||||
"""
|
||||
base_url = None
|
||||
url_variables = None
|
||||
if timeout_ms is None:
|
||||
timeout_ms = self.sdk_configuration.timeout_ms
|
||||
|
||||
if server_url is not None:
|
||||
base_url = server_url
|
||||
|
||||
if not isinstance(request, BaseModel):
|
||||
request = utils.unmarshal(request, operations.GetAllMediaLibraryRequest)
|
||||
request = cast(operations.GetAllMediaLibraryRequest, request)
|
||||
|
||||
req = self._build_request(
|
||||
method="GET",
|
||||
path="/library/sections/{sectionKey}/all",
|
||||
base_url=base_url,
|
||||
url_variables=url_variables,
|
||||
request=request,
|
||||
request_body_required=False,
|
||||
request_has_path_params=True,
|
||||
request_has_query_params=True,
|
||||
user_agent_header="user-agent",
|
||||
accept_header_value="application/json",
|
||||
http_headers=http_headers,
|
||||
security=self.sdk_configuration.security,
|
||||
timeout_ms=timeout_ms,
|
||||
)
|
||||
|
||||
if retries == UNSET:
|
||||
if self.sdk_configuration.retry_config is not UNSET:
|
||||
retries = self.sdk_configuration.retry_config
|
||||
|
||||
retry_config = None
|
||||
if isinstance(retries, utils.RetryConfig):
|
||||
retry_config = (retries, ["429", "500", "502", "503", "504"])
|
||||
|
||||
http_res = self.do_request(
|
||||
hook_ctx=HookContext(
|
||||
operation_id="get-all-media-library",
|
||||
oauth2_scopes=[],
|
||||
security_source=self.sdk_configuration.security,
|
||||
),
|
||||
request=req,
|
||||
error_status_codes=["400", "401", "404", "4XX", "5XX"],
|
||||
retry_config=retry_config,
|
||||
)
|
||||
|
||||
response_data: Any = None
|
||||
if utils.match_response(http_res, "200", "application/json"):
|
||||
return operations.GetAllMediaLibraryResponse(
|
||||
object=utils.unmarshal_json(
|
||||
http_res.text, Optional[operations.GetAllMediaLibraryResponseBody]
|
||||
),
|
||||
status_code=http_res.status_code,
|
||||
content_type=http_res.headers.get("Content-Type") or "",
|
||||
raw_response=http_res,
|
||||
)
|
||||
if utils.match_response(http_res, "400", "application/json"):
|
||||
response_data = utils.unmarshal_json(
|
||||
http_res.text, errors.GetAllMediaLibraryBadRequestData
|
||||
)
|
||||
response_data.raw_response = http_res
|
||||
raise errors.GetAllMediaLibraryBadRequest(data=response_data)
|
||||
if utils.match_response(http_res, "401", "application/json"):
|
||||
response_data = utils.unmarshal_json(
|
||||
http_res.text, errors.GetAllMediaLibraryUnauthorizedData
|
||||
)
|
||||
response_data.raw_response = http_res
|
||||
raise errors.GetAllMediaLibraryUnauthorized(data=response_data)
|
||||
if utils.match_response(http_res, ["404", "4XX"], "*"):
|
||||
http_res_text = utils.stream_to_text(http_res)
|
||||
raise errors.SDKError(
|
||||
"API error occurred", http_res.status_code, http_res_text, http_res
|
||||
)
|
||||
if utils.match_response(http_res, "5XX", "*"):
|
||||
http_res_text = utils.stream_to_text(http_res)
|
||||
raise errors.SDKError(
|
||||
"API error occurred", http_res.status_code, http_res_text, http_res
|
||||
)
|
||||
|
||||
content_type = http_res.headers.get("Content-Type")
|
||||
http_res_text = utils.stream_to_text(http_res)
|
||||
raise errors.SDKError(
|
||||
f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
|
||||
http_res.status_code,
|
||||
http_res_text,
|
||||
http_res,
|
||||
)
|
||||
|
||||
async def get_all_media_library_async(
|
||||
self,
|
||||
*,
|
||||
request: Union[
|
||||
operations.GetAllMediaLibraryRequest,
|
||||
operations.GetAllMediaLibraryRequestTypedDict,
|
||||
],
|
||||
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
||||
server_url: Optional[str] = None,
|
||||
timeout_ms: Optional[int] = None,
|
||||
http_headers: Optional[Mapping[str, str]] = None,
|
||||
) -> operations.GetAllMediaLibraryResponse:
|
||||
r"""Get all media of library
|
||||
|
||||
Retrieves a list of all general media data for this library.
|
||||
|
||||
|
||||
:param request: The request object to send.
|
||||
:param retries: Override the default retry configuration for this method
|
||||
:param server_url: Override the default server URL for this method
|
||||
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
||||
:param http_headers: Additional headers to set or replace on requests.
|
||||
"""
|
||||
base_url = None
|
||||
url_variables = None
|
||||
if timeout_ms is None:
|
||||
timeout_ms = self.sdk_configuration.timeout_ms
|
||||
|
||||
if server_url is not None:
|
||||
base_url = server_url
|
||||
|
||||
if not isinstance(request, BaseModel):
|
||||
request = utils.unmarshal(request, operations.GetAllMediaLibraryRequest)
|
||||
request = cast(operations.GetAllMediaLibraryRequest, request)
|
||||
|
||||
req = self._build_request_async(
|
||||
method="GET",
|
||||
path="/library/sections/{sectionKey}/all",
|
||||
base_url=base_url,
|
||||
url_variables=url_variables,
|
||||
request=request,
|
||||
request_body_required=False,
|
||||
request_has_path_params=True,
|
||||
request_has_query_params=True,
|
||||
user_agent_header="user-agent",
|
||||
accept_header_value="application/json",
|
||||
http_headers=http_headers,
|
||||
security=self.sdk_configuration.security,
|
||||
timeout_ms=timeout_ms,
|
||||
)
|
||||
|
||||
if retries == UNSET:
|
||||
if self.sdk_configuration.retry_config is not UNSET:
|
||||
retries = self.sdk_configuration.retry_config
|
||||
|
||||
retry_config = None
|
||||
if isinstance(retries, utils.RetryConfig):
|
||||
retry_config = (retries, ["429", "500", "502", "503", "504"])
|
||||
|
||||
http_res = await self.do_request_async(
|
||||
hook_ctx=HookContext(
|
||||
operation_id="get-all-media-library",
|
||||
oauth2_scopes=[],
|
||||
security_source=self.sdk_configuration.security,
|
||||
),
|
||||
request=req,
|
||||
error_status_codes=["400", "401", "404", "4XX", "5XX"],
|
||||
retry_config=retry_config,
|
||||
)
|
||||
|
||||
response_data: Any = None
|
||||
if utils.match_response(http_res, "200", "application/json"):
|
||||
return operations.GetAllMediaLibraryResponse(
|
||||
object=utils.unmarshal_json(
|
||||
http_res.text, Optional[operations.GetAllMediaLibraryResponseBody]
|
||||
),
|
||||
status_code=http_res.status_code,
|
||||
content_type=http_res.headers.get("Content-Type") or "",
|
||||
raw_response=http_res,
|
||||
)
|
||||
if utils.match_response(http_res, "400", "application/json"):
|
||||
response_data = utils.unmarshal_json(
|
||||
http_res.text, errors.GetAllMediaLibraryBadRequestData
|
||||
)
|
||||
response_data.raw_response = http_res
|
||||
raise errors.GetAllMediaLibraryBadRequest(data=response_data)
|
||||
if utils.match_response(http_res, "401", "application/json"):
|
||||
response_data = utils.unmarshal_json(
|
||||
http_res.text, errors.GetAllMediaLibraryUnauthorizedData
|
||||
)
|
||||
response_data.raw_response = http_res
|
||||
raise errors.GetAllMediaLibraryUnauthorized(data=response_data)
|
||||
if utils.match_response(http_res, ["404", "4XX"], "*"):
|
||||
http_res_text = await utils.stream_to_text_async(http_res)
|
||||
raise errors.SDKError(
|
||||
"API error occurred", http_res.status_code, http_res_text, http_res
|
||||
)
|
||||
if utils.match_response(http_res, "5XX", "*"):
|
||||
http_res_text = await utils.stream_to_text_async(http_res)
|
||||
raise errors.SDKError(
|
||||
"API error occurred", http_res.status_code, http_res_text, http_res
|
||||
)
|
||||
|
||||
content_type = http_res.headers.get("Content-Type")
|
||||
http_res_text = await utils.stream_to_text_async(http_res)
|
||||
raise errors.SDKError(
|
||||
f"Unexpected response received (code: {http_res.status_code}, type: {content_type})",
|
||||
http_res.status_code,
|
||||
http_res_text,
|
||||
http_res,
|
||||
)
|
||||
|
||||
def get_refresh_library_metadata(
|
||||
self,
|
||||
*,
|
||||
|
||||
@@ -110,6 +110,16 @@ from .get_all_libraries import (
|
||||
GetAllLibrariesUnauthorized,
|
||||
GetAllLibrariesUnauthorizedData,
|
||||
)
|
||||
from .get_all_media_library import (
|
||||
GetAllMediaLibraryBadRequest,
|
||||
GetAllMediaLibraryBadRequestData,
|
||||
GetAllMediaLibraryErrors,
|
||||
GetAllMediaLibraryErrorsTypedDict,
|
||||
GetAllMediaLibraryLibraryErrors,
|
||||
GetAllMediaLibraryLibraryErrorsTypedDict,
|
||||
GetAllMediaLibraryUnauthorized,
|
||||
GetAllMediaLibraryUnauthorizedData,
|
||||
)
|
||||
from .get_banner_image import (
|
||||
GetBannerImageBadRequest,
|
||||
GetBannerImageBadRequestData,
|
||||
@@ -874,6 +884,14 @@ __all__ = [
|
||||
"GetAllLibrariesLibraryErrorsTypedDict",
|
||||
"GetAllLibrariesUnauthorized",
|
||||
"GetAllLibrariesUnauthorizedData",
|
||||
"GetAllMediaLibraryBadRequest",
|
||||
"GetAllMediaLibraryBadRequestData",
|
||||
"GetAllMediaLibraryErrors",
|
||||
"GetAllMediaLibraryErrorsTypedDict",
|
||||
"GetAllMediaLibraryLibraryErrors",
|
||||
"GetAllMediaLibraryLibraryErrorsTypedDict",
|
||||
"GetAllMediaLibraryUnauthorized",
|
||||
"GetAllMediaLibraryUnauthorizedData",
|
||||
"GetAvailableClientsBadRequest",
|
||||
"GetAvailableClientsBadRequestData",
|
||||
"GetAvailableClientsErrors",
|
||||
|
||||
79
src/plex_api_client/models/errors/get_all_media_library.py
Normal file
79
src/plex_api_client/models/errors/get_all_media_library.py
Normal file
@@ -0,0 +1,79 @@
|
||||
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
||||
|
||||
from __future__ import annotations
|
||||
import httpx
|
||||
from plex_api_client import utils
|
||||
from plex_api_client.types import BaseModel
|
||||
import pydantic
|
||||
from typing import List, Optional
|
||||
from typing_extensions import Annotated, NotRequired, TypedDict
|
||||
|
||||
|
||||
class GetAllMediaLibraryLibraryErrorsTypedDict(TypedDict):
|
||||
code: NotRequired[int]
|
||||
message: NotRequired[str]
|
||||
status: NotRequired[int]
|
||||
|
||||
|
||||
class GetAllMediaLibraryLibraryErrors(BaseModel):
|
||||
code: Optional[int] = None
|
||||
|
||||
message: Optional[str] = None
|
||||
|
||||
status: Optional[int] = None
|
||||
|
||||
|
||||
class GetAllMediaLibraryUnauthorizedData(BaseModel):
|
||||
errors: Optional[List[GetAllMediaLibraryLibraryErrors]] = None
|
||||
|
||||
raw_response: Annotated[Optional[httpx.Response], pydantic.Field(exclude=True)] = (
|
||||
None
|
||||
)
|
||||
r"""Raw HTTP response; suitable for custom response parsing"""
|
||||
|
||||
|
||||
class GetAllMediaLibraryUnauthorized(Exception):
|
||||
r"""Unauthorized - Returned if the X-Plex-Token is missing from the header or query."""
|
||||
|
||||
data: GetAllMediaLibraryUnauthorizedData
|
||||
|
||||
def __init__(self, data: GetAllMediaLibraryUnauthorizedData):
|
||||
self.data = data
|
||||
|
||||
def __str__(self) -> str:
|
||||
return utils.marshal_json(self.data, GetAllMediaLibraryUnauthorizedData)
|
||||
|
||||
|
||||
class GetAllMediaLibraryErrorsTypedDict(TypedDict):
|
||||
code: NotRequired[int]
|
||||
message: NotRequired[str]
|
||||
status: NotRequired[int]
|
||||
|
||||
|
||||
class GetAllMediaLibraryErrors(BaseModel):
|
||||
code: Optional[int] = None
|
||||
|
||||
message: Optional[str] = None
|
||||
|
||||
status: Optional[int] = None
|
||||
|
||||
|
||||
class GetAllMediaLibraryBadRequestData(BaseModel):
|
||||
errors: Optional[List[GetAllMediaLibraryErrors]] = None
|
||||
|
||||
raw_response: Annotated[Optional[httpx.Response], pydantic.Field(exclude=True)] = (
|
||||
None
|
||||
)
|
||||
r"""Raw HTTP response; suitable for custom response parsing"""
|
||||
|
||||
|
||||
class GetAllMediaLibraryBadRequest(Exception):
|
||||
r"""Bad Request - A parameter was not specified, or was specified incorrectly."""
|
||||
|
||||
data: GetAllMediaLibraryBadRequestData
|
||||
|
||||
def __init__(self, data: GetAllMediaLibraryBadRequestData):
|
||||
self.data = data
|
||||
|
||||
def __str__(self) -> str:
|
||||
return utils.marshal_json(self.data, GetAllMediaLibraryBadRequestData)
|
||||
@@ -94,6 +94,73 @@ from .get_all_libraries import (
|
||||
GetAllLibrariesResponseBodyTypedDict,
|
||||
GetAllLibrariesResponseTypedDict,
|
||||
)
|
||||
from .get_all_media_library import (
|
||||
GetAllMediaLibraryActiveDirection,
|
||||
GetAllMediaLibraryCollection,
|
||||
GetAllMediaLibraryCollectionTypedDict,
|
||||
GetAllMediaLibraryCountry,
|
||||
GetAllMediaLibraryCountryTypedDict,
|
||||
GetAllMediaLibraryDefaultDirection,
|
||||
GetAllMediaLibraryDirector,
|
||||
GetAllMediaLibraryDirectorTypedDict,
|
||||
GetAllMediaLibraryField,
|
||||
GetAllMediaLibraryFieldType,
|
||||
GetAllMediaLibraryFieldTypeTypedDict,
|
||||
GetAllMediaLibraryFieldTypedDict,
|
||||
GetAllMediaLibraryFilter,
|
||||
GetAllMediaLibraryFilterTypedDict,
|
||||
GetAllMediaLibraryGenre,
|
||||
GetAllMediaLibraryGenreTypedDict,
|
||||
GetAllMediaLibraryHasThumbnail,
|
||||
GetAllMediaLibraryImage,
|
||||
GetAllMediaLibraryImageTypedDict,
|
||||
GetAllMediaLibraryLibraryOptimizedForStreaming,
|
||||
GetAllMediaLibraryLibraryOptimizedForStreamingTypedDict,
|
||||
GetAllMediaLibraryLibraryResponseType,
|
||||
GetAllMediaLibraryLibraryType,
|
||||
GetAllMediaLibraryMedia,
|
||||
GetAllMediaLibraryMediaContainer,
|
||||
GetAllMediaLibraryMediaContainerTypedDict,
|
||||
GetAllMediaLibraryMediaTypedDict,
|
||||
GetAllMediaLibraryMeta,
|
||||
GetAllMediaLibraryMetaTypedDict,
|
||||
GetAllMediaLibraryMetadata,
|
||||
GetAllMediaLibraryMetadataTypedDict,
|
||||
GetAllMediaLibraryOperator,
|
||||
GetAllMediaLibraryOperatorTypedDict,
|
||||
GetAllMediaLibraryOptimizedForStreaming,
|
||||
GetAllMediaLibraryOptimizedForStreaming1,
|
||||
GetAllMediaLibraryOptimizedForStreamingTypedDict,
|
||||
GetAllMediaLibraryPart,
|
||||
GetAllMediaLibraryPartTypedDict,
|
||||
GetAllMediaLibraryQueryParamIncludeMeta,
|
||||
GetAllMediaLibraryQueryParamType,
|
||||
GetAllMediaLibraryRequest,
|
||||
GetAllMediaLibraryRequestTypedDict,
|
||||
GetAllMediaLibraryResponse,
|
||||
GetAllMediaLibraryResponseBody,
|
||||
GetAllMediaLibraryResponseBodyTypedDict,
|
||||
GetAllMediaLibraryResponseTypedDict,
|
||||
GetAllMediaLibraryRole,
|
||||
GetAllMediaLibraryRoleTypedDict,
|
||||
GetAllMediaLibrarySort,
|
||||
GetAllMediaLibrarySortTypedDict,
|
||||
GetAllMediaLibraryStream,
|
||||
GetAllMediaLibraryStreamTypedDict,
|
||||
GetAllMediaLibraryType,
|
||||
GetAllMediaLibraryTypeTypedDict,
|
||||
GetAllMediaLibraryUltraBlurColors,
|
||||
GetAllMediaLibraryUltraBlurColorsTypedDict,
|
||||
GetAllMediaLibraryWriter,
|
||||
GetAllMediaLibraryWriterTypedDict,
|
||||
Guids,
|
||||
GuidsTypedDict,
|
||||
IncludeAdvanced,
|
||||
One,
|
||||
QueryParamIncludeCollections,
|
||||
QueryParamIncludeExternalMedia,
|
||||
QueryParamIncludeGuids,
|
||||
)
|
||||
from .get_banner_image import (
|
||||
GetBannerImageRequest,
|
||||
GetBannerImageRequestTypedDict,
|
||||
@@ -240,8 +307,13 @@ from .get_media_meta_data import (
|
||||
GetMediaMetaDataDirectorTypedDict,
|
||||
GetMediaMetaDataGenre,
|
||||
GetMediaMetaDataGenreTypedDict,
|
||||
GetMediaMetaDataGuids,
|
||||
GetMediaMetaDataGuidsTypedDict,
|
||||
GetMediaMetaDataHasThumbnail,
|
||||
GetMediaMetaDataImage,
|
||||
GetMediaMetaDataImageTypedDict,
|
||||
GetMediaMetaDataLibraryOptimizedForStreaming,
|
||||
GetMediaMetaDataLibraryOptimizedForStreamingTypedDict,
|
||||
GetMediaMetaDataLocation,
|
||||
GetMediaMetaDataLocationTypedDict,
|
||||
GetMediaMetaDataMedia,
|
||||
@@ -250,6 +322,9 @@ from .get_media_meta_data import (
|
||||
GetMediaMetaDataMediaTypedDict,
|
||||
GetMediaMetaDataMetadata,
|
||||
GetMediaMetaDataMetadataTypedDict,
|
||||
GetMediaMetaDataOptimizedForStreaming,
|
||||
GetMediaMetaDataOptimizedForStreaming1,
|
||||
GetMediaMetaDataOptimizedForStreamingTypedDict,
|
||||
GetMediaMetaDataPart,
|
||||
GetMediaMetaDataPartTypedDict,
|
||||
GetMediaMetaDataRequest,
|
||||
@@ -266,12 +341,11 @@ from .get_media_meta_data import (
|
||||
GetMediaMetaDataUltraBlurColorsTypedDict,
|
||||
GetMediaMetaDataWriter,
|
||||
GetMediaMetaDataWriterTypedDict,
|
||||
Guids,
|
||||
GuidsTypedDict,
|
||||
OptimizedForStreaming1,
|
||||
Producer,
|
||||
ProducerTypedDict,
|
||||
Rating,
|
||||
RatingTypedDict,
|
||||
Ratings,
|
||||
RatingsTypedDict,
|
||||
Similar,
|
||||
SimilarTypedDict,
|
||||
)
|
||||
@@ -441,6 +515,8 @@ from .get_search_all_libraries import (
|
||||
GetSearchAllLibrariesOptimizedForStreaming,
|
||||
GetSearchAllLibrariesPart,
|
||||
GetSearchAllLibrariesPartTypedDict,
|
||||
GetSearchAllLibrariesQueryParamIncludeCollections,
|
||||
GetSearchAllLibrariesQueryParamIncludeExternalMedia,
|
||||
GetSearchAllLibrariesRequest,
|
||||
GetSearchAllLibrariesRequestTypedDict,
|
||||
GetSearchAllLibrariesResponse,
|
||||
@@ -457,8 +533,6 @@ from .get_search_all_libraries import (
|
||||
GetSearchAllLibrariesUltraBlurColorsTypedDict,
|
||||
GetSearchAllLibrariesWriter,
|
||||
GetSearchAllLibrariesWriterTypedDict,
|
||||
QueryParamIncludeCollections,
|
||||
QueryParamIncludeExternalMedia,
|
||||
SearchResult,
|
||||
SearchResultTypedDict,
|
||||
SearchTypes,
|
||||
@@ -1272,6 +1346,64 @@ __all__ = [
|
||||
"GetAllLibrariesResponseBody",
|
||||
"GetAllLibrariesResponseBodyTypedDict",
|
||||
"GetAllLibrariesResponseTypedDict",
|
||||
"GetAllMediaLibraryActiveDirection",
|
||||
"GetAllMediaLibraryCollection",
|
||||
"GetAllMediaLibraryCollectionTypedDict",
|
||||
"GetAllMediaLibraryCountry",
|
||||
"GetAllMediaLibraryCountryTypedDict",
|
||||
"GetAllMediaLibraryDefaultDirection",
|
||||
"GetAllMediaLibraryDirector",
|
||||
"GetAllMediaLibraryDirectorTypedDict",
|
||||
"GetAllMediaLibraryField",
|
||||
"GetAllMediaLibraryFieldType",
|
||||
"GetAllMediaLibraryFieldTypeTypedDict",
|
||||
"GetAllMediaLibraryFieldTypedDict",
|
||||
"GetAllMediaLibraryFilter",
|
||||
"GetAllMediaLibraryFilterTypedDict",
|
||||
"GetAllMediaLibraryGenre",
|
||||
"GetAllMediaLibraryGenreTypedDict",
|
||||
"GetAllMediaLibraryHasThumbnail",
|
||||
"GetAllMediaLibraryImage",
|
||||
"GetAllMediaLibraryImageTypedDict",
|
||||
"GetAllMediaLibraryLibraryOptimizedForStreaming",
|
||||
"GetAllMediaLibraryLibraryOptimizedForStreamingTypedDict",
|
||||
"GetAllMediaLibraryLibraryResponseType",
|
||||
"GetAllMediaLibraryLibraryType",
|
||||
"GetAllMediaLibraryMedia",
|
||||
"GetAllMediaLibraryMediaContainer",
|
||||
"GetAllMediaLibraryMediaContainerTypedDict",
|
||||
"GetAllMediaLibraryMediaTypedDict",
|
||||
"GetAllMediaLibraryMeta",
|
||||
"GetAllMediaLibraryMetaTypedDict",
|
||||
"GetAllMediaLibraryMetadata",
|
||||
"GetAllMediaLibraryMetadataTypedDict",
|
||||
"GetAllMediaLibraryOperator",
|
||||
"GetAllMediaLibraryOperatorTypedDict",
|
||||
"GetAllMediaLibraryOptimizedForStreaming",
|
||||
"GetAllMediaLibraryOptimizedForStreaming1",
|
||||
"GetAllMediaLibraryOptimizedForStreamingTypedDict",
|
||||
"GetAllMediaLibraryPart",
|
||||
"GetAllMediaLibraryPartTypedDict",
|
||||
"GetAllMediaLibraryQueryParamIncludeMeta",
|
||||
"GetAllMediaLibraryQueryParamType",
|
||||
"GetAllMediaLibraryRequest",
|
||||
"GetAllMediaLibraryRequestTypedDict",
|
||||
"GetAllMediaLibraryResponse",
|
||||
"GetAllMediaLibraryResponseBody",
|
||||
"GetAllMediaLibraryResponseBodyTypedDict",
|
||||
"GetAllMediaLibraryResponseTypedDict",
|
||||
"GetAllMediaLibraryRole",
|
||||
"GetAllMediaLibraryRoleTypedDict",
|
||||
"GetAllMediaLibrarySort",
|
||||
"GetAllMediaLibrarySortTypedDict",
|
||||
"GetAllMediaLibraryStream",
|
||||
"GetAllMediaLibraryStreamTypedDict",
|
||||
"GetAllMediaLibraryType",
|
||||
"GetAllMediaLibraryTypeTypedDict",
|
||||
"GetAllMediaLibraryUltraBlurColors",
|
||||
"GetAllMediaLibraryUltraBlurColorsTypedDict",
|
||||
"GetAllMediaLibraryWriter",
|
||||
"GetAllMediaLibraryWriterTypedDict",
|
||||
"GetAvailableClientsMediaContainer",
|
||||
"GetAvailableClientsMediaContainerTypedDict",
|
||||
"GetAvailableClientsResponse",
|
||||
@@ -1482,8 +1614,13 @@ __all__ = [
|
||||
"GetMediaMetaDataDirectorTypedDict",
|
||||
"GetMediaMetaDataGenre",
|
||||
"GetMediaMetaDataGenreTypedDict",
|
||||
"GetMediaMetaDataGuids",
|
||||
"GetMediaMetaDataGuidsTypedDict",
|
||||
"GetMediaMetaDataHasThumbnail",
|
||||
"GetMediaMetaDataImage",
|
||||
"GetMediaMetaDataImageTypedDict",
|
||||
"GetMediaMetaDataLibraryOptimizedForStreaming",
|
||||
"GetMediaMetaDataLibraryOptimizedForStreamingTypedDict",
|
||||
"GetMediaMetaDataLocation",
|
||||
"GetMediaMetaDataLocationTypedDict",
|
||||
"GetMediaMetaDataMedia",
|
||||
@@ -1492,6 +1629,9 @@ __all__ = [
|
||||
"GetMediaMetaDataMediaTypedDict",
|
||||
"GetMediaMetaDataMetadata",
|
||||
"GetMediaMetaDataMetadataTypedDict",
|
||||
"GetMediaMetaDataOptimizedForStreaming",
|
||||
"GetMediaMetaDataOptimizedForStreaming1",
|
||||
"GetMediaMetaDataOptimizedForStreamingTypedDict",
|
||||
"GetMediaMetaDataPart",
|
||||
"GetMediaMetaDataPartTypedDict",
|
||||
"GetMediaMetaDataRequest",
|
||||
@@ -1703,6 +1843,8 @@ __all__ = [
|
||||
"GetSearchAllLibrariesOptimizedForStreaming",
|
||||
"GetSearchAllLibrariesPart",
|
||||
"GetSearchAllLibrariesPartTypedDict",
|
||||
"GetSearchAllLibrariesQueryParamIncludeCollections",
|
||||
"GetSearchAllLibrariesQueryParamIncludeExternalMedia",
|
||||
"GetSearchAllLibrariesRequest",
|
||||
"GetSearchAllLibrariesRequestTypedDict",
|
||||
"GetSearchAllLibrariesResponse",
|
||||
@@ -1917,6 +2059,7 @@ __all__ = [
|
||||
"HubTypedDict",
|
||||
"Image",
|
||||
"ImageTypedDict",
|
||||
"IncludeAdvanced",
|
||||
"IncludeCollections",
|
||||
"IncludeDetails",
|
||||
"IncludeExternalMedia",
|
||||
@@ -1964,10 +2107,12 @@ __all__ = [
|
||||
"MinSize",
|
||||
"MyPlex",
|
||||
"MyPlexTypedDict",
|
||||
"One",
|
||||
"OnlyTransient",
|
||||
"Operator",
|
||||
"OperatorTypedDict",
|
||||
"OptimizedForStreaming",
|
||||
"OptimizedForStreaming1",
|
||||
"Owned",
|
||||
"POST_USERS_SIGN_IN_DATA_SERVERS",
|
||||
"Part",
|
||||
@@ -2028,12 +2173,13 @@ __all__ = [
|
||||
"QueryParamForce",
|
||||
"QueryParamIncludeCollections",
|
||||
"QueryParamIncludeExternalMedia",
|
||||
"QueryParamIncludeGuids",
|
||||
"QueryParamIncludeMeta",
|
||||
"QueryParamOnlyTransient",
|
||||
"QueryParamSmart",
|
||||
"QueryParamType",
|
||||
"Rating",
|
||||
"RatingTypedDict",
|
||||
"Ratings",
|
||||
"RatingsTypedDict",
|
||||
"Release",
|
||||
"ReleaseTypedDict",
|
||||
"ResponseBody",
|
||||
|
||||
@@ -97,7 +97,8 @@ class GetActorsLibraryDirectory(BaseModel):
|
||||
|
||||
|
||||
class GetActorsLibraryMediaContainerTypedDict(TypedDict):
|
||||
size: float
|
||||
size: int
|
||||
r"""Number of media items returned in this response."""
|
||||
allow_sync: bool
|
||||
r"""Indicates whether syncing is allowed."""
|
||||
art: str
|
||||
@@ -125,7 +126,8 @@ class GetActorsLibraryMediaContainerTypedDict(TypedDict):
|
||||
|
||||
|
||||
class GetActorsLibraryMediaContainer(BaseModel):
|
||||
size: float
|
||||
size: int
|
||||
r"""Number of media items returned in this response."""
|
||||
|
||||
allow_sync: Annotated[bool, pydantic.Field(alias="allowSync")]
|
||||
r"""Indicates whether syncing is allowed."""
|
||||
|
||||
1500
src/plex_api_client/models/operations/get_all_media_library.py
Normal file
1500
src/plex_api_client/models/operations/get_all_media_library.py
Normal file
File diff suppressed because it is too large
Load Diff
@@ -86,51 +86,69 @@ class GetCountriesLibraryDirectory(BaseModel):
|
||||
|
||||
|
||||
class GetCountriesLibraryMediaContainerTypedDict(TypedDict):
|
||||
size: float
|
||||
identifier: str
|
||||
size: int
|
||||
r"""Number of media items returned in this response."""
|
||||
allow_sync: bool
|
||||
r"""Indicates whether syncing is allowed."""
|
||||
art: str
|
||||
r"""URL for the background artwork of the media container."""
|
||||
content: str
|
||||
r"""The content type or mode."""
|
||||
identifier: str
|
||||
r"""An plugin identifier for the media container."""
|
||||
media_tag_prefix: str
|
||||
r"""The prefix used for media tag resource paths."""
|
||||
media_tag_version: int
|
||||
r"""The version number for media tags."""
|
||||
nocache: bool
|
||||
r"""Specifies whether caching is disabled."""
|
||||
thumb: str
|
||||
r"""URL for the thumbnail image of the media container."""
|
||||
title1: str
|
||||
r"""The primary title of the media container."""
|
||||
title2: str
|
||||
r"""The secondary title of the media container."""
|
||||
view_group: str
|
||||
offset: NotRequired[int]
|
||||
total_size: NotRequired[int]
|
||||
r"""Identifier for the view group layout."""
|
||||
directory: NotRequired[List[GetCountriesLibraryDirectoryTypedDict]]
|
||||
|
||||
|
||||
class GetCountriesLibraryMediaContainer(BaseModel):
|
||||
size: float
|
||||
|
||||
identifier: str
|
||||
size: int
|
||||
r"""Number of media items returned in this response."""
|
||||
|
||||
allow_sync: Annotated[bool, pydantic.Field(alias="allowSync")]
|
||||
r"""Indicates whether syncing is allowed."""
|
||||
|
||||
art: str
|
||||
r"""URL for the background artwork of the media container."""
|
||||
|
||||
content: str
|
||||
r"""The content type or mode."""
|
||||
|
||||
identifier: str
|
||||
r"""An plugin identifier for the media container."""
|
||||
|
||||
media_tag_prefix: Annotated[str, pydantic.Field(alias="mediaTagPrefix")]
|
||||
r"""The prefix used for media tag resource paths."""
|
||||
|
||||
media_tag_version: Annotated[int, pydantic.Field(alias="mediaTagVersion")]
|
||||
r"""The version number for media tags."""
|
||||
|
||||
nocache: bool
|
||||
r"""Specifies whether caching is disabled."""
|
||||
|
||||
thumb: str
|
||||
r"""URL for the thumbnail image of the media container."""
|
||||
|
||||
title1: str
|
||||
r"""The primary title of the media container."""
|
||||
|
||||
title2: str
|
||||
r"""The secondary title of the media container."""
|
||||
|
||||
view_group: Annotated[str, pydantic.Field(alias="viewGroup")]
|
||||
|
||||
offset: Optional[int] = None
|
||||
|
||||
total_size: Annotated[Optional[int], pydantic.Field(alias="totalSize")] = None
|
||||
r"""Identifier for the view group layout."""
|
||||
|
||||
directory: Annotated[
|
||||
Optional[List[GetCountriesLibraryDirectory]], pydantic.Field(alias="Directory")
|
||||
|
||||
@@ -89,51 +89,69 @@ class GetGenresLibraryDirectory(BaseModel):
|
||||
|
||||
|
||||
class GetGenresLibraryMediaContainerTypedDict(TypedDict):
|
||||
size: float
|
||||
identifier: str
|
||||
size: int
|
||||
r"""Number of media items returned in this response."""
|
||||
allow_sync: bool
|
||||
r"""Indicates whether syncing is allowed."""
|
||||
art: str
|
||||
r"""URL for the background artwork of the media container."""
|
||||
content: str
|
||||
r"""The content type or mode."""
|
||||
identifier: str
|
||||
r"""An plugin identifier for the media container."""
|
||||
media_tag_prefix: str
|
||||
r"""The prefix used for media tag resource paths."""
|
||||
media_tag_version: int
|
||||
r"""The version number for media tags."""
|
||||
nocache: bool
|
||||
r"""Specifies whether caching is disabled."""
|
||||
thumb: str
|
||||
r"""URL for the thumbnail image of the media container."""
|
||||
title1: str
|
||||
r"""The primary title of the media container."""
|
||||
title2: str
|
||||
r"""The secondary title of the media container."""
|
||||
view_group: str
|
||||
offset: NotRequired[int]
|
||||
total_size: NotRequired[int]
|
||||
r"""Identifier for the view group layout."""
|
||||
directory: NotRequired[List[GetGenresLibraryDirectoryTypedDict]]
|
||||
|
||||
|
||||
class GetGenresLibraryMediaContainer(BaseModel):
|
||||
size: float
|
||||
|
||||
identifier: str
|
||||
size: int
|
||||
r"""Number of media items returned in this response."""
|
||||
|
||||
allow_sync: Annotated[bool, pydantic.Field(alias="allowSync")]
|
||||
r"""Indicates whether syncing is allowed."""
|
||||
|
||||
art: str
|
||||
r"""URL for the background artwork of the media container."""
|
||||
|
||||
content: str
|
||||
r"""The content type or mode."""
|
||||
|
||||
identifier: str
|
||||
r"""An plugin identifier for the media container."""
|
||||
|
||||
media_tag_prefix: Annotated[str, pydantic.Field(alias="mediaTagPrefix")]
|
||||
r"""The prefix used for media tag resource paths."""
|
||||
|
||||
media_tag_version: Annotated[int, pydantic.Field(alias="mediaTagVersion")]
|
||||
r"""The version number for media tags."""
|
||||
|
||||
nocache: bool
|
||||
r"""Specifies whether caching is disabled."""
|
||||
|
||||
thumb: str
|
||||
r"""URL for the thumbnail image of the media container."""
|
||||
|
||||
title1: str
|
||||
r"""The primary title of the media container."""
|
||||
|
||||
title2: str
|
||||
r"""The secondary title of the media container."""
|
||||
|
||||
view_group: Annotated[str, pydantic.Field(alias="viewGroup")]
|
||||
|
||||
offset: Optional[int] = None
|
||||
|
||||
total_size: Annotated[Optional[int], pydantic.Field(alias="totalSize")] = None
|
||||
r"""Identifier for the view group layout."""
|
||||
|
||||
directory: Annotated[
|
||||
Optional[List[GetGenresLibraryDirectory]], pydantic.Field(alias="Directory")
|
||||
|
||||
@@ -14,7 +14,6 @@ from typing_extensions import Annotated, NotRequired, TypedDict
|
||||
class Tag(str, Enum):
|
||||
r"""A key representing a specific tag within the section."""
|
||||
|
||||
ALL = "all"
|
||||
UNWATCHED = "unwatched"
|
||||
NEWEST = "newest"
|
||||
RECENTLY_ADDED = "recentlyAdded"
|
||||
@@ -22,12 +21,9 @@ class Tag(str, Enum):
|
||||
ON_DECK = "onDeck"
|
||||
COLLECTION = "collection"
|
||||
EDITION = "edition"
|
||||
GENRE = "genre"
|
||||
YEAR = "year"
|
||||
DECADE = "decade"
|
||||
DIRECTOR = "director"
|
||||
ACTOR = "actor"
|
||||
COUNTRY = "country"
|
||||
CONTENT_RATING = "contentRating"
|
||||
RATING = "rating"
|
||||
RESOLUTION = "resolution"
|
||||
@@ -184,6 +180,7 @@ class GetLibraryItemsFilterTypedDict(TypedDict):
|
||||
key: str
|
||||
title: str
|
||||
type: str
|
||||
advanced: NotRequired[bool]
|
||||
|
||||
|
||||
class GetLibraryItemsFilter(BaseModel):
|
||||
@@ -197,6 +194,8 @@ class GetLibraryItemsFilter(BaseModel):
|
||||
|
||||
type: str
|
||||
|
||||
advanced: Optional[bool] = None
|
||||
|
||||
|
||||
class GetLibraryItemsActiveDirection(str, Enum):
|
||||
r"""The direction of the sort. Can be either `asc` or `desc`."""
|
||||
@@ -283,6 +282,7 @@ class GetLibraryItemsTypeTypedDict(TypedDict):
|
||||
type: str
|
||||
title: str
|
||||
active: bool
|
||||
subtype: NotRequired[str]
|
||||
filter_: NotRequired[List[GetLibraryItemsFilterTypedDict]]
|
||||
sort: NotRequired[List[GetLibraryItemsSortTypedDict]]
|
||||
field: NotRequired[List[GetLibraryItemsFieldTypedDict]]
|
||||
@@ -297,6 +297,8 @@ class GetLibraryItemsType(BaseModel):
|
||||
|
||||
active: bool
|
||||
|
||||
subtype: Optional[str] = None
|
||||
|
||||
filter_: Annotated[
|
||||
Optional[List[GetLibraryItemsFilter]], pydantic.Field(alias="Filter")
|
||||
] = None
|
||||
@@ -339,6 +341,8 @@ class GetLibraryItemsLibraryType(str, Enum):
|
||||
TV_SHOW = "show"
|
||||
SEASON = "season"
|
||||
EPISODE = "episode"
|
||||
ARTIST = "artist"
|
||||
ALBUM = "album"
|
||||
|
||||
|
||||
class GetLibraryItemsFlattenSeasons(str, Enum):
|
||||
|
||||
@@ -2,12 +2,13 @@
|
||||
|
||||
from __future__ import annotations
|
||||
from datetime import date
|
||||
from enum import Enum
|
||||
import httpx
|
||||
from plex_api_client.types import BaseModel
|
||||
from plex_api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
|
||||
import pydantic
|
||||
from typing import List, Optional
|
||||
from typing_extensions import Annotated, NotRequired, TypedDict
|
||||
from typing import List, Optional, Union
|
||||
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
||||
|
||||
|
||||
class GetMediaMetaDataRequestTypedDict(TypedDict):
|
||||
@@ -141,6 +142,50 @@ class GetMediaMetaDataRequest(BaseModel):
|
||||
r"""Trigger asynchronous refresh of the local media agent."""
|
||||
|
||||
|
||||
class OptimizedForStreaming1(int, Enum):
|
||||
ZERO = 0
|
||||
ONE = 1
|
||||
|
||||
|
||||
GetMediaMetaDataOptimizedForStreamingTypedDict = TypeAliasType(
|
||||
"GetMediaMetaDataOptimizedForStreamingTypedDict",
|
||||
Union[OptimizedForStreaming1, bool],
|
||||
)
|
||||
r"""Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"""
|
||||
|
||||
|
||||
GetMediaMetaDataOptimizedForStreaming = TypeAliasType(
|
||||
"GetMediaMetaDataOptimizedForStreaming", Union[OptimizedForStreaming1, bool]
|
||||
)
|
||||
r"""Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"""
|
||||
|
||||
|
||||
class GetMediaMetaDataOptimizedForStreaming1(int, Enum):
|
||||
ZERO = 0
|
||||
ONE = 1
|
||||
|
||||
|
||||
GetMediaMetaDataLibraryOptimizedForStreamingTypedDict = TypeAliasType(
|
||||
"GetMediaMetaDataLibraryOptimizedForStreamingTypedDict",
|
||||
Union[GetMediaMetaDataOptimizedForStreaming1, bool],
|
||||
)
|
||||
r"""Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"""
|
||||
|
||||
|
||||
GetMediaMetaDataLibraryOptimizedForStreaming = TypeAliasType(
|
||||
"GetMediaMetaDataLibraryOptimizedForStreaming",
|
||||
Union[GetMediaMetaDataOptimizedForStreaming1, bool],
|
||||
)
|
||||
r"""Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"""
|
||||
|
||||
|
||||
class GetMediaMetaDataHasThumbnail(str, Enum):
|
||||
r"""Indicates if the part has a thumbnail."""
|
||||
|
||||
FALSE = "0"
|
||||
TRUE = "1"
|
||||
|
||||
|
||||
class GetMediaMetaDataStreamTypedDict(TypedDict):
|
||||
id: int
|
||||
r"""Unique stream identifier."""
|
||||
@@ -150,8 +195,6 @@ class GetMediaMetaDataStreamTypedDict(TypedDict):
|
||||
r"""Codec used by the stream."""
|
||||
index: int
|
||||
r"""Index of the stream."""
|
||||
bitrate: int
|
||||
r"""Bitrate of the stream."""
|
||||
language: str
|
||||
r"""Language of the stream."""
|
||||
language_tag: str
|
||||
@@ -164,6 +207,10 @@ class GetMediaMetaDataStreamTypedDict(TypedDict):
|
||||
r"""Extended display title for the stream."""
|
||||
default: NotRequired[bool]
|
||||
r"""Indicates if this stream is default."""
|
||||
bitrate: NotRequired[int]
|
||||
r"""Bitrate of the stream."""
|
||||
header_compression: NotRequired[bool]
|
||||
r"""Indicates whether header compression is enabled."""
|
||||
dovibl_compat_id: NotRequired[int]
|
||||
r"""Dolby Vision BL compatibility ID."""
|
||||
dovibl_present: NotRequired[bool]
|
||||
@@ -246,9 +293,6 @@ class GetMediaMetaDataStream(BaseModel):
|
||||
index: int
|
||||
r"""Index of the stream."""
|
||||
|
||||
bitrate: int
|
||||
r"""Bitrate of the stream."""
|
||||
|
||||
language: str
|
||||
r"""Language of the stream."""
|
||||
|
||||
@@ -267,6 +311,14 @@ class GetMediaMetaDataStream(BaseModel):
|
||||
default: Optional[bool] = None
|
||||
r"""Indicates if this stream is default."""
|
||||
|
||||
bitrate: Optional[int] = None
|
||||
r"""Bitrate of the stream."""
|
||||
|
||||
header_compression: Annotated[
|
||||
Optional[bool], pydantic.Field(alias="headerCompression")
|
||||
] = None
|
||||
r"""Indicates whether header compression is enabled."""
|
||||
|
||||
dovibl_compat_id: Annotated[
|
||||
Optional[int], pydantic.Field(alias="DOVIBLCompatID")
|
||||
] = None
|
||||
@@ -395,23 +447,32 @@ class GetMediaMetaDataPartTypedDict(TypedDict):
|
||||
r"""Unique part identifier."""
|
||||
key: str
|
||||
r"""Key to access this part."""
|
||||
duration: int
|
||||
r"""Duration of the part in milliseconds."""
|
||||
file: str
|
||||
r"""File path for the part."""
|
||||
size: int
|
||||
r"""File size in bytes."""
|
||||
container: str
|
||||
r"""Container format of the part."""
|
||||
video_profile: str
|
||||
r"""Video profile for the part."""
|
||||
stream: List[GetMediaMetaDataStreamTypedDict]
|
||||
r"""An array of streams for this part."""
|
||||
accessible: NotRequired[bool]
|
||||
r"""Indicates if the part is accessible."""
|
||||
exists: NotRequired[bool]
|
||||
r"""Indicates if the part exists."""
|
||||
indexes: NotRequired[str]
|
||||
duration: NotRequired[int]
|
||||
r"""Duration of the part in milliseconds."""
|
||||
packet_length: NotRequired[int]
|
||||
container: NotRequired[str]
|
||||
r"""Container format of the part."""
|
||||
video_profile: NotRequired[str]
|
||||
r"""Video profile for the part."""
|
||||
audio_profile: NotRequired[str]
|
||||
r"""The audio profile used for the media (e.g., DTS, Dolby Digital, etc.)."""
|
||||
has64bit_offsets: NotRequired[bool]
|
||||
optimized_for_streaming: NotRequired[
|
||||
GetMediaMetaDataLibraryOptimizedForStreamingTypedDict
|
||||
]
|
||||
r"""Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"""
|
||||
has_thumbnail: NotRequired[GetMediaMetaDataHasThumbnail]
|
||||
stream: NotRequired[List[GetMediaMetaDataStreamTypedDict]]
|
||||
r"""An array of streams for this part."""
|
||||
|
||||
|
||||
class GetMediaMetaDataPart(BaseModel):
|
||||
@@ -421,24 +482,12 @@ class GetMediaMetaDataPart(BaseModel):
|
||||
key: str
|
||||
r"""Key to access this part."""
|
||||
|
||||
duration: int
|
||||
r"""Duration of the part in milliseconds."""
|
||||
|
||||
file: str
|
||||
r"""File path for the part."""
|
||||
|
||||
size: int
|
||||
r"""File size in bytes."""
|
||||
|
||||
container: str
|
||||
r"""Container format of the part."""
|
||||
|
||||
video_profile: Annotated[str, pydantic.Field(alias="videoProfile")]
|
||||
r"""Video profile for the part."""
|
||||
|
||||
stream: Annotated[List[GetMediaMetaDataStream], pydantic.Field(alias="Stream")]
|
||||
r"""An array of streams for this part."""
|
||||
|
||||
accessible: Optional[bool] = None
|
||||
r"""Indicates if the part is accessible."""
|
||||
|
||||
@@ -447,86 +496,152 @@ class GetMediaMetaDataPart(BaseModel):
|
||||
|
||||
indexes: Optional[str] = None
|
||||
|
||||
duration: Optional[int] = None
|
||||
r"""Duration of the part in milliseconds."""
|
||||
|
||||
packet_length: Annotated[Optional[int], pydantic.Field(alias="packetLength")] = None
|
||||
|
||||
container: Optional[str] = None
|
||||
r"""Container format of the part."""
|
||||
|
||||
video_profile: Annotated[Optional[str], pydantic.Field(alias="videoProfile")] = None
|
||||
r"""Video profile for the part."""
|
||||
|
||||
audio_profile: Annotated[Optional[str], pydantic.Field(alias="audioProfile")] = None
|
||||
r"""The audio profile used for the media (e.g., DTS, Dolby Digital, etc.)."""
|
||||
|
||||
has64bit_offsets: Annotated[
|
||||
Optional[bool], pydantic.Field(alias="has64bitOffsets")
|
||||
] = None
|
||||
|
||||
optimized_for_streaming: Annotated[
|
||||
Optional[GetMediaMetaDataLibraryOptimizedForStreaming],
|
||||
pydantic.Field(alias="optimizedForStreaming"),
|
||||
] = None
|
||||
r"""Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"""
|
||||
|
||||
has_thumbnail: Annotated[
|
||||
Optional[GetMediaMetaDataHasThumbnail], pydantic.Field(alias="hasThumbnail")
|
||||
] = GetMediaMetaDataHasThumbnail.FALSE
|
||||
|
||||
stream: Annotated[
|
||||
Optional[List[GetMediaMetaDataStream]], pydantic.Field(alias="Stream")
|
||||
] = None
|
||||
r"""An array of streams for this part."""
|
||||
|
||||
|
||||
class GetMediaMetaDataMediaTypedDict(TypedDict):
|
||||
id: int
|
||||
r"""Unique media identifier."""
|
||||
duration: int
|
||||
r"""Duration of the media in milliseconds."""
|
||||
bitrate: int
|
||||
r"""Bitrate in bits per second."""
|
||||
width: int
|
||||
r"""Video width in pixels."""
|
||||
height: int
|
||||
r"""Video height in pixels."""
|
||||
aspect_ratio: float
|
||||
r"""Aspect ratio of the video."""
|
||||
audio_channels: int
|
||||
r"""Number of audio channels."""
|
||||
audio_codec: str
|
||||
r"""Audio codec used."""
|
||||
video_codec: str
|
||||
r"""Video codec used."""
|
||||
video_resolution: str
|
||||
r"""Video resolution (e.g., 4k)."""
|
||||
container: str
|
||||
r"""File container type."""
|
||||
video_frame_rate: str
|
||||
r"""Frame rate of the video (e.g., 24p)."""
|
||||
video_profile: str
|
||||
r"""Video profile (e.g., main 10)."""
|
||||
has_voice_activity: bool
|
||||
r"""Indicates whether voice activity is detected."""
|
||||
part: List[GetMediaMetaDataPartTypedDict]
|
||||
r"""An array of parts for this media item."""
|
||||
duration: NotRequired[int]
|
||||
r"""Duration of the media in milliseconds."""
|
||||
bitrate: NotRequired[int]
|
||||
r"""Bitrate in bits per second."""
|
||||
width: NotRequired[int]
|
||||
r"""Video width in pixels."""
|
||||
height: NotRequired[int]
|
||||
r"""Video height in pixels."""
|
||||
aspect_ratio: NotRequired[float]
|
||||
r"""Aspect ratio of the video."""
|
||||
audio_channels: NotRequired[int]
|
||||
r"""Number of audio channels."""
|
||||
display_offset: NotRequired[int]
|
||||
audio_codec: NotRequired[str]
|
||||
r"""Audio codec used."""
|
||||
video_codec: NotRequired[str]
|
||||
r"""Video codec used."""
|
||||
video_resolution: NotRequired[str]
|
||||
r"""Video resolution (e.g., 4k)."""
|
||||
container: NotRequired[str]
|
||||
r"""File container type."""
|
||||
video_frame_rate: NotRequired[str]
|
||||
r"""Frame rate of the video. Values found include NTSC, PAL, 24p
|
||||
|
||||
"""
|
||||
video_profile: NotRequired[str]
|
||||
r"""Video profile (e.g., main 10)."""
|
||||
audio_profile: NotRequired[str]
|
||||
r"""The audio profile used for the media (e.g., DTS, Dolby Digital, etc.)."""
|
||||
optimized_for_streaming: NotRequired[GetMediaMetaDataOptimizedForStreamingTypedDict]
|
||||
r"""Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"""
|
||||
has64bit_offsets: NotRequired[bool]
|
||||
|
||||
|
||||
class GetMediaMetaDataMedia(BaseModel):
|
||||
id: int
|
||||
r"""Unique media identifier."""
|
||||
|
||||
duration: int
|
||||
r"""Duration of the media in milliseconds."""
|
||||
|
||||
bitrate: int
|
||||
r"""Bitrate in bits per second."""
|
||||
|
||||
width: int
|
||||
r"""Video width in pixels."""
|
||||
|
||||
height: int
|
||||
r"""Video height in pixels."""
|
||||
|
||||
aspect_ratio: Annotated[float, pydantic.Field(alias="aspectRatio")]
|
||||
r"""Aspect ratio of the video."""
|
||||
|
||||
audio_channels: Annotated[int, pydantic.Field(alias="audioChannels")]
|
||||
r"""Number of audio channels."""
|
||||
|
||||
audio_codec: Annotated[str, pydantic.Field(alias="audioCodec")]
|
||||
r"""Audio codec used."""
|
||||
|
||||
video_codec: Annotated[str, pydantic.Field(alias="videoCodec")]
|
||||
r"""Video codec used."""
|
||||
|
||||
video_resolution: Annotated[str, pydantic.Field(alias="videoResolution")]
|
||||
r"""Video resolution (e.g., 4k)."""
|
||||
|
||||
container: str
|
||||
r"""File container type."""
|
||||
|
||||
video_frame_rate: Annotated[str, pydantic.Field(alias="videoFrameRate")]
|
||||
r"""Frame rate of the video (e.g., 24p)."""
|
||||
|
||||
video_profile: Annotated[str, pydantic.Field(alias="videoProfile")]
|
||||
r"""Video profile (e.g., main 10)."""
|
||||
|
||||
has_voice_activity: Annotated[bool, pydantic.Field(alias="hasVoiceActivity")]
|
||||
r"""Indicates whether voice activity is detected."""
|
||||
|
||||
part: Annotated[List[GetMediaMetaDataPart], pydantic.Field(alias="Part")]
|
||||
r"""An array of parts for this media item."""
|
||||
|
||||
duration: Optional[int] = None
|
||||
r"""Duration of the media in milliseconds."""
|
||||
|
||||
bitrate: Optional[int] = None
|
||||
r"""Bitrate in bits per second."""
|
||||
|
||||
width: Optional[int] = None
|
||||
r"""Video width in pixels."""
|
||||
|
||||
height: Optional[int] = None
|
||||
r"""Video height in pixels."""
|
||||
|
||||
aspect_ratio: Annotated[Optional[float], pydantic.Field(alias="aspectRatio")] = None
|
||||
r"""Aspect ratio of the video."""
|
||||
|
||||
audio_channels: Annotated[Optional[int], pydantic.Field(alias="audioChannels")] = (
|
||||
None
|
||||
)
|
||||
r"""Number of audio channels."""
|
||||
|
||||
display_offset: Annotated[Optional[int], pydantic.Field(alias="displayOffset")] = (
|
||||
None
|
||||
)
|
||||
|
||||
audio_codec: Annotated[Optional[str], pydantic.Field(alias="audioCodec")] = None
|
||||
r"""Audio codec used."""
|
||||
|
||||
video_codec: Annotated[Optional[str], pydantic.Field(alias="videoCodec")] = None
|
||||
r"""Video codec used."""
|
||||
|
||||
video_resolution: Annotated[
|
||||
Optional[str], pydantic.Field(alias="videoResolution")
|
||||
] = None
|
||||
r"""Video resolution (e.g., 4k)."""
|
||||
|
||||
container: Optional[str] = None
|
||||
r"""File container type."""
|
||||
|
||||
video_frame_rate: Annotated[
|
||||
Optional[str], pydantic.Field(alias="videoFrameRate")
|
||||
] = None
|
||||
r"""Frame rate of the video. Values found include NTSC, PAL, 24p
|
||||
|
||||
"""
|
||||
|
||||
video_profile: Annotated[Optional[str], pydantic.Field(alias="videoProfile")] = None
|
||||
r"""Video profile (e.g., main 10)."""
|
||||
|
||||
audio_profile: Annotated[Optional[str], pydantic.Field(alias="audioProfile")] = None
|
||||
r"""The audio profile used for the media (e.g., DTS, Dolby Digital, etc.)."""
|
||||
|
||||
optimized_for_streaming: Annotated[
|
||||
Optional[GetMediaMetaDataOptimizedForStreaming],
|
||||
pydantic.Field(alias="optimizedForStreaming"),
|
||||
] = None
|
||||
r"""Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"""
|
||||
|
||||
has64bit_offsets: Annotated[
|
||||
Optional[bool], pydantic.Field(alias="has64bitOffsets")
|
||||
] = None
|
||||
|
||||
|
||||
class GetMediaMetaDataImageTypedDict(TypedDict):
|
||||
alt: str
|
||||
@@ -613,17 +728,17 @@ class GetMediaMetaDataCountry(BaseModel):
|
||||
r"""The country name."""
|
||||
|
||||
|
||||
class GuidsTypedDict(TypedDict):
|
||||
class GetMediaMetaDataGuidsTypedDict(TypedDict):
|
||||
id: str
|
||||
r"""The GUID value."""
|
||||
|
||||
|
||||
class Guids(BaseModel):
|
||||
class GetMediaMetaDataGuids(BaseModel):
|
||||
id: str
|
||||
r"""The GUID value."""
|
||||
|
||||
|
||||
class RatingTypedDict(TypedDict):
|
||||
class RatingsTypedDict(TypedDict):
|
||||
image: str
|
||||
r"""The image or reference for the rating."""
|
||||
value: float
|
||||
@@ -632,7 +747,7 @@ class RatingTypedDict(TypedDict):
|
||||
r"""The type of rating (e.g., audience, critic)."""
|
||||
|
||||
|
||||
class Rating(BaseModel):
|
||||
class Ratings(BaseModel):
|
||||
image: str
|
||||
r"""The image or reference for the rating."""
|
||||
|
||||
@@ -830,12 +945,8 @@ class GetMediaMetaDataMetadataTypedDict(TypedDict):
|
||||
r"""The ID of the library section."""
|
||||
library_section_key: str
|
||||
r"""The key of the library section."""
|
||||
content_rating: str
|
||||
r"""The content rating (e.g., TV-MA)."""
|
||||
summary: str
|
||||
r"""A summary of the content."""
|
||||
audience_rating: float
|
||||
r"""The audience rating for the content."""
|
||||
year: int
|
||||
r"""The release year."""
|
||||
thumb: str
|
||||
@@ -844,21 +955,11 @@ class GetMediaMetaDataMetadataTypedDict(TypedDict):
|
||||
r"""URL of the art image."""
|
||||
duration: int
|
||||
r"""Duration of the content in milliseconds."""
|
||||
originally_available_at: date
|
||||
r"""The original release date."""
|
||||
added_at: int
|
||||
r"""Unix timestamp when the item was added."""
|
||||
updated_at: int
|
||||
r"""Unix timestamp when the item was last updated."""
|
||||
audience_rating_image: str
|
||||
r"""The URL for the audience rating image."""
|
||||
image: List[GetMediaMetaDataImageTypedDict]
|
||||
r"""An array of image objects."""
|
||||
ultra_blur_colors: GetMediaMetaDataUltraBlurColorsTypedDict
|
||||
guids: List[GuidsTypedDict]
|
||||
r"""An array of GUID objects."""
|
||||
rating: List[RatingTypedDict]
|
||||
r"""An array of rating objects."""
|
||||
parent_rating_key: NotRequired[str]
|
||||
r"""The rating key of the parent of this metadata item."""
|
||||
grandparent_rating_key: NotRequired[str]
|
||||
@@ -879,30 +980,42 @@ class GetMediaMetaDataMetadataTypedDict(TypedDict):
|
||||
r"""The studio that produced the content."""
|
||||
original_title: NotRequired[str]
|
||||
r"""The original title of the content."""
|
||||
content_rating: NotRequired[str]
|
||||
r"""The content rating (e.g., TV-MA)."""
|
||||
index: NotRequired[int]
|
||||
r"""The index or order of the item."""
|
||||
grandparent_title: NotRequired[str]
|
||||
r"""The title of the grandparent entity (typically the show's title)."""
|
||||
parent_title: NotRequired[str]
|
||||
r"""The title of the parent entity (typically the season's title)."""
|
||||
audience_rating: NotRequired[float]
|
||||
r"""The audience rating for the content."""
|
||||
view_count: NotRequired[int]
|
||||
r"""The number of times the item has been viewed."""
|
||||
skip_count: NotRequired[int]
|
||||
r"""The number of times the item has been skipped."""
|
||||
last_viewed_at: NotRequired[int]
|
||||
r"""Unix timestamp of when the item was last viewed."""
|
||||
rating: NotRequired[float]
|
||||
r"""The general rating"""
|
||||
rating_image: NotRequired[str]
|
||||
r"""The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image)."""
|
||||
tagline: NotRequired[str]
|
||||
r"""The tagline of the content."""
|
||||
chapter_source: NotRequired[str]
|
||||
primary_extra_key: NotRequired[str]
|
||||
theme: NotRequired[str]
|
||||
r"""URL of the theme image."""
|
||||
originally_available_at: NotRequired[date]
|
||||
r"""The original release date."""
|
||||
leaf_count: NotRequired[int]
|
||||
r"""The total number of episodes (or leaves)."""
|
||||
viewed_leaf_count: NotRequired[int]
|
||||
r"""The number of episodes that have been viewed."""
|
||||
child_count: NotRequired[int]
|
||||
r"""The number of child items."""
|
||||
audience_rating_image: NotRequired[str]
|
||||
r"""The URL for the audience rating image."""
|
||||
parent_index: NotRequired[int]
|
||||
r"""The index number of the parent entity, which could indicate its order or position."""
|
||||
parent_thumb: NotRequired[str]
|
||||
@@ -916,6 +1029,10 @@ class GetMediaMetaDataMetadataTypedDict(TypedDict):
|
||||
r"""An array of genre tags."""
|
||||
country: NotRequired[List[GetMediaMetaDataCountryTypedDict]]
|
||||
r"""An array of country tags."""
|
||||
guids: NotRequired[List[GetMediaMetaDataGuidsTypedDict]]
|
||||
r"""An array of GUID objects."""
|
||||
ratings: NotRequired[List[RatingsTypedDict]]
|
||||
r"""An array of rating objects."""
|
||||
role: NotRequired[List[GetMediaMetaDataRoleTypedDict]]
|
||||
r"""An array of Actor roles."""
|
||||
director: NotRequired[List[GetMediaMetaDataDirectorTypedDict]]
|
||||
@@ -955,15 +1072,9 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
library_section_key: Annotated[str, pydantic.Field(alias="librarySectionKey")]
|
||||
r"""The key of the library section."""
|
||||
|
||||
content_rating: Annotated[str, pydantic.Field(alias="contentRating")]
|
||||
r"""The content rating (e.g., TV-MA)."""
|
||||
|
||||
summary: str
|
||||
r"""A summary of the content."""
|
||||
|
||||
audience_rating: Annotated[float, pydantic.Field(alias="audienceRating")]
|
||||
r"""The audience rating for the content."""
|
||||
|
||||
year: int
|
||||
r"""The release year."""
|
||||
|
||||
@@ -976,19 +1087,9 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
duration: int
|
||||
r"""Duration of the content in milliseconds."""
|
||||
|
||||
originally_available_at: Annotated[
|
||||
date, pydantic.Field(alias="originallyAvailableAt")
|
||||
]
|
||||
r"""The original release date."""
|
||||
|
||||
added_at: Annotated[int, pydantic.Field(alias="addedAt")]
|
||||
r"""Unix timestamp when the item was added."""
|
||||
|
||||
updated_at: Annotated[int, pydantic.Field(alias="updatedAt")]
|
||||
r"""Unix timestamp when the item was last updated."""
|
||||
|
||||
audience_rating_image: Annotated[str, pydantic.Field(alias="audienceRatingImage")]
|
||||
r"""The URL for the audience rating image."""
|
||||
|
||||
image: Annotated[List[GetMediaMetaDataImage], pydantic.Field(alias="Image")]
|
||||
r"""An array of image objects."""
|
||||
@@ -997,12 +1098,6 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
GetMediaMetaDataUltraBlurColors, pydantic.Field(alias="UltraBlurColors")
|
||||
]
|
||||
|
||||
guids: Annotated[List[Guids], pydantic.Field(alias="Guid")]
|
||||
r"""An array of GUID objects."""
|
||||
|
||||
rating: Annotated[List[Rating], pydantic.Field(alias="Rating")]
|
||||
r"""An array of rating objects."""
|
||||
|
||||
parent_rating_key: Annotated[
|
||||
Optional[str], pydantic.Field(alias="parentRatingKey")
|
||||
] = None
|
||||
@@ -1045,6 +1140,11 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
)
|
||||
r"""The original title of the content."""
|
||||
|
||||
content_rating: Annotated[Optional[str], pydantic.Field(alias="contentRating")] = (
|
||||
None
|
||||
)
|
||||
r"""The content rating (e.g., TV-MA)."""
|
||||
|
||||
index: Optional[int] = None
|
||||
r"""The index or order of the item."""
|
||||
|
||||
@@ -1056,6 +1156,11 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
parent_title: Annotated[Optional[str], pydantic.Field(alias="parentTitle")] = None
|
||||
r"""The title of the parent entity (typically the season's title)."""
|
||||
|
||||
audience_rating: Annotated[
|
||||
Optional[float], pydantic.Field(alias="audienceRating")
|
||||
] = None
|
||||
r"""The audience rating for the content."""
|
||||
|
||||
view_count: Annotated[Optional[int], pydantic.Field(alias="viewCount")] = None
|
||||
r"""The number of times the item has been viewed."""
|
||||
|
||||
@@ -1067,6 +1172,12 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
)
|
||||
r"""Unix timestamp of when the item was last viewed."""
|
||||
|
||||
rating: Optional[float] = None
|
||||
r"""The general rating"""
|
||||
|
||||
rating_image: Annotated[Optional[str], pydantic.Field(alias="ratingImage")] = None
|
||||
r"""The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image)."""
|
||||
|
||||
tagline: Optional[str] = None
|
||||
r"""The tagline of the content."""
|
||||
|
||||
@@ -1081,6 +1192,11 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
theme: Optional[str] = None
|
||||
r"""URL of the theme image."""
|
||||
|
||||
originally_available_at: Annotated[
|
||||
Optional[date], pydantic.Field(alias="originallyAvailableAt")
|
||||
] = None
|
||||
r"""The original release date."""
|
||||
|
||||
leaf_count: Annotated[Optional[int], pydantic.Field(alias="leafCount")] = None
|
||||
r"""The total number of episodes (or leaves)."""
|
||||
|
||||
@@ -1092,6 +1208,11 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
child_count: Annotated[Optional[int], pydantic.Field(alias="childCount")] = None
|
||||
r"""The number of child items."""
|
||||
|
||||
audience_rating_image: Annotated[
|
||||
Optional[str], pydantic.Field(alias="audienceRatingImage")
|
||||
] = None
|
||||
r"""The URL for the audience rating image."""
|
||||
|
||||
parent_index: Annotated[Optional[int], pydantic.Field(alias="parentIndex")] = None
|
||||
r"""The index number of the parent entity, which could indicate its order or position."""
|
||||
|
||||
@@ -1122,6 +1243,14 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
] = None
|
||||
r"""An array of country tags."""
|
||||
|
||||
guids: Annotated[
|
||||
Optional[List[GetMediaMetaDataGuids]], pydantic.Field(alias="Guid")
|
||||
] = None
|
||||
r"""An array of GUID objects."""
|
||||
|
||||
ratings: Annotated[Optional[List[Ratings]], pydantic.Field(alias="Rating")] = None
|
||||
r"""An array of rating objects."""
|
||||
|
||||
role: Annotated[
|
||||
Optional[List[GetMediaMetaDataRole]], pydantic.Field(alias="Role")
|
||||
] = None
|
||||
@@ -1152,7 +1281,8 @@ class GetMediaMetaDataMetadata(BaseModel):
|
||||
|
||||
|
||||
class GetMediaMetaDataMediaContainerTypedDict(TypedDict):
|
||||
size: float
|
||||
size: int
|
||||
r"""Number of media items returned in this response."""
|
||||
allow_sync: bool
|
||||
r"""Indicates whether syncing is allowed."""
|
||||
identifier: str
|
||||
@@ -1172,7 +1302,8 @@ class GetMediaMetaDataMediaContainerTypedDict(TypedDict):
|
||||
|
||||
|
||||
class GetMediaMetaDataMediaContainer(BaseModel):
|
||||
size: float
|
||||
size: int
|
||||
r"""Number of media items returned in this response."""
|
||||
|
||||
allow_sync: Annotated[bool, pydantic.Field(alias="allowSync")]
|
||||
r"""Indicates whether syncing is allowed."""
|
||||
|
||||
@@ -143,6 +143,7 @@ class GetRecentlyAddedFilterTypedDict(TypedDict):
|
||||
key: str
|
||||
title: str
|
||||
type: str
|
||||
advanced: NotRequired[bool]
|
||||
|
||||
|
||||
class GetRecentlyAddedFilter(BaseModel):
|
||||
@@ -156,6 +157,8 @@ class GetRecentlyAddedFilter(BaseModel):
|
||||
|
||||
type: str
|
||||
|
||||
advanced: Optional[bool] = None
|
||||
|
||||
|
||||
class GetRecentlyAddedActiveDirection(str, Enum):
|
||||
r"""The direction of the sort. Can be either `asc` or `desc`."""
|
||||
@@ -242,6 +245,7 @@ class GetRecentlyAddedTypeTypedDict(TypedDict):
|
||||
type: str
|
||||
title: str
|
||||
active: bool
|
||||
subtype: NotRequired[str]
|
||||
filter_: NotRequired[List[GetRecentlyAddedFilterTypedDict]]
|
||||
sort: NotRequired[List[GetRecentlyAddedSortTypedDict]]
|
||||
field: NotRequired[List[GetRecentlyAddedFieldTypedDict]]
|
||||
@@ -256,6 +260,8 @@ class GetRecentlyAddedType(BaseModel):
|
||||
|
||||
active: bool
|
||||
|
||||
subtype: Optional[str] = None
|
||||
|
||||
filter_: Annotated[
|
||||
Optional[List[GetRecentlyAddedFilter]], pydantic.Field(alias="Filter")
|
||||
] = None
|
||||
@@ -319,6 +325,8 @@ class GetRecentlyAddedHubsType(str, Enum):
|
||||
TV_SHOW = "show"
|
||||
SEASON = "season"
|
||||
EPISODE = "episode"
|
||||
ARTIST = "artist"
|
||||
ALBUM = "album"
|
||||
|
||||
|
||||
class FlattenSeasons(str, Enum):
|
||||
@@ -1225,7 +1233,7 @@ class GetRecentlyAddedMetadata(BaseModel):
|
||||
|
||||
|
||||
class GetRecentlyAddedMediaContainerTypedDict(TypedDict):
|
||||
size: float
|
||||
size: int
|
||||
offset: NotRequired[int]
|
||||
total_size: NotRequired[int]
|
||||
identifier: NotRequired[str]
|
||||
@@ -1238,7 +1246,7 @@ class GetRecentlyAddedMediaContainerTypedDict(TypedDict):
|
||||
|
||||
|
||||
class GetRecentlyAddedMediaContainer(BaseModel):
|
||||
size: float
|
||||
size: int
|
||||
|
||||
offset: Optional[int] = None
|
||||
|
||||
|
||||
@@ -140,6 +140,7 @@ class GetRecentlyAddedLibraryFilterTypedDict(TypedDict):
|
||||
key: str
|
||||
title: str
|
||||
type: str
|
||||
advanced: NotRequired[bool]
|
||||
|
||||
|
||||
class GetRecentlyAddedLibraryFilter(BaseModel):
|
||||
@@ -153,6 +154,8 @@ class GetRecentlyAddedLibraryFilter(BaseModel):
|
||||
|
||||
type: str
|
||||
|
||||
advanced: Optional[bool] = None
|
||||
|
||||
|
||||
class ActiveDirection(str, Enum):
|
||||
r"""The direction of the sort. Can be either `asc` or `desc`."""
|
||||
@@ -237,6 +240,7 @@ class GetRecentlyAddedLibraryTypeTypedDict(TypedDict):
|
||||
type: str
|
||||
title: str
|
||||
active: bool
|
||||
subtype: NotRequired[str]
|
||||
filter_: NotRequired[List[GetRecentlyAddedLibraryFilterTypedDict]]
|
||||
sort: NotRequired[List[SortTypedDict]]
|
||||
field: NotRequired[List[FieldTTypedDict]]
|
||||
@@ -251,6 +255,8 @@ class GetRecentlyAddedLibraryType(BaseModel):
|
||||
|
||||
active: bool
|
||||
|
||||
subtype: Optional[str] = None
|
||||
|
||||
filter_: Annotated[
|
||||
Optional[List[GetRecentlyAddedLibraryFilter]], pydantic.Field(alias="Filter")
|
||||
] = None
|
||||
|
||||
@@ -19,14 +19,14 @@ class SearchTypes(str, Enum):
|
||||
TV = "tv"
|
||||
|
||||
|
||||
class QueryParamIncludeCollections(int, Enum):
|
||||
class GetSearchAllLibrariesQueryParamIncludeCollections(int, Enum):
|
||||
r"""Whether to include collections in the search results."""
|
||||
|
||||
DISABLE = 0
|
||||
ENABLE = 1
|
||||
|
||||
|
||||
class QueryParamIncludeExternalMedia(int, Enum):
|
||||
class GetSearchAllLibrariesQueryParamIncludeExternalMedia(int, Enum):
|
||||
r"""Whether to include external media in the search results."""
|
||||
|
||||
DISABLE = 0
|
||||
@@ -44,9 +44,11 @@ class GetSearchAllLibrariesRequestTypedDict(TypedDict):
|
||||
r"""A comma-separated list of search types to include. Valid values are: movies, music, otherVideos, people, tv.
|
||||
|
||||
"""
|
||||
include_collections: NotRequired[QueryParamIncludeCollections]
|
||||
include_collections: NotRequired[GetSearchAllLibrariesQueryParamIncludeCollections]
|
||||
r"""Whether to include collections in the search results."""
|
||||
include_external_media: NotRequired[QueryParamIncludeExternalMedia]
|
||||
include_external_media: NotRequired[
|
||||
GetSearchAllLibrariesQueryParamIncludeExternalMedia
|
||||
]
|
||||
r"""Whether to include external media in the search results."""
|
||||
|
||||
|
||||
@@ -79,17 +81,17 @@ class GetSearchAllLibrariesRequest(BaseModel):
|
||||
"""
|
||||
|
||||
include_collections: Annotated[
|
||||
Optional[QueryParamIncludeCollections],
|
||||
Optional[GetSearchAllLibrariesQueryParamIncludeCollections],
|
||||
pydantic.Field(alias="includeCollections"),
|
||||
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
||||
] = QueryParamIncludeCollections.DISABLE
|
||||
] = GetSearchAllLibrariesQueryParamIncludeCollections.DISABLE
|
||||
r"""Whether to include collections in the search results."""
|
||||
|
||||
include_external_media: Annotated[
|
||||
Optional[QueryParamIncludeExternalMedia],
|
||||
Optional[GetSearchAllLibrariesQueryParamIncludeExternalMedia],
|
||||
pydantic.Field(alias="includeExternalMedia"),
|
||||
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
|
||||
] = QueryParamIncludeExternalMedia.DISABLE
|
||||
] = GetSearchAllLibrariesQueryParamIncludeExternalMedia.DISABLE
|
||||
r"""Whether to include external media in the search results."""
|
||||
|
||||
|
||||
@@ -100,6 +102,8 @@ class GetSearchAllLibrariesType(str, Enum):
|
||||
TV_SHOW = "show"
|
||||
SEASON = "season"
|
||||
EPISODE = "episode"
|
||||
ARTIST = "artist"
|
||||
ALBUM = "album"
|
||||
|
||||
|
||||
class GetSearchAllLibrariesFlattenSeasons(str, Enum):
|
||||
|
||||
Reference in New Issue
Block a user