Compare commits

...

6 Commits

Author SHA1 Message Date
speakeasybot
d9f461ec33 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.542.3 2025-05-06 00:11:47 +00:00
speakeasybot
9b882120dd ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.542.0 2025-05-02 00:11:38 +00:00
speakeasybot
673a771f04 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.535.1 2025-04-19 17:13:50 +00:00
speakeasybot
216a94fe7d ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.535.1 2025-04-18 23:01:17 +00:00
speakeasybot
88d690ffc2 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.531.4 2025-04-15 00:11:29 +00:00
speakeasybot
48a739d923 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.529.1 2025-04-07 00:11:42 +00:00
68 changed files with 1807 additions and 2133 deletions

3
.gitignore vendored
View File

@@ -1,2 +1,5 @@
.DS_Store
**/.speakeasy/temp/
**/.speakeasy/logs/
.speakeasy/reports
# .gitignore

File diff suppressed because one or more lines are too long

View File

@@ -11,11 +11,12 @@ generation:
parameterOrderingFeb2024: true
requestResponseComponentNamesFeb2024: true
securityFeb2025: false
sharedErrorComponentsApr2025: false
auth:
oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false
go:
version: 0.20.0
version: 0.21.2
additionalDependencies: {}
allowUnknownFieldsInWeakUnions: false
clientServerStatusCodesAsErrors: true

View File

@@ -1,4 +1,4 @@
speakeasyVersion: 1.528.1
speakeasyVersion: 1.542.3
sources:
my-source:
sourceNamespace: my-source
@@ -9,19 +9,19 @@ sources:
- main
plexapi:
sourceNamespace: plexapi
sourceRevisionDigest: sha256:b5580df6ec4a386e12249ff13f35b916fe5559e101de4a816b53e47d6947f1a5
sourceBlobDigest: sha256:6108b6c35fbe7e9163ffe0c804170f5e3a6edb63b8e745454ea8ee249bd790c3
sourceRevisionDigest: sha256:37adc934a79841fb00cfe6ed569f5b1c88534b20202ecbde64b4e84828cee22a
sourceBlobDigest: sha256:ffb5b8d288111a763e4d035c8c9e37f5c89690d146b7297493b43a71d8298e6c
tags:
- latest
- speakeasy-sdk-regen-1743717350
- speakeasy-sdk-regen-1746490234
targets:
plexgo:
source: plexapi
sourceNamespace: plexapi
sourceRevisionDigest: sha256:b5580df6ec4a386e12249ff13f35b916fe5559e101de4a816b53e47d6947f1a5
sourceBlobDigest: sha256:6108b6c35fbe7e9163ffe0c804170f5e3a6edb63b8e745454ea8ee249bd790c3
sourceRevisionDigest: sha256:37adc934a79841fb00cfe6ed569f5b1c88534b20202ecbde64b4e84828cee22a
sourceBlobDigest: sha256:ffb5b8d288111a763e4d035c8c9e37f5c89690d146b7297493b43a71d8298e6c
codeSamplesNamespace: code-samples-go-plexgo
codeSamplesRevisionDigest: sha256:79894823370484c5d10a5e47db8b83467214c4416cf2ce03e19eac6a031c23b9
codeSamplesRevisionDigest: sha256:503a6f9a35834921087204d51ede9941cacedef3a61b322bbd2b269d24ccb970
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest

View File

@@ -1092,4 +1092,64 @@ Based on:
### Generated
- [go v0.20.0] .
### Releases
- [Go v0.20.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.20.0 - .
- [Go v0.20.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.20.0 - .
## 2025-04-07 00:10:20
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.529.1 (2.566.5) https://github.com/speakeasy-api/speakeasy
### Generated
- [go v0.20.1] .
### Releases
- [Go v0.20.1] https://github.com/LukeHagar/plexgo/releases/tag/v0.20.1 - .
## 2025-04-15 00:10:03
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.531.4 (2.570.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [go v0.20.2] .
### Releases
- [Go v0.20.2] https://github.com/LukeHagar/plexgo/releases/tag/v0.20.2 - .
## 2025-04-18 22:59:48
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.535.1 (2.585.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [go v0.20.3] .
### Releases
- [Go v0.20.3] https://github.com/LukeHagar/plexgo/releases/tag/v0.20.3 - .
## 2025-04-19 17:12:25
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.535.1 (2.585.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [go v0.21.0] .
### Releases
- [Go v0.21.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.21.0 - .
## 2025-05-02 00:10:13
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.542.0 (2.596.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [go v0.21.1] .
### Releases
- [Go v0.21.1] https://github.com/LukeHagar/plexgo/releases/tag/v0.21.1 - .
## 2025-05-06 00:10:17
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.542.3 (2.597.9) https://github.com/speakeasy-api/speakeasy
### Generated
- [go v0.21.2] .
### Releases
- [Go v0.21.2] https://github.com/LukeHagar/plexgo/releases/tag/v0.21.2 - .

View File

@@ -0,0 +1,11 @@
# Attributes
Attributes associated with the marker.
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | The identifier for the attributes. | 306970 |
| `Version` | **int64* | :heavy_minus_sign: | The version number of the marker attributes. | 4 |

View File

@@ -0,0 +1,15 @@
# Chapter
The thumbnail for the chapter
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ |
| `ID` | *int64* | :heavy_check_mark: | N/A | 4 |
| `Filter` | *string* | :heavy_check_mark: | N/A | thumb=4 |
| `Index` | *int64* | :heavy_check_mark: | N/A | 1 |
| `StartTimeOffset` | *int64* | :heavy_check_mark: | N/A | 0 |
| `EndTimeOffset` | *int64* | :heavy_check_mark: | N/A | 100100 |
| `Thumb` | *string* | :heavy_check_mark: | N/A | /library/media/46883/chapterImages/1 |

View File

@@ -7,6 +7,6 @@ The filter query string for country media items.
| Field | Type | Required | Description | Example |
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | N/A | 259 |
| `ID` | *int* | :heavy_check_mark: | N/A | 259 |
| `Tag` | *string* | :heavy_check_mark: | The country of origin of this media item | United States of America |
| `Filter` | **string* | :heavy_minus_sign: | N/A | country=19 |

View File

@@ -0,0 +1,8 @@
# Extras
## Fields
| Field | Type | Required | Description | Example |
| ----------------------- | ----------------------- | ----------------------- | ----------------------- | ----------------------- |
| `Size` | **int64* | :heavy_minus_sign: | The size of the extras. | 1 |

View File

@@ -3,26 +3,26 @@
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
| `AllowSync` | *bool* | :heavy_check_mark: | N/A | true |
| `Art` | *string* | :heavy_check_mark: | N/A | /:/resources/movie-fanart.jpg |
| `Composite` | *string* | :heavy_check_mark: | N/A | /library/sections/1/composite/1705615584 |
| `Filters` | *bool* | :heavy_check_mark: | N/A | true |
| `Refreshing` | *bool* | :heavy_check_mark: | N/A | false |
| `Thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/movie.png |
| `Key` | *string* | :heavy_check_mark: | N/A | 1 |
| `Type` | *string* | :heavy_check_mark: | N/A | movie |
| `Title` | *string* | :heavy_check_mark: | N/A | Movies |
| `Agent` | *string* | :heavy_check_mark: | N/A | tv.plex.agents.movie |
| `Scanner` | *string* | :heavy_check_mark: | N/A | Plex Movie |
| `Language` | *string* | :heavy_check_mark: | N/A | en-US |
| `UUID` | *string* | :heavy_check_mark: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 |
| `UpdatedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
| `CreatedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
| `ScannedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
| `Content` | *bool* | :heavy_check_mark: | N/A | true |
| `Directory` | *bool* | :heavy_check_mark: | N/A | true |
| `ContentChangedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
| `Hidden` | *int* | :heavy_check_mark: | N/A | 0 |
| `Location` | [][operations.GetAllLibrariesLocation](../../models/operations/getalllibrarieslocation.md) | :heavy_check_mark: | N/A | |
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `AllowSync` | *bool* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
| `Art` | *string* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
| `Composite` | *string* | :heavy_check_mark: | The relative path to the composite media item. | /library/sections/1/composite/1743824484 |
| `Filters` | *bool* | :heavy_check_mark: | UNKNOWN | true |
| `Refreshing` | *bool* | :heavy_check_mark: | Indicates whether the library is currently being refreshed or updated | true |
| `Thumb` | *string* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png |
| `Key` | *string* | :heavy_check_mark: | The library key representing the unique identifier | 1 |
| `Type` | [operations.GetAllLibrariesType](../../models/operations/getalllibrariestype.md) | :heavy_check_mark: | N/A | movie |
| `Title` | *string* | :heavy_check_mark: | The title of the library | Movies |
| `Agent` | *string* | :heavy_check_mark: | The Plex agent used to match and retrieve media metadata. | tv.plex.agents.movie |
| `Scanner` | *string* | :heavy_check_mark: | UNKNOWN | Plex Movie |
| `Language` | *string* | :heavy_check_mark: | The Plex library language that has been set | en-US |
| `UUID` | *string* | :heavy_check_mark: | The universally unique identifier for the library. | e69655a2-ef48-4aba-bb19-01e7d3cc34d6 |
| `UpdatedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
| `CreatedAt` | **int64* | :heavy_minus_sign: | N/A | 1556281940 |
| `ScannedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
| `Content` | *bool* | :heavy_check_mark: | UNKNOWN | true |
| `Directory` | *bool* | :heavy_check_mark: | UNKNOWN | true |
| `ContentChangedAt` | *int64* | :heavy_check_mark: | Timestamp (in seconds) representing the last time the content was modified.<br/>NOTE: Some Plex server have some absurd values for this field, like 8457612157633039800 so it should be int64<br/> | 9173960 |
| `Hidden` | [*operations.Hidden](../../models/operations/hidden.md) | :heavy_minus_sign: | The Plex library visibility setting | 1 |
| `Location` | [][operations.GetAllLibrariesLocation](../../models/operations/getalllibrarieslocation.md) | :heavy_check_mark: | N/A | |

View File

@@ -3,7 +3,7 @@
## Fields
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `ID` | *int* | :heavy_check_mark: | N/A | 1 |
| `Path` | *string* | :heavy_check_mark: | N/A | /movies |
| Field | Type | Required | Description | Example |
| --------------------------- | --------------------------- | --------------------------- | --------------------------- | --------------------------- |
| `ID` | *int* | :heavy_check_mark: | The ID of the location. | 1 |
| `Path` | *string* | :heavy_check_mark: | The path to the media item. | /Movies |

View File

@@ -5,7 +5,7 @@
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
| `Size` | *int* | :heavy_check_mark: | N/A | 5 |
| `AllowSync` | *bool* | :heavy_check_mark: | N/A | false |
| `Title1` | *string* | :heavy_check_mark: | N/A | Plex Library |
| `Directory` | [][operations.GetAllLibrariesDirectory](../../models/operations/getalllibrariesdirectory.md) | :heavy_check_mark: | N/A | |
| `Size` | *int* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
| `AllowSync` | *bool* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
| `Title1` | *string* | :heavy_check_mark: | The primary title of the media container. | TV Series |
| `Directory` | [][operations.GetAllLibrariesDirectory](../../models/operations/getalllibrariesdirectory.md) | :heavy_minus_sign: | N/A | |

View File

@@ -5,6 +5,6 @@ The libraries available on the Server
## Fields
| Field | Type | Required | Description |
| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `MediaContainer` | [operations.GetAllLibrariesMediaContainer](../../models/operations/getalllibrariesmediacontainer.md) | :heavy_check_mark: | N/A |
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `MediaContainer` | [*operations.GetAllLibrariesMediaContainer](../../models/operations/getalllibrariesmediacontainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -0,0 +1,15 @@
# GetAllLibrariesType
The library type
## Values
| Name | Value |
| ---------------------------- | ---------------------------- |
| `GetAllLibrariesTypeMovie` | movie |
| `GetAllLibrariesTypeTvShow` | show |
| `GetAllLibrariesTypeSeason` | season |
| `GetAllLibrariesTypeEpisode` | episode |
| `GetAllLibrariesTypeArtist` | artist |
| `GetAllLibrariesTypeAlbum` | album |

View File

@@ -3,54 +3,56 @@
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
| `StreamType` | *int* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
| `Default` | **bool* | :heavy_minus_sign: | Indicates if this stream is default. | true |
| `Codec` | *string* | :heavy_check_mark: | Codec used by the stream. | hevc |
| `Index` | *int* | :heavy_check_mark: | Index of the stream. | 0 |
| `Bitrate` | **int* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
| `Language` | **string* | :heavy_minus_sign: | Language of the stream. | English |
| `LanguageTag` | **string* | :heavy_minus_sign: | Language tag (e.g., en). | en |
| `LanguageCode` | **string* | :heavy_minus_sign: | ISO language code. | eng |
| `HeaderCompression` | **bool* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
| `DOVIBLCompatID` | **int* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
| `DOVIBLPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
| `DOVIELPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
| `DOVILevel` | **int* | :heavy_minus_sign: | Dolby Vision level. | 6 |
| `DOVIPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
| `DOVIProfile` | **int* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
| `DOVIRPUPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
| `DOVIVersion` | **string* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
| `BitDepth` | **int* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
| `ChromaLocation` | **string* | :heavy_minus_sign: | Chroma sample location. | topleft |
| `ChromaSubsampling` | **string* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
| `CodedHeight` | **int* | :heavy_minus_sign: | Coded video height. | 1608 |
| `CodedWidth` | **int* | :heavy_minus_sign: | Coded video width. | 3840 |
| `ClosedCaptions` | **bool* | :heavy_minus_sign: | N/A | true |
| `ColorPrimaries` | **string* | :heavy_minus_sign: | Color primaries used. | bt2020 |
| `ColorRange` | **string* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
| `ColorSpace` | **string* | :heavy_minus_sign: | Color space. | bt2020nc |
| `ColorTrc` | **string* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
| `FrameRate` | **float32* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
| `Height` | **int* | :heavy_minus_sign: | Height of the video stream. | 1602 |
| `Level` | **int* | :heavy_minus_sign: | Video level. | 150 |
| `Original` | **bool* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
| `HasScalingMatrix` | **bool* | :heavy_minus_sign: | N/A | false |
| `Profile` | **string* | :heavy_minus_sign: | Video profile. | main 10 |
| `ScanType` | **string* | :heavy_minus_sign: | N/A | progressive |
| `EmbeddedInVideo` | **string* | :heavy_minus_sign: | N/A | progressive |
| `RefFrames` | **int* | :heavy_minus_sign: | Number of reference frames. | 1 |
| `Width` | **int* | :heavy_minus_sign: | Width of the video stream. | 3840 |
| `DisplayTitle` | *string* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `ExtendedDisplayTitle` | *string* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `Selected` | **bool* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
| `Forced` | **bool* | :heavy_minus_sign: | N/A | true |
| `Channels` | **int* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
| `AudioChannelLayout` | **string* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
| `SamplingRate` | **int* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
| `CanAutoSync` | **bool* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
| `HearingImpaired` | **bool* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
| `Dub` | **bool* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
| `Title` | **string* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
| `StreamType` | [operations.GetAllMediaLibraryStreamType](../../models/operations/getallmedialibrarystreamtype.md) | :heavy_check_mark: | Stream type:<br/> - 1 = video<br/> - 2 = audio<br/> - 3 = subtitle<br/> | 1 |
| `Format` | **string* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
| `Default` | **bool* | :heavy_minus_sign: | Indicates if this stream is default. | true |
| `Codec` | *string* | :heavy_check_mark: | Codec used by the stream. | hevc |
| `Index` | **int* | :heavy_minus_sign: | Index of the stream. | 0 |
| `Bitrate` | **int* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
| `Language` | **string* | :heavy_minus_sign: | Language of the stream. | English |
| `LanguageTag` | **string* | :heavy_minus_sign: | Language tag (e.g., en). | en |
| `LanguageCode` | **string* | :heavy_minus_sign: | ISO language code. | eng |
| `HeaderCompression` | **bool* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
| `DOVIBLCompatID` | **int* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
| `DOVIBLPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
| `DOVIELPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
| `DOVILevel` | **int* | :heavy_minus_sign: | Dolby Vision level. | 6 |
| `DOVIPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
| `DOVIProfile` | **int* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
| `DOVIRPUPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
| `DOVIVersion` | **string* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
| `BitDepth` | **int* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
| `ChromaLocation` | **string* | :heavy_minus_sign: | Chroma sample location. | topleft |
| `ChromaSubsampling` | **string* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
| `CodedHeight` | **int* | :heavy_minus_sign: | Coded video height. | 1608 |
| `CodedWidth` | **int* | :heavy_minus_sign: | Coded video width. | 3840 |
| `ClosedCaptions` | **bool* | :heavy_minus_sign: | N/A | true |
| `ColorPrimaries` | **string* | :heavy_minus_sign: | Color primaries used. | bt2020 |
| `ColorRange` | **string* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
| `ColorSpace` | **string* | :heavy_minus_sign: | Color space. | bt2020nc |
| `ColorTrc` | **string* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
| `FrameRate` | **float32* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
| `Key` | **string* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
| `Height` | **int* | :heavy_minus_sign: | Height of the video stream. | 1602 |
| `Level` | **int* | :heavy_minus_sign: | Video level. | 150 |
| `Original` | **bool* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
| `HasScalingMatrix` | **bool* | :heavy_minus_sign: | N/A | false |
| `Profile` | **string* | :heavy_minus_sign: | Video profile. | main 10 |
| `ScanType` | **string* | :heavy_minus_sign: | N/A | progressive |
| `EmbeddedInVideo` | **string* | :heavy_minus_sign: | N/A | progressive |
| `RefFrames` | **int* | :heavy_minus_sign: | Number of reference frames. | 1 |
| `Width` | **int* | :heavy_minus_sign: | Width of the video stream. | 3840 |
| `DisplayTitle` | *string* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `ExtendedDisplayTitle` | *string* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `Selected` | **bool* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
| `Forced` | **bool* | :heavy_minus_sign: | N/A | true |
| `Channels` | **int* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
| `AudioChannelLayout` | **string* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
| `SamplingRate` | **int* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
| `CanAutoSync` | **bool* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
| `HearingImpaired` | **bool* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
| `Dub` | **bool* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
| `Title` | **string* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |

View File

@@ -0,0 +1,16 @@
# GetAllMediaLibraryStreamType
Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
## Values
| Name | Value |
| -------------------------------------- | -------------------------------------- |
| `GetAllMediaLibraryStreamTypeVideo` | 1 |
| `GetAllMediaLibraryStreamTypeAudio` | 2 |
| `GetAllMediaLibraryStreamTypeSubtitle` | 3 |

View File

@@ -3,7 +3,7 @@
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `IncludeDetails` | [*operations.IncludeDetails](../../models/operations/includedetails.md) | :heavy_minus_sign: | Whether or not to include details for a section (types, filters, and sorts). <br/>Only exists for backwards compatibility, media providers other than the server libraries have it on always.<br/> | |
| `SectionKey` | *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 |
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `IncludeDetails` | [*operations.IncludeDetails](../../models/operations/includedetails.md) | :heavy_minus_sign: | Whether or not to include details for a section (types, filters, and sorts).<br/>Only exists for backwards compatibility, media providers other than the server libraries have it on always.<br/> | |
| `SectionKey` | *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 |

View File

@@ -1,10 +1,12 @@
# GetMediaMetaDataCountry
The filter query string for country media items.
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- |
| `ID` | *int* | :heavy_check_mark: | The unique country identifier. | 58591 |
| `Filter` | *string* | :heavy_check_mark: | The filter string for the country. | country=58591 |
| `Tag` | *string* | :heavy_check_mark: | The country name. | United States of America |
| Field | Type | Required | Description | Example |
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
| `ID` | *int* | :heavy_check_mark: | N/A | 259 |
| `Tag` | *string* | :heavy_check_mark: | The country of origin of this media item | United States of America |
| `Filter` | **string* | :heavy_minus_sign: | N/A | country=19 |

View File

@@ -3,11 +3,10 @@
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | The unique role identifier. | 109501 |
| `Filter` | *string* | :heavy_check_mark: | The filter string for the role. | actor=109501 |
| `Tag` | *string* | :heavy_check_mark: | The actor's name. | Bob Odenkirk |
| `TagKey` | *string* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 |
| `Role` | **string* | :heavy_minus_sign: | The character name or role. | Jimmy McGill |
| `Thumb` | **string* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg |
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| `ID` | *int* | :heavy_check_mark: | Unique identifier for the director. | 126522 |
| `Tag` | *string* | :heavy_check_mark: | The role of Director | Danny Boyle |
| `Filter` | *string* | :heavy_check_mark: | The filter string used to query this director. | director=235876 |
| `TagKey` | **string* | :heavy_minus_sign: | A unique key associated with the director's tag, used for internal identification. | 5d776831151a60001f24d031 |
| `Thumb` | **string* | :heavy_minus_sign: | The URL of the thumbnail image for the director. | https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg |

View File

@@ -1,10 +1,12 @@
# GetMediaMetaDataGenre
The filter query string for similar items.
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | The unique genre identifier. | 1057 |
| `Filter` | *string* | :heavy_check_mark: | The filter string for the genre. | genre=1057 |
| `Tag` | *string* | :heavy_check_mark: | The genre name. | Crime |
| Field | Type | Required | Description | Example |
| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | N/A | 259 |
| `Tag` | *string* | :heavy_check_mark: | The genre name of this media-item<br/> | Crime |
| `Filter` | *string* | :heavy_check_mark: | N/A | genre=19 |

View File

@@ -3,8 +3,8 @@
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- |
| `Alt` | *string* | :heavy_check_mark: | Alternate text for the image. | Better Call Saul |
| `Type` | *string* | :heavy_check_mark: | The type of image (e.g., coverPoster, background, clearLogo). | coverPoster |
| `URL` | *string* | :heavy_check_mark: | The URL of the image. | /library/metadata/44288/thumb/1736487993 |
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
| `Alt` | *string* | :heavy_check_mark: | N/A | Episode 1 |
| `Type` | [operations.GetMediaMetaDataLibraryType](../../models/operations/getmediametadatalibrarytype.md) | :heavy_check_mark: | N/A | background |
| `URL` | *string* | :heavy_check_mark: | N/A | /library/metadata/45521/thumb/1644710589 |

View File

@@ -0,0 +1,11 @@
# GetMediaMetaDataLibraryType
## Values
| Name | Value |
| ---------------------------------------- | ---------------------------------------- |
| `GetMediaMetaDataLibraryTypeCoverPoster` | coverPoster |
| `GetMediaMetaDataLibraryTypeBackground` | background |
| `GetMediaMetaDataLibraryTypeSnapshot` | snapshot |
| `GetMediaMetaDataLibraryTypeClearLogo` | clearLogo |

View File

@@ -1,68 +1,83 @@
# GetMediaMetaDataMetadata
Unknown
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `RatingKey` | *string* | :heavy_check_mark: | The rating key of the metadata item. | 44288 |
| `ParentRatingKey` | **string* | :heavy_minus_sign: | The rating key of the parent of this metadata item. | 48047 |
| `GrandparentRatingKey` | **string* | :heavy_minus_sign: | The rating key of the grandparent of this metadata item. | 45520 |
| `ParentGUID` | **string* | :heavy_minus_sign: | A GUID identifying the parent entity (e.g., season) for the item. | plex://season/618b89208dde18df707ad15c |
| `GrandparentGUID` | **string* | :heavy_minus_sign: | A GUID identifying the grandparent entity (e.g., show). | plex://show/5e16253691c20300412003a8 |
| `GrandparentSlug` | **string* | :heavy_minus_sign: | A URL-friendly identifier (slug) for the grandparent entity. | alice-in-borderland-2020 |
| `GrandparentKey` | **string* | :heavy_minus_sign: | A key identifying the grandparent metadata in the library. | /library/metadata/45520 |
| `ParentKey` | **string* | :heavy_minus_sign: | A key identifying the parent metadata in the library. | /library/metadata/48047 |
| `Key` | *string* | :heavy_check_mark: | The API key to access metadata details. | /library/metadata/44288/children |
| `GUID` | *string* | :heavy_check_mark: | The globally unique identifier for the item. | plex://show/5d9c08254eefaa001f5d6dcb |
| `Slug` | **string* | :heavy_minus_sign: | A URL-friendly identifier for the item. | better-call-saul |
| `Studio` | **string* | :heavy_minus_sign: | The studio that produced the content. | Sony Pictures Television |
| `Type` | *string* | :heavy_check_mark: | The type of content (e.g., show, movie). | show |
| `Title` | *string* | :heavy_check_mark: | The title of the content. | Better Call Saul |
| `OriginalTitle` | **string* | :heavy_minus_sign: | The original title of the content. | Wicked: Part I |
| `LibrarySectionTitle` | *string* | :heavy_check_mark: | The title of the library section. | TV Series |
| `LibrarySectionID` | *int64* | :heavy_check_mark: | The ID of the library section. | 2 |
| `LibrarySectionKey` | *string* | :heavy_check_mark: | The key of the library section. | /library/sections/2 |
| `ContentRating` | **string* | :heavy_minus_sign: | The content rating (e.g., TV-MA). | TV-MA |
| `Summary` | *string* | :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. |
| `Index` | **int64* | :heavy_minus_sign: | The index or order of the item. | 1 |
| `GrandparentTitle` | **string* | :heavy_minus_sign: | The title of the grandparent entity (typically the show's title). | Alice in Borderland |
| `ParentTitle` | **string* | :heavy_minus_sign: | The title of the parent entity (typically the season's title). | Season 2 |
| `AudienceRating` | **float32* | :heavy_minus_sign: | The audience rating for the content. | 8.7 |
| `ViewCount` | **int64* | :heavy_minus_sign: | The number of times the item has been viewed. | 4 |
| `SkipCount` | **int64* | :heavy_minus_sign: | The number of times the item has been skipped. | 1 |
| `LastViewedAt` | **int64* | :heavy_minus_sign: | Unix timestamp of when the item was last viewed. | 1625764795 |
| `Year` | *int* | :heavy_check_mark: | The release year. | 2015 |
| `Rating` | **float32* | :heavy_minus_sign: | The general rating | 6 |
| `RatingImage` | **string* | :heavy_minus_sign: | The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image). | rottentomatoes://image.rating.ripe |
| `Tagline` | **string* | :heavy_minus_sign: | The tagline of the content. | Make the call |
| `ChapterSource` | **string* | :heavy_minus_sign: | N/A | media |
| `PrimaryExtraKey` | **string* | :heavy_minus_sign: | N/A | /library/metadata/134704 |
| `Thumb` | *string* | :heavy_check_mark: | URL of the thumbnail image. | /library/metadata/44288/thumb/1736487993 |
| `Art` | *string* | :heavy_check_mark: | URL of the art image. | /library/metadata/44288/art/1736487993 |
| `Theme` | **string* | :heavy_minus_sign: | URL of the theme image. | /library/metadata/44288/theme/1736487993 |
| `Duration` | *int* | :heavy_check_mark: | Duration of the content in milliseconds. | 2700000 |
| `OriginallyAvailableAt` | [*types.Date](../../types/date.md) | :heavy_minus_sign: | The original release date. | 2015-02-08 |
| `LeafCount` | **int64* | :heavy_minus_sign: | The total number of episodes (or leaves). | 63 |
| `ViewedLeafCount` | **int64* | :heavy_minus_sign: | The number of episodes that have been viewed. | 4 |
| `ChildCount` | **int* | :heavy_minus_sign: | The number of child items. | 6 |
| `AddedAt` | *int64* | :heavy_check_mark: | N/A | 1556281940 |
| `UpdatedAt` | *int64* | :heavy_check_mark: | N/A | 1556281940 |
| `AudienceRatingImage` | **string* | :heavy_minus_sign: | The URL for the audience rating image. | themoviedb://image.rating |
| `ParentIndex` | **int64* | :heavy_minus_sign: | The index number of the parent entity, which could indicate its order or position. | 2 |
| `ParentThumb` | **string* | :heavy_minus_sign: | The URL of the parent's thumbnail image. | /library/metadata/48047/thumb/1671800243 |
| `GrandparentThumb` | **string* | :heavy_minus_sign: | The URL of the grandparent's thumbnail image. | /library/metadata/45520/thumb/1736488003 |
| `GrandparentArt` | **string* | :heavy_minus_sign: | The URL of the grandparent's art image. | /library/metadata/45520/art/1736488003 |
| `Media` | [][operations.GetMediaMetaDataMedia](../../models/operations/getmediametadatamedia.md) | :heavy_minus_sign: | N/A | |
| `Image` | [][operations.GetMediaMetaDataImage](../../models/operations/getmediametadataimage.md) | :heavy_check_mark: | An array of image objects. | |
| `UltraBlurColors` | [operations.GetMediaMetaDataUltraBlurColors](../../models/operations/getmediametadataultrablurcolors.md) | :heavy_check_mark: | N/A | |
| `Genre` | [][operations.GetMediaMetaDataGenre](../../models/operations/getmediametadatagenre.md) | :heavy_minus_sign: | An array of genre tags. | |
| `Country` | [][operations.GetMediaMetaDataCountry](../../models/operations/getmediametadatacountry.md) | :heavy_minus_sign: | An array of country tags. | |
| `Guids` | [][operations.GetMediaMetaDataGuids](../../models/operations/getmediametadataguids.md) | :heavy_minus_sign: | An array of GUID objects. | |
| `Ratings` | [][operations.Ratings](../../models/operations/ratings.md) | :heavy_minus_sign: | An array of rating objects. | |
| `Role` | [][operations.GetMediaMetaDataRole](../../models/operations/getmediametadatarole.md) | :heavy_minus_sign: | An array of Actor roles. | |
| `Director` | [][operations.GetMediaMetaDataDirector](../../models/operations/getmediametadatadirector.md) | :heavy_minus_sign: | An array of Director roles. | |
| `Writer` | [][operations.GetMediaMetaDataWriter](../../models/operations/getmediametadatawriter.md) | :heavy_minus_sign: | An array of Writer roles. | |
| `Producer` | [][operations.GetMediaMetaDataProducer](../../models/operations/getmediametadataproducer.md) | :heavy_minus_sign: | An array of Writer roles. | |
| `Similar` | [][operations.GetMediaMetaDataSimilar](../../models/operations/getmediametadatasimilar.md) | :heavy_minus_sign: | An array of similar content objects. | |
| `Location` | [][operations.GetMediaMetaDataLocation](../../models/operations/getmediametadatalocation.md) | :heavy_minus_sign: | An array of location objects. | |
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `RatingKey` | *string* | :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` | *string* | :heavy_check_mark: | The unique key for the media item. | /library/metadata/58683 |
| `GUID` | *string* | :heavy_check_mark: | The globally unique identifier for the media item. | plex://movie/5d7768ba96b655001fdc0408 |
| `Slug` | *string* | :heavy_check_mark: | A URLfriendly version of the media title. | 4-for-texas |
| `Studio` | **string* | :heavy_minus_sign: | The studio that produced the media item. | 20th Century Studios |
| `Type` | [operations.GetMediaMetaDataType](../../models/operations/getmediametadatatype.md) | :heavy_check_mark: | N/A | movie |
| `Title` | *string* | :heavy_check_mark: | The title of the media item. | Avatar: The Way of Water |
| `TitleSort` | *string* | :heavy_check_mark: | The sort title used for ordering media items. | Whale |
| `ContentRating` | **string* | :heavy_minus_sign: | The content rating for the media item. | PG-13 |
| `Summary` | *string* | :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` | *float32* | :heavy_check_mark: | The critic rating for the media item. | 7.6 |
| `AudienceRating` | *float64* | :heavy_check_mark: | The audience rating for the media item. | 9.2 |
| `Year` | **int* | :heavy_minus_sign: | The release year of the media item. | 2022 |
| `Tagline` | *string* | :heavy_check_mark: | A brief tagline for the media item. | Return to Pandora. |
| `Thumb` | *string* | :heavy_check_mark: | The thumbnail image URL for the media item. | /library/metadata/58683/thumb/1703239236 |
| `Art` | *string* | :heavy_check_mark: | The art image URL for the media item. | /library/metadata/58683/art/1703239236 |
| `Theme` | *string* | :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 |
| `LeafCount` | **int* | :heavy_minus_sign: | The number of leaf items (end nodes) under this media item. | 14 |
| `ViewedLeafCount` | **int* | :heavy_minus_sign: | The number of leaf items that have been viewed. | 0 |
| `ChildCount` | *int* | :heavy_check_mark: | The number of child items associated with this media item. | 1 |
| `SeasonCount` | *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 |
| `OriginallyAvailableAt` | [types.Date](../../types/date.md) | :heavy_check_mark: | The original release date of the media item. | 2022-12-14 |
| `AddedAt` | *int64* | :heavy_check_mark: | N/A | 1556281940 |
| `UpdatedAt` | **int64* | :heavy_minus_sign: | Unix epoch datetime in seconds | 1556281940 |
| `AudienceRatingImage` | **string* | :heavy_minus_sign: | The URL for the audience rating image. | rottentomatoes://image.rating.upright |
| `ChapterSource` | **string* | :heavy_minus_sign: | The source from which chapter data is derived. | media |
| `PrimaryExtraKey` | **string* | :heavy_minus_sign: | The primary extra key associated with this media item. | /library/metadata/58684 |
| `OriginalTitle` | **string* | :heavy_minus_sign: | The original title of the media item (if different). | 映画 ブラッククローバー 魔法帝の剣 |
| `ParentRatingKey` | **string* | :heavy_minus_sign: | The rating key of the parent media item. | 66 |
| `GrandparentRatingKey` | **string* | :heavy_minus_sign: | The rating key of the grandparent media item. | 66 |
| `ParentGUID` | **string* | :heavy_minus_sign: | The GUID of the parent media item. | plex://show/5d9c081b170e24001f2a7be4 |
| `GrandparentGUID` | **string* | :heavy_minus_sign: | The GUID of the grandparent media item. | plex://show/5d9c081b170e24001f2a7be4 |
| `GrandparentSlug` | **string* | :heavy_minus_sign: | The slug for the grandparent media item. | alice-in-borderland-2020 |
| `GrandparentKey` | **string* | :heavy_minus_sign: | The key of the grandparent media item. | /library/metadata/66 |
| `ParentKey` | **string* | :heavy_minus_sign: | The key of the parent media item. | /library/metadata/66 |
| `GrandparentTitle` | **string* | :heavy_minus_sign: | The title of the grandparent media item. | Caprica |
| `GrandparentThumb` | **string* | :heavy_minus_sign: | The thumbnail URL for the grandparent media item. | /library/metadata/66/thumb/1705716261 |
| `GrandparentTheme` | **string* | :heavy_minus_sign: | The theme URL for the grandparent media item. | /library/metadata/66/theme/1705716261 |
| `GrandparentArt` | **string* | :heavy_minus_sign: | The art URL for the grandparent media item. | /library/metadata/66/art/1705716261 |
| `ParentTitle` | **string* | :heavy_minus_sign: | The title of the parent media item. | Caprica |
| `ParentIndex` | **int* | :heavy_minus_sign: | The index position of the parent media item. | 1 |
| `ParentThumb` | **string* | :heavy_minus_sign: | The thumbnail URL for the parent media item. | /library/metadata/66/thumb/1705716261 |
| `RatingImage` | **string* | :heavy_minus_sign: | The URL for the rating image. | rottentomatoes://image.rating.ripe |
| `ViewCount` | **int* | :heavy_minus_sign: | The number of times this media item has been viewed. | 1 |
| `ViewOffset` | **int* | :heavy_minus_sign: | The current playback offset (in milliseconds). | 5222500 |
| `SkipCount` | **int* | :heavy_minus_sign: | The number of times this media item has been skipped. | 1 |
| `Subtype` | **string* | :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 |
| `LastRatedAt` | **int64* | :heavy_minus_sign: | The Unix timestamp representing the last time the item was rated. | 1721813113 |
| `CreatedAtAccuracy` | **string* | :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 |
| `CreatedAtTZOffset` | **string* | :heavy_minus_sign: | The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC. | 0 |
| `LastViewedAt` | **int* | :heavy_minus_sign: | Unix timestamp for when the media item was last viewed. | 1682752242 |
| `UserRating` | **float32* | :heavy_minus_sign: | The rating provided by a user for the item. This value is expressed as a decimal number. | 10 |
| `Image` | [][operations.GetMediaMetaDataImage](../../models/operations/getmediametadataimage.md) | :heavy_minus_sign: | N/A | |
| `UltraBlurColors` | [*operations.GetMediaMetaDataUltraBlurColors](../../models/operations/getmediametadataultrablurcolors.md) | :heavy_minus_sign: | N/A | |
| `LibrarySectionID` | *int64* | :heavy_check_mark: | The identifier for the library section. | 1 |
| `LibrarySectionTitle` | *string* | :heavy_check_mark: | The title of the library section. | Movies |
| `LibrarySectionKey` | *string* | :heavy_check_mark: | The key corresponding to the library section. | /library/sections/1 |
| `Media` | [][operations.GetMediaMetaDataMedia](../../models/operations/getmediametadatamedia.md) | :heavy_minus_sign: | N/A | |
| `Genre` | [][operations.GetMediaMetaDataGenre](../../models/operations/getmediametadatagenre.md) | :heavy_minus_sign: | N/A | |
| `Country` | [][operations.GetMediaMetaDataCountry](../../models/operations/getmediametadatacountry.md) | :heavy_minus_sign: | N/A | |
| `Director` | [][operations.GetMediaMetaDataDirector](../../models/operations/getmediametadatadirector.md) | :heavy_minus_sign: | N/A | |
| `Writer` | [][operations.GetMediaMetaDataWriter](../../models/operations/getmediametadatawriter.md) | :heavy_minus_sign: | N/A | |
| `Producer` | [][operations.GetMediaMetaDataProducer](../../models/operations/getmediametadataproducer.md) | :heavy_minus_sign: | N/A | |
| `Role` | [][operations.GetMediaMetaDataRole](../../models/operations/getmediametadatarole.md) | :heavy_minus_sign: | N/A | |
| `Guids` | [][operations.GetMediaMetaDataGuids](../../models/operations/getmediametadataguids.md) | :heavy_minus_sign: | N/A | |
| `Ratings` | [][operations.Ratings](../../models/operations/ratings.md) | :heavy_minus_sign: | N/A | |
| `Similar` | [][operations.GetMediaMetaDataSimilar](../../models/operations/getmediametadatasimilar.md) | :heavy_minus_sign: | N/A | |
| `Location` | [][operations.GetMediaMetaDataLocation](../../models/operations/getmediametadatalocation.md) | :heavy_minus_sign: | N/A | |
| `Chapter` | [][operations.Chapter](../../models/operations/chapter.md) | :heavy_minus_sign: | N/A | |
| `Marker` | [][operations.Marker](../../models/operations/marker.md) | :heavy_minus_sign: | N/A | |
| `Extras` | [*operations.Extras](../../models/operations/extras.md) | :heavy_minus_sign: | N/A | |

View File

@@ -3,11 +3,11 @@
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | The unique role identifier. | 109501 |
| `Filter` | *string* | :heavy_check_mark: | The filter string for the role. | actor=109501 |
| `Tag` | *string* | :heavy_check_mark: | The actor's name. | Bob Odenkirk |
| `TagKey` | *string* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 |
| `Role` | **string* | :heavy_minus_sign: | The character name or role. | Jimmy McGill |
| `Thumb` | **string* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg |
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | Unique identifier for the actor or role. | 126522 |
| `Tag` | *string* | :heavy_check_mark: | The display tag for the actor (typically the actor's name). | Teller |
| `Role` | **string* | :heavy_minus_sign: | The role played by the actor in the media item. | Self - Judge |
| `Filter` | *string* | :heavy_check_mark: | The filter string used to query this actor. For example, it may indicate that this is an actor with a given key. | actor=126522 |
| `TagKey` | **string* | :heavy_minus_sign: | A unique key associated with the actor's tag, used for internal identification. | 5d77683d85719b001f3a535e |
| `Thumb` | **string* | :heavy_minus_sign: | The URL of the thumbnail image for the actor. | https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg |

View File

@@ -3,54 +3,56 @@
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
| `StreamType` | *int* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
| `Default` | **bool* | :heavy_minus_sign: | Indicates if this stream is default. | true |
| `Codec` | *string* | :heavy_check_mark: | Codec used by the stream. | hevc |
| `Index` | *int* | :heavy_check_mark: | Index of the stream. | 0 |
| `Bitrate` | **int* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
| `Language` | **string* | :heavy_minus_sign: | Language of the stream. | English |
| `LanguageTag` | **string* | :heavy_minus_sign: | Language tag (e.g., en). | en |
| `LanguageCode` | **string* | :heavy_minus_sign: | ISO language code. | eng |
| `HeaderCompression` | **bool* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
| `DOVIBLCompatID` | **int* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
| `DOVIBLPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
| `DOVIELPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
| `DOVILevel` | **int* | :heavy_minus_sign: | Dolby Vision level. | 6 |
| `DOVIPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
| `DOVIProfile` | **int* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
| `DOVIRPUPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
| `DOVIVersion` | **string* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
| `BitDepth` | **int* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
| `ChromaLocation` | **string* | :heavy_minus_sign: | Chroma sample location. | topleft |
| `ChromaSubsampling` | **string* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
| `CodedHeight` | **int* | :heavy_minus_sign: | Coded video height. | 1608 |
| `CodedWidth` | **int* | :heavy_minus_sign: | Coded video width. | 3840 |
| `ClosedCaptions` | **bool* | :heavy_minus_sign: | N/A | true |
| `ColorPrimaries` | **string* | :heavy_minus_sign: | Color primaries used. | bt2020 |
| `ColorRange` | **string* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
| `ColorSpace` | **string* | :heavy_minus_sign: | Color space. | bt2020nc |
| `ColorTrc` | **string* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
| `FrameRate` | **float32* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
| `Height` | **int* | :heavy_minus_sign: | Height of the video stream. | 1602 |
| `Level` | **int* | :heavy_minus_sign: | Video level. | 150 |
| `Original` | **bool* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
| `HasScalingMatrix` | **bool* | :heavy_minus_sign: | N/A | false |
| `Profile` | **string* | :heavy_minus_sign: | Video profile. | main 10 |
| `ScanType` | **string* | :heavy_minus_sign: | N/A | progressive |
| `EmbeddedInVideo` | **string* | :heavy_minus_sign: | N/A | progressive |
| `RefFrames` | **int* | :heavy_minus_sign: | Number of reference frames. | 1 |
| `Width` | **int* | :heavy_minus_sign: | Width of the video stream. | 3840 |
| `DisplayTitle` | *string* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `ExtendedDisplayTitle` | *string* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `Selected` | **bool* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
| `Forced` | **bool* | :heavy_minus_sign: | N/A | true |
| `Channels` | **int* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
| `AudioChannelLayout` | **string* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
| `SamplingRate` | **int* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
| `CanAutoSync` | **bool* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
| `HearingImpaired` | **bool* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
| `Dub` | **bool* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
| `Title` | **string* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
| `StreamType` | [operations.GetMediaMetaDataStreamType](../../models/operations/getmediametadatastreamtype.md) | :heavy_check_mark: | Stream type:<br/> - 1 = video<br/> - 2 = audio<br/> - 3 = subtitle<br/> | 1 |
| `Format` | **string* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
| `Default` | **bool* | :heavy_minus_sign: | Indicates if this stream is default. | true |
| `Codec` | *string* | :heavy_check_mark: | Codec used by the stream. | hevc |
| `Index` | **int* | :heavy_minus_sign: | Index of the stream. | 0 |
| `Bitrate` | **int* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
| `Language` | **string* | :heavy_minus_sign: | Language of the stream. | English |
| `LanguageTag` | **string* | :heavy_minus_sign: | Language tag (e.g., en). | en |
| `LanguageCode` | **string* | :heavy_minus_sign: | ISO language code. | eng |
| `HeaderCompression` | **bool* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
| `DOVIBLCompatID` | **int* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
| `DOVIBLPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
| `DOVIELPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
| `DOVILevel` | **int* | :heavy_minus_sign: | Dolby Vision level. | 6 |
| `DOVIPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
| `DOVIProfile` | **int* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
| `DOVIRPUPresent` | **bool* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
| `DOVIVersion` | **string* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
| `BitDepth` | **int* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
| `ChromaLocation` | **string* | :heavy_minus_sign: | Chroma sample location. | topleft |
| `ChromaSubsampling` | **string* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
| `CodedHeight` | **int* | :heavy_minus_sign: | Coded video height. | 1608 |
| `CodedWidth` | **int* | :heavy_minus_sign: | Coded video width. | 3840 |
| `ClosedCaptions` | **bool* | :heavy_minus_sign: | N/A | true |
| `ColorPrimaries` | **string* | :heavy_minus_sign: | Color primaries used. | bt2020 |
| `ColorRange` | **string* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
| `ColorSpace` | **string* | :heavy_minus_sign: | Color space. | bt2020nc |
| `ColorTrc` | **string* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
| `FrameRate` | **float32* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
| `Key` | **string* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
| `Height` | **int* | :heavy_minus_sign: | Height of the video stream. | 1602 |
| `Level` | **int* | :heavy_minus_sign: | Video level. | 150 |
| `Original` | **bool* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
| `HasScalingMatrix` | **bool* | :heavy_minus_sign: | N/A | false |
| `Profile` | **string* | :heavy_minus_sign: | Video profile. | main 10 |
| `ScanType` | **string* | :heavy_minus_sign: | N/A | progressive |
| `EmbeddedInVideo` | **string* | :heavy_minus_sign: | N/A | progressive |
| `RefFrames` | **int* | :heavy_minus_sign: | Number of reference frames. | 1 |
| `Width` | **int* | :heavy_minus_sign: | Width of the video stream. | 3840 |
| `DisplayTitle` | *string* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `ExtendedDisplayTitle` | *string* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `Selected` | **bool* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
| `Forced` | **bool* | :heavy_minus_sign: | N/A | true |
| `Channels` | **int* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
| `AudioChannelLayout` | **string* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
| `SamplingRate` | **int* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
| `CanAutoSync` | **bool* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
| `HearingImpaired` | **bool* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
| `Dub` | **bool* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
| `Title` | **string* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |

View File

@@ -0,0 +1,16 @@
# GetMediaMetaDataStreamType
Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
## Values
| Name | Value |
| ------------------------------------ | ------------------------------------ |
| `GetMediaMetaDataStreamTypeVideo` | 1 |
| `GetMediaMetaDataStreamTypeAudio` | 2 |
| `GetMediaMetaDataStreamTypeSubtitle` | 3 |

View File

@@ -0,0 +1,16 @@
# GetMediaMetaDataType
The type of media content
## Values
| Name | Value |
| ----------------------------- | ----------------------------- |
| `GetMediaMetaDataTypeMovie` | movie |
| `GetMediaMetaDataTypeTvShow` | show |
| `GetMediaMetaDataTypeSeason` | season |
| `GetMediaMetaDataTypeEpisode` | episode |
| `GetMediaMetaDataTypeArtist` | artist |
| `GetMediaMetaDataTypeAlbum` | album |

View File

@@ -3,9 +3,9 @@
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- |
| `TopLeft` | *string* | :heavy_check_mark: | The top-left color value. | 11333a |
| `TopRight` | *string* | :heavy_check_mark: | The top-right color value. | 1d2721 |
| `BottomRight` | *string* | :heavy_check_mark: | The bottom-right color value. | 5c451d |
| `BottomLeft` | *string* | :heavy_check_mark: | The bottom-left color value. | 372c10 |
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `TopLeft` | *string* | :heavy_check_mark: | N/A | 11333b |
| `TopRight` | *string* | :heavy_check_mark: | N/A | 0a232d |
| `BottomRight` | *string* | :heavy_check_mark: | N/A | 73958 |
| `BottomLeft` | *string* | :heavy_check_mark: | N/A | 1f5066 |

View File

@@ -3,11 +3,10 @@
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | The unique role identifier. | 109501 |
| `Filter` | *string* | :heavy_check_mark: | The filter string for the role. | actor=109501 |
| `Tag` | *string* | :heavy_check_mark: | The actor's name. | Bob Odenkirk |
| `TagKey` | *string* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 |
| `Role` | **string* | :heavy_minus_sign: | The character name or role. | Jimmy McGill |
| `Thumb` | **string* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg |
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `ID` | *int* | :heavy_check_mark: | Unique identifier for the writer. | 126522 |
| `Tag` | *string* | :heavy_check_mark: | The role of Writer | Jamie P. Hanson |
| `Filter` | *string* | :heavy_check_mark: | The filter string used to query this writer. | writer=126522 |
| `Thumb` | **string* | :heavy_minus_sign: | The URL of the thumbnail image for the writer. | https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg |
| `TagKey` | **string* | :heavy_minus_sign: | A unique key associated with the writers tag, used for internal identification. | 5d77683d85719b001f3a535e |

View File

@@ -0,0 +1,12 @@
# Hidden
The Plex library visibility setting
## Values
| Name | Value |
| ---------------------------------------- | ---------------------------------------- |
| `HiddenVisible` | 0 |
| `HiddenExcludeHomeScreen` | 1 |
| `HiddenExcludeHomeScreenAndGlobalSearch` | 2 |

View File

@@ -1,6 +1,6 @@
# IncludeDetails
Whether or not to include details for a section (types, filters, and sorts).
Whether or not to include details for a section (types, filters, and sorts).
Only exists for backwards compatibility, media providers other than the server libraries have it on always.

View File

@@ -1,10 +1,10 @@
# Level
An integer log level to write to the PMS log with.
0: Error
1: Warning
2: Info
3: Debug
An integer log level to write to the PMS log with.
0: Error
1: Warning
2: Info
3: Debug
4: Verbose

View File

@@ -3,8 +3,8 @@
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `Level` | [operations.Level](../../models/operations/level.md) | :heavy_check_mark: | An integer log level to write to the PMS log with. <br/>0: Error <br/>1: Warning <br/>2: Info <br/>3: Debug <br/>4: Verbose<br/> | |
| `Message` | *string* | :heavy_check_mark: | The text of the message to write to the log. | Test log message |
| `Source` | *string* | :heavy_check_mark: | a string indicating the source of the message. | Postman |
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `Level` | [operations.Level](../../models/operations/level.md) | :heavy_check_mark: | An integer log level to write to the PMS log with.<br/>0: Error<br/>1: Warning<br/>2: Info<br/>3: Debug<br/>4: Verbose<br/> | |
| `Message` | *string* | :heavy_check_mark: | The text of the message to write to the log. | Test log message |
| `Source` | *string* | :heavy_check_mark: | a string indicating the source of the message. | Postman |

View File

@@ -0,0 +1,15 @@
# Marker
The final status of the marker
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | N/A | 306970 |
| `Type` | *string* | :heavy_check_mark: | N/A | credits |
| `StartTimeOffset` | *int64* | :heavy_check_mark: | N/A | 4176050 |
| `EndTimeOffset` | *int64* | :heavy_check_mark: | N/A | 4393389 |
| `Final` | **bool* | :heavy_minus_sign: | N/A | true |
| `Attributes` | [*operations.Attributes](../../models/operations/attributes.md) | :heavy_minus_sign: | Attributes associated with the marker. | |

View File

@@ -5,7 +5,7 @@
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | Unique identifier for the producer. | 126522 |
| `ID` | *int* | :heavy_check_mark: | Unique identifier for the producer. | 126522 |
| `Filter` | *string* | :heavy_check_mark: | The filter string used to query this producer. | producer=126522 |
| `Tag` | *string* | :heavy_check_mark: | The name of the producer | Amelia Knapp |
| `TagKey` | **string* | :heavy_minus_sign: | A unique key associated with the producer's tag, used for internal identification. | 5d77683d85719b001f3a535e |

View File

@@ -1,8 +1,8 @@
# QueryParamForce
Force overwriting of duplicate playlists.
By default, a playlist file uploaded with the same path will overwrite the existing playlist.
The `force` argument is used to disable overwriting.
Force overwriting of duplicate playlists.
By default, a playlist file uploaded with the same path will overwrite the existing playlist.
The `force` argument is used to disable overwriting.
If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.

View File

@@ -6,10 +6,11 @@
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
| `StreamType` | *int* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
| `StreamType` | [operations.StreamType](../../models/operations/streamtype.md) | :heavy_check_mark: | Stream type:<br/> - 1 = video<br/> - 2 = audio<br/> - 3 = subtitle<br/> | 1 |
| `Format` | **string* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
| `Default` | **bool* | :heavy_minus_sign: | Indicates if this stream is default. | true |
| `Codec` | *string* | :heavy_check_mark: | Codec used by the stream. | hevc |
| `Index` | *int* | :heavy_check_mark: | Index of the stream. | 0 |
| `Index` | **int* | :heavy_minus_sign: | Index of the stream. | 0 |
| `Bitrate` | **int* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
| `Language` | **string* | :heavy_minus_sign: | Language of the stream. | English |
| `LanguageTag` | **string* | :heavy_minus_sign: | Language tag (e.g., en). | en |
@@ -34,6 +35,7 @@
| `ColorSpace` | **string* | :heavy_minus_sign: | Color space. | bt2020nc |
| `ColorTrc` | **string* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
| `FrameRate` | **float32* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
| `Key` | **string* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
| `Height` | **int* | :heavy_minus_sign: | Height of the video stream. | 1602 |
| `Level` | **int* | :heavy_minus_sign: | Video level. | 150 |
| `Original` | **bool* | :heavy_minus_sign: | Indicates if this is the original stream. | true |

View File

@@ -0,0 +1,16 @@
# StreamType
Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
## Values
| Name | Value |
| -------------------- | -------------------- |
| `StreamTypeVideo` | 1 |
| `StreamTypeAudio` | 2 |
| `StreamTypeSubtitle` | 3 |

View File

@@ -3,8 +3,8 @@
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Path` | *string* | :heavy_check_mark: | absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. <br/>If the `path` argument is a directory, that path will be scanned for playlist files to be processed. <br/>Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. <br/>The GUID of each playlist is based on the filename. <br/>If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. <br/>The GUID of each playlist is based on the filename.<br/> | /home/barkley/playlist.m3u |
| `Force` | [operations.QueryParamForce](../../models/operations/queryparamforce.md) | :heavy_check_mark: | Force overwriting of duplicate playlists. <br/>By default, a playlist file uploaded with the same path will overwrite the existing playlist. <br/>The `force` argument is used to disable overwriting. <br/>If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.<br/> | |
| `SectionID` | *int64* | :heavy_check_mark: | Possibly the section ID to upload the playlist to, we are not certain. | 1 |
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Path` | *string* | :heavy_check_mark: | absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server.<br/>If the `path` argument is a directory, that path will be scanned for playlist files to be processed.<br/>Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it.<br/>The GUID of each playlist is based on the filename.<br/>If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it.<br/>The GUID of each playlist is based on the filename.<br/> | /home/barkley/playlist.m3u |
| `Force` | [operations.QueryParamForce](../../models/operations/queryparamforce.md) | :heavy_check_mark: | Force overwriting of duplicate playlists.<br/>By default, a playlist file uploaded with the same path will overwrite the existing playlist.<br/>The `force` argument is used to disable overwriting.<br/>If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.<br/> | |
| `SectionID` | *int64* | :heavy_check_mark: | Possibly the section ID to upload the playlist to, we are not certain. | 1 |

View File

@@ -5,7 +5,7 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `ID` | *int64* | :heavy_check_mark: | Unique identifier for the writer. | 126522 |
| `ID` | *int* | :heavy_check_mark: | Unique identifier for the writer. | 126522 |
| `Filter` | *string* | :heavy_check_mark: | The filter string used to query this writer. | writer=126522 |
| `Tag` | *string* | :heavy_check_mark: | The role of Writer | Jamie P. Hanson |
| `TagKey` | **string* | :heavy_minus_sign: | A unique key associated with the writers tag, used for internal identification. | 5d77683d85719b001f3a535e |

View File

@@ -215,14 +215,14 @@ func main() {
## Library Details Endpoint
This endpoint provides comprehensive details about the library, focusing on organizational aspects rather than the content itself.
This endpoint provides comprehensive details about the library, focusing on organizational aspects rather than the content itself.
The details include:
### Directories
Organized into three categories:
- **Primary Directories**:
- **Primary Directories**:
- Used in some clients for quick access to media subsets (e.g., "All", "On Deck").
- Most can be replicated via media queries.
- Customizable by users.
@@ -284,12 +284,12 @@ func main() {
### Parameters
| Parameter | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
| `sectionKey` | *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 |
| `includeDetails` | [*operations.IncludeDetails](../../models/operations/includedetails.md) | :heavy_minus_sign: | Whether or not to include details for a section (types, filters, and sorts). <br/>Only exists for backwards compatibility, media providers other than the server libraries have it on always.<br/> | |
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
| Parameter | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
| `sectionKey` | *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 |
| `includeDetails` | [*operations.IncludeDetails](../../models/operations/includedetails.md) | :heavy_minus_sign: | Whether or not to include details for a section (types, filters, and sorts).<br/>Only exists for backwards compatibility, media providers other than the server libraries have it on always.<br/> | |
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
### Response

View File

@@ -48,13 +48,13 @@ func main() {
### Parameters
| Parameter | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
| `level` | [operations.Level](../../models/operations/level.md) | :heavy_check_mark: | An integer log level to write to the PMS log with. <br/>0: Error <br/>1: Warning <br/>2: Info <br/>3: Debug <br/>4: Verbose<br/> | |
| `message` | *string* | :heavy_check_mark: | The text of the message to write to the log. | Test log message |
| `source` | *string* | :heavy_check_mark: | a string indicating the source of the message. | Postman |
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
| Parameter | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
| `level` | [operations.Level](../../models/operations/level.md) | :heavy_check_mark: | An integer log level to write to the PMS log with.<br/>0: Error<br/>1: Warning<br/>2: Info<br/>3: Debug<br/>4: Verbose<br/> | |
| `message` | *string* | :heavy_check_mark: | The text of the message to write to the log. | Test log message |
| `source` | *string* | :heavy_check_mark: | a string indicating the source of the message. | Postman |
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
### Response
@@ -70,13 +70,13 @@ func main() {
## LogMultiLine
This endpoint allows for the batch addition of log entries to the main Plex Media Server log.
It accepts a text/plain request body, where each line represents a distinct log entry.
Each log entry consists of URL-encoded key-value pairs, specifying log attributes such as 'level', 'message', and 'source'.
This endpoint allows for the batch addition of log entries to the main Plex Media Server log.
It accepts a text/plain request body, where each line represents a distinct log entry.
Each log entry consists of URL-encoded key-value pairs, specifying log attributes such as 'level', 'message', and 'source'.
Log entries are separated by a newline character (`\n`).
Each entry's parameters should be URL-encoded to ensure accurate parsing and handling of special characters.
This method is efficient for logging multiple entries in a single API call, reducing the overhead of multiple individual requests.
Log entries are separated by a newline character (`\n`).
Each entry's parameters should be URL-encoded to ensure accurate parsing and handling of special characters.
This method is efficient for logging multiple entries in a single API call, reducing the overhead of multiple individual requests.
The 'level' parameter specifies the log entry's severity or importance, with the following integer values:
- `0`: Error - Critical issues that require immediate attention.

View File

@@ -3,9 +3,9 @@
## Overview
Playlists are ordered collections of media. They can be dumb (just a list of media) or smart (based on a media query, such as "all albums from 2017").
Playlists are ordered collections of media. They can be dumb (just a list of media) or smart (based on a media query, such as "all albums from 2017").
They can be organized in (optionally nesting) folders.
Retrieving a playlist, or its items, will trigger a refresh of its metadata.
Retrieving a playlist, or its items, will trigger a refresh of its metadata.
This may cause the duration and number of items to change.
@@ -500,13 +500,13 @@ func main() {
### Parameters
| Parameter | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
| `path` | *string* | :heavy_check_mark: | absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. <br/>If the `path` argument is a directory, that path will be scanned for playlist files to be processed. <br/>Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. <br/>The GUID of each playlist is based on the filename. <br/>If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. <br/>The GUID of each playlist is based on the filename.<br/> | /home/barkley/playlist.m3u |
| `force` | [operations.QueryParamForce](../../models/operations/queryparamforce.md) | :heavy_check_mark: | Force overwriting of duplicate playlists. <br/>By default, a playlist file uploaded with the same path will overwrite the existing playlist. <br/>The `force` argument is used to disable overwriting. <br/>If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.<br/> | |
| `sectionID` | *int64* | :heavy_check_mark: | Possibly the section ID to upload the playlist to, we are not certain. | 1 |
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
| Parameter | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
| `path` | *string* | :heavy_check_mark: | absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server.<br/>If the `path` argument is a directory, that path will be scanned for playlist files to be processed.<br/>Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it.<br/>The GUID of each playlist is based on the filename.<br/>If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it.<br/>The GUID of each playlist is based on the filename.<br/> | /home/barkley/playlist.m3u |
| `force` | [operations.QueryParamForce](../../models/operations/queryparamforce.md) | :heavy_check_mark: | Force overwriting of duplicate playlists.<br/>By default, a playlist file uploaded with the same path will overwrite the existing playlist.<br/>The `force` argument is used to disable overwriting.<br/>If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.<br/> | |
| `sectionID` | *int64* | :heavy_check_mark: | Possibly the section ID to upload the playlist to, we are not certain. | 1 |
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
### Response

View File

@@ -186,8 +186,8 @@ func UnmarshalJSON(b []byte, v interface{}, tag reflect.StructTag, topLevel bool
value, ok := unmarhsaled[fieldName]
if !ok {
defaultTag := field.Tag.Get("default")
if defaultTag != "" {
defaultTag, defaultOk := field.Tag.Lookup("default")
if defaultOk {
value = handleDefaultConstValue(defaultTag, fieldVal.Interface(), field.Tag)
ok = true
}
@@ -257,8 +257,8 @@ func marshalValue(v interface{}, tag reflect.StructTag) (json.RawMessage, error)
}
if isNil(reflect.TypeOf(v), reflect.ValueOf(v)) {
defaultTag := tag.Get("default")
if defaultTag != "" {
defaultTag, ok := tag.Lookup("default")
if ok {
return handleDefaultConstValue(defaultTag, v, tag), nil
}

View File

@@ -20,23 +20,6 @@ const (
func (e CreatePlaylistQueryParamType) ToPointer() *CreatePlaylistQueryParamType {
return &e
}
func (e *CreatePlaylistQueryParamType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "audio":
fallthrough
case "video":
fallthrough
case "photo":
*e = CreatePlaylistQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for CreatePlaylistQueryParamType: %v", v)
}
}
// Smart - whether the playlist is smart or not
type Smart int64

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -29,31 +27,6 @@ const (
func (e GetActorsLibraryQueryParamType) ToPointer() *GetActorsLibraryQueryParamType {
return &e
}
func (e *GetActorsLibraryQueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = GetActorsLibraryQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for GetActorsLibraryQueryParamType: %v", v)
}
}
type GetActorsLibraryRequest struct {
// The unique key of the Plex library.

View File

@@ -3,11 +3,62 @@
package operations
import (
"encoding/json"
"fmt"
"github.com/LukeHagar/plexgo/internal/utils"
"net/http"
)
// GetAllLibrariesType - The library type
type GetAllLibrariesType string
const (
GetAllLibrariesTypeMovie GetAllLibrariesType = "movie"
GetAllLibrariesTypeTvShow GetAllLibrariesType = "show"
GetAllLibrariesTypeSeason GetAllLibrariesType = "season"
GetAllLibrariesTypeEpisode GetAllLibrariesType = "episode"
GetAllLibrariesTypeArtist GetAllLibrariesType = "artist"
GetAllLibrariesTypeAlbum GetAllLibrariesType = "album"
)
func (e GetAllLibrariesType) ToPointer() *GetAllLibrariesType {
return &e
}
// Hidden - The Plex library visibility setting
type Hidden int
const (
HiddenVisible Hidden = 0
HiddenExcludeHomeScreen Hidden = 1
HiddenExcludeHomeScreenAndGlobalSearch Hidden = 2
)
func (e Hidden) ToPointer() *Hidden {
return &e
}
func (e *Hidden) UnmarshalJSON(data []byte) error {
var v int
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 0:
fallthrough
case 1:
fallthrough
case 2:
*e = Hidden(v)
return nil
default:
return fmt.Errorf("invalid value for Hidden: %v", v)
}
}
type GetAllLibrariesLocation struct {
ID int `json:"id"`
// The ID of the location.
ID int `json:"id"`
// The path to the media item.
Path string `json:"path"`
}
@@ -26,31 +77,58 @@ func (o *GetAllLibrariesLocation) GetPath() string {
}
type GetAllLibrariesDirectory struct {
AllowSync bool `json:"allowSync"`
Art string `json:"art"`
Composite string `json:"composite"`
Filters bool `json:"filters"`
Refreshing bool `json:"refreshing"`
Thumb string `json:"thumb"`
Key string `json:"key"`
Type string `json:"type"`
Title string `json:"title"`
Agent string `json:"agent"`
Scanner string `json:"scanner"`
Language string `json:"language"`
UUID string `json:"uuid"`
// Indicates whether syncing is allowed.
AllowSync bool `json:"allowSync"`
// URL for the background artwork of the media container.
Art string `json:"art"`
// The relative path to the composite media item.
Composite string `json:"composite"`
// UNKNOWN
Filters bool `json:"filters"`
// Indicates whether the library is currently being refreshed or updated
Refreshing bool `json:"refreshing"`
// URL for the thumbnail image of the media container.
Thumb string `json:"thumb"`
// The library key representing the unique identifier
Key string `json:"key"`
Type GetAllLibrariesType `json:"type"`
// The title of the library
Title string `json:"title"`
// The Plex agent used to match and retrieve media metadata.
Agent string `json:"agent"`
// UNKNOWN
Scanner string `json:"scanner"`
// The Plex library language that has been set
Language string `json:"language"`
// The universally unique identifier for the library.
UUID string `json:"uuid"`
// Unix epoch datetime in seconds
UpdatedAt int64 `json:"updatedAt"`
// Unix epoch datetime in seconds
CreatedAt int64 `json:"createdAt"`
UpdatedAt int64 `json:"updatedAt"`
CreatedAt *int64 `json:"createdAt,omitempty"`
// Unix epoch datetime in seconds
ScannedAt int64 `json:"scannedAt"`
Content bool `json:"content"`
Directory bool `json:"directory"`
// Unix epoch datetime in seconds
ContentChangedAt int64 `json:"contentChangedAt"`
Hidden int `json:"hidden"`
Location []GetAllLibrariesLocation `json:"Location"`
// UNKNOWN
Content bool `json:"content"`
// UNKNOWN
Directory bool `json:"directory"`
// Timestamp (in seconds) representing the last time the content was modified.
// NOTE: Some Plex server have some absurd values for this field, like 8457612157633039800 so it should be int64
//
ContentChangedAt int64 `json:"contentChangedAt"`
// The Plex library visibility setting
Hidden *Hidden `default:"0" json:"hidden"`
Location []GetAllLibrariesLocation `json:"Location"`
}
func (g GetAllLibrariesDirectory) MarshalJSON() ([]byte, error) {
return utils.MarshalJSON(g, "", false)
}
func (g *GetAllLibrariesDirectory) UnmarshalJSON(data []byte) error {
if err := utils.UnmarshalJSON(data, &g, "", false, false); err != nil {
return err
}
return nil
}
func (o *GetAllLibrariesDirectory) GetAllowSync() bool {
@@ -102,9 +180,9 @@ func (o *GetAllLibrariesDirectory) GetKey() string {
return o.Key
}
func (o *GetAllLibrariesDirectory) GetType() string {
func (o *GetAllLibrariesDirectory) GetType() GetAllLibrariesType {
if o == nil {
return ""
return GetAllLibrariesType("")
}
return o.Type
}
@@ -151,9 +229,9 @@ func (o *GetAllLibrariesDirectory) GetUpdatedAt() int64 {
return o.UpdatedAt
}
func (o *GetAllLibrariesDirectory) GetCreatedAt() int64 {
func (o *GetAllLibrariesDirectory) GetCreatedAt() *int64 {
if o == nil {
return 0
return nil
}
return o.CreatedAt
}
@@ -186,9 +264,9 @@ func (o *GetAllLibrariesDirectory) GetContentChangedAt() int64 {
return o.ContentChangedAt
}
func (o *GetAllLibrariesDirectory) GetHidden() int {
func (o *GetAllLibrariesDirectory) GetHidden() *Hidden {
if o == nil {
return 0
return nil
}
return o.Hidden
}
@@ -201,10 +279,13 @@ func (o *GetAllLibrariesDirectory) GetLocation() []GetAllLibrariesLocation {
}
type GetAllLibrariesMediaContainer struct {
Size int `json:"size"`
AllowSync bool `json:"allowSync"`
// Number of media items returned in this response.
Size int `json:"size"`
// Indicates whether syncing is allowed.
AllowSync bool `json:"allowSync"`
// The primary title of the media container.
Title1 string `json:"title1"`
Directory []GetAllLibrariesDirectory `json:"Directory"`
Directory []GetAllLibrariesDirectory `json:"Directory,omitempty"`
}
func (o *GetAllLibrariesMediaContainer) GetSize() int {
@@ -230,19 +311,19 @@ func (o *GetAllLibrariesMediaContainer) GetTitle1() string {
func (o *GetAllLibrariesMediaContainer) GetDirectory() []GetAllLibrariesDirectory {
if o == nil {
return []GetAllLibrariesDirectory{}
return nil
}
return o.Directory
}
// GetAllLibrariesResponseBody - The libraries available on the Server
type GetAllLibrariesResponseBody struct {
MediaContainer GetAllLibrariesMediaContainer `json:"MediaContainer"`
MediaContainer *GetAllLibrariesMediaContainer `json:"MediaContainer,omitempty"`
}
func (o *GetAllLibrariesResponseBody) GetMediaContainer() GetAllLibrariesMediaContainer {
func (o *GetAllLibrariesResponseBody) GetMediaContainer() *GetAllLibrariesMediaContainer {
if o == nil {
return GetAllLibrariesMediaContainer{}
return nil
}
return o.MediaContainer
}

View File

@@ -32,31 +32,6 @@ const (
func (e GetAllMediaLibraryQueryParamType) ToPointer() *GetAllMediaLibraryQueryParamType {
return &e
}
func (e *GetAllMediaLibraryQueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = GetAllMediaLibraryQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for GetAllMediaLibraryQueryParamType: %v", v)
}
}
// GetAllMediaLibraryQueryParamIncludeMeta - Adds the Meta object to the response
type GetAllMediaLibraryQueryParamIncludeMeta int
@@ -660,29 +635,6 @@ const (
func (e GetAllMediaLibraryLibraryType) ToPointer() *GetAllMediaLibraryLibraryType {
return &e
}
func (e *GetAllMediaLibraryLibraryType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "movie":
fallthrough
case "show":
fallthrough
case "season":
fallthrough
case "episode":
fallthrough
case "artist":
fallthrough
case "album":
*e = GetAllMediaLibraryLibraryType(v)
return nil
default:
return fmt.Errorf("invalid value for GetAllMediaLibraryLibraryType: %v", v)
}
}
type GetAllMediaLibraryLibraryResponseType string
@@ -696,25 +648,6 @@ const (
func (e GetAllMediaLibraryLibraryResponseType) ToPointer() *GetAllMediaLibraryLibraryResponseType {
return &e
}
func (e *GetAllMediaLibraryLibraryResponseType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "coverPoster":
fallthrough
case "background":
fallthrough
case "snapshot":
fallthrough
case "clearLogo":
*e = GetAllMediaLibraryLibraryResponseType(v)
return nil
default:
return fmt.Errorf("invalid value for GetAllMediaLibraryLibraryResponseType: %v", v)
}
}
type GetAllMediaLibraryImage struct {
Alt string `json:"alt"`
@@ -985,17 +918,39 @@ func (e *GetAllMediaLibraryHasThumbnail) UnmarshalJSON(data []byte) error {
}
}
// GetAllMediaLibraryStreamType - Stream type:
// - 1 = video
// - 2 = audio
// - 3 = subtitle
type GetAllMediaLibraryStreamType int
const (
GetAllMediaLibraryStreamTypeVideo GetAllMediaLibraryStreamType = 1
GetAllMediaLibraryStreamTypeAudio GetAllMediaLibraryStreamType = 2
GetAllMediaLibraryStreamTypeSubtitle GetAllMediaLibraryStreamType = 3
)
func (e GetAllMediaLibraryStreamType) ToPointer() *GetAllMediaLibraryStreamType {
return &e
}
type GetAllMediaLibraryStream struct {
// Unique stream identifier.
ID int64 `json:"id"`
// Stream type (1=video, 2=audio, 3=subtitle).
StreamType int `json:"streamType"`
// Stream type:
// - 1 = video
// - 2 = audio
// - 3 = subtitle
//
StreamType GetAllMediaLibraryStreamType `json:"streamType"`
// Format of the stream (e.g., srt).
Format *string `json:"format,omitempty"`
// Indicates if this stream is default.
Default *bool `json:"default,omitempty"`
// Codec used by the stream.
Codec string `json:"codec"`
// Index of the stream.
Index int `json:"index"`
Index *int `json:"index,omitempty"`
// Bitrate of the stream.
Bitrate *int `json:"bitrate,omitempty"`
// Language of the stream.
@@ -1043,6 +998,8 @@ type GetAllMediaLibraryStream struct {
ColorTrc *string `json:"colorTrc,omitempty"`
// Frame rate of the stream.
FrameRate *float32 `json:"frameRate,omitempty"`
// Key to access this stream part.
Key *string `json:"key,omitempty"`
// Height of the video stream.
Height *int `json:"height,omitempty"`
// Video level.
@@ -1088,13 +1045,20 @@ func (o *GetAllMediaLibraryStream) GetID() int64 {
return o.ID
}
func (o *GetAllMediaLibraryStream) GetStreamType() int {
func (o *GetAllMediaLibraryStream) GetStreamType() GetAllMediaLibraryStreamType {
if o == nil {
return 0
return GetAllMediaLibraryStreamType(0)
}
return o.StreamType
}
func (o *GetAllMediaLibraryStream) GetFormat() *string {
if o == nil {
return nil
}
return o.Format
}
func (o *GetAllMediaLibraryStream) GetDefault() *bool {
if o == nil {
return nil
@@ -1109,9 +1073,9 @@ func (o *GetAllMediaLibraryStream) GetCodec() string {
return o.Codec
}
func (o *GetAllMediaLibraryStream) GetIndex() int {
func (o *GetAllMediaLibraryStream) GetIndex() *int {
if o == nil {
return 0
return nil
}
return o.Index
}
@@ -1284,6 +1248,13 @@ func (o *GetAllMediaLibraryStream) GetFrameRate() *float32 {
return o.FrameRate
}
func (o *GetAllMediaLibraryStream) GetKey() *string {
if o == nil {
return nil
}
return o.Key
}
func (o *GetAllMediaLibraryStream) GetHeight() *int {
if o == nil {
return nil

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -29,31 +27,6 @@ const (
func (e GetCountriesLibraryQueryParamType) ToPointer() *GetCountriesLibraryQueryParamType {
return &e
}
func (e *GetCountriesLibraryQueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = GetCountriesLibraryQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for GetCountriesLibraryQueryParamType: %v", v)
}
}
type GetCountriesLibraryRequest struct {
// The unique key of the Plex library.

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -29,31 +27,6 @@ const (
func (e GetGenresLibraryQueryParamType) ToPointer() *GetGenresLibraryQueryParamType {
return &e
}
func (e *GetGenresLibraryQueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = GetGenresLibraryQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for GetGenresLibraryQueryParamType: %v", v)
}
}
type GetGenresLibraryRequest struct {
// The unique key of the Plex library.

View File

@@ -35,49 +35,6 @@ const (
func (e Tag) ToPointer() *Tag {
return &e
}
func (e *Tag) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "unwatched":
fallthrough
case "newest":
fallthrough
case "recentlyAdded":
fallthrough
case "recentlyViewed":
fallthrough
case "onDeck":
fallthrough
case "collection":
fallthrough
case "edition":
fallthrough
case "year":
fallthrough
case "decade":
fallthrough
case "director":
fallthrough
case "contentRating":
fallthrough
case "rating":
fallthrough
case "resolution":
fallthrough
case "firstCharacter":
fallthrough
case "folder":
fallthrough
case "albums":
*e = Tag(v)
return nil
default:
return fmt.Errorf("invalid value for Tag: %v", v)
}
}
// IncludeGuids - Adds the Guids object to the response
type IncludeGuids int
@@ -127,31 +84,6 @@ const (
func (e GetLibraryItemsQueryParamType) ToPointer() *GetLibraryItemsQueryParamType {
return &e
}
func (e *GetLibraryItemsQueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = GetLibraryItemsQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for GetLibraryItemsQueryParamType: %v", v)
}
}
// GetLibraryItemsQueryParamIncludeMeta - Adds the Meta object to the response
type GetLibraryItemsQueryParamIncludeMeta int
@@ -615,29 +547,6 @@ const (
func (e GetLibraryItemsLibraryType) ToPointer() *GetLibraryItemsLibraryType {
return &e
}
func (e *GetLibraryItemsLibraryType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "movie":
fallthrough
case "show":
fallthrough
case "season":
fallthrough
case "episode":
fallthrough
case "artist":
fallthrough
case "album":
*e = GetLibraryItemsLibraryType(v)
return nil
default:
return fmt.Errorf("invalid value for GetLibraryItemsLibraryType: %v", v)
}
}
// FlattenSeasons - Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
type FlattenSeasons string
@@ -651,23 +560,6 @@ const (
func (e FlattenSeasons) ToPointer() *FlattenSeasons {
return &e
}
func (e *FlattenSeasons) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "-1":
fallthrough
case "0":
fallthrough
case "1":
*e = FlattenSeasons(v)
return nil
default:
return fmt.Errorf("invalid value for FlattenSeasons: %v", v)
}
}
// EpisodeSort - Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
type EpisodeSort string
@@ -681,23 +573,6 @@ const (
func (e EpisodeSort) ToPointer() *EpisodeSort {
return &e
}
func (e *EpisodeSort) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "-1":
fallthrough
case "0":
fallthrough
case "1":
*e = EpisodeSort(v)
return nil
default:
return fmt.Errorf("invalid value for EpisodeSort: %v", v)
}
}
// EnableCreditsMarkerGeneration - Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
type EnableCreditsMarkerGeneration string
@@ -710,21 +585,6 @@ const (
func (e EnableCreditsMarkerGeneration) ToPointer() *EnableCreditsMarkerGeneration {
return &e
}
func (e *EnableCreditsMarkerGeneration) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "-1":
fallthrough
case "0":
*e = EnableCreditsMarkerGeneration(v)
return nil
default:
return fmt.Errorf("invalid value for EnableCreditsMarkerGeneration: %v", v)
}
}
// ShowOrdering - Setting that indicates the episode ordering for the show.
// None = Library default,
@@ -745,27 +605,6 @@ const (
func (e ShowOrdering) ToPointer() *ShowOrdering {
return &e
}
func (e *ShowOrdering) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "None":
fallthrough
case "tmdbAiring":
fallthrough
case "aired":
fallthrough
case "dvd":
fallthrough
case "absolute":
*e = ShowOrdering(v)
return nil
default:
return fmt.Errorf("invalid value for ShowOrdering: %v", v)
}
}
type GetLibraryItemsOptimizedForStreaming int
@@ -1652,25 +1491,6 @@ const (
func (e GetLibraryItemsLibraryResponse200Type) ToPointer() *GetLibraryItemsLibraryResponse200Type {
return &e
}
func (e *GetLibraryItemsLibraryResponse200Type) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "coverPoster":
fallthrough
case "background":
fallthrough
case "snapshot":
fallthrough
case "clearLogo":
*e = GetLibraryItemsLibraryResponse200Type(v)
return nil
default:
return fmt.Errorf("invalid value for GetLibraryItemsLibraryResponse200Type: %v", v)
}
}
type GetLibraryItemsImage struct {
Alt string `json:"alt"`

File diff suppressed because it is too large Load Diff

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"github.com/LukeHagar/plexgo/internal/utils"
"github.com/LukeHagar/plexgo/types"
"net/http"
@@ -31,31 +29,6 @@ const (
func (e GetPlaylistContentsQueryParamType) ToPointer() *GetPlaylistContentsQueryParamType {
return &e
}
func (e *GetPlaylistContentsQueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = GetPlaylistContentsQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for GetPlaylistContentsQueryParamType: %v", v)
}
}
type GetPlaylistContentsRequest struct {
// the ID of the playlist

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -20,23 +18,6 @@ const (
func (e PlaylistType) ToPointer() *PlaylistType {
return &e
}
func (e *PlaylistType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "audio":
fallthrough
case "video":
fallthrough
case "photo":
*e = PlaylistType(v)
return nil
default:
return fmt.Errorf("invalid value for PlaylistType: %v", v)
}
}
// QueryParamSmart - type of playlists to return (default is all).
type QueryParamSmart int64
@@ -49,21 +30,6 @@ const (
func (e QueryParamSmart) ToPointer() *QueryParamSmart {
return &e
}
func (e *QueryParamSmart) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 0:
fallthrough
case 1:
*e = QueryParamSmart(v)
return nil
default:
return fmt.Errorf("invalid value for QueryParamSmart: %v", v)
}
}
type GetPlaylistsRequest struct {
// limit to a type of playlist.

View File

@@ -32,31 +32,6 @@ const (
func (e Type) ToPointer() *Type {
return &e
}
func (e *Type) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = Type(v)
return nil
default:
return fmt.Errorf("invalid value for Type: %v", v)
}
}
// IncludeMeta - Adds the Meta object to the response
type IncludeMeta int
@@ -537,29 +512,6 @@ const (
func (e GetRecentlyAddedHubsType) ToPointer() *GetRecentlyAddedHubsType {
return &e
}
func (e *GetRecentlyAddedHubsType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "movie":
fallthrough
case "show":
fallthrough
case "season":
fallthrough
case "episode":
fallthrough
case "artist":
fallthrough
case "album":
*e = GetRecentlyAddedHubsType(v)
return nil
default:
return fmt.Errorf("invalid value for GetRecentlyAddedHubsType: %v", v)
}
}
type GetRecentlyAddedHubsResponseType string
@@ -573,25 +525,6 @@ const (
func (e GetRecentlyAddedHubsResponseType) ToPointer() *GetRecentlyAddedHubsResponseType {
return &e
}
func (e *GetRecentlyAddedHubsResponseType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "coverPoster":
fallthrough
case "background":
fallthrough
case "snapshot":
fallthrough
case "clearLogo":
*e = GetRecentlyAddedHubsResponseType(v)
return nil
default:
return fmt.Errorf("invalid value for GetRecentlyAddedHubsResponseType: %v", v)
}
}
type GetRecentlyAddedImage struct {
Alt string `json:"alt"`
@@ -862,17 +795,39 @@ func (e *HasThumbnail) UnmarshalJSON(data []byte) error {
}
}
// StreamType - Stream type:
// - 1 = video
// - 2 = audio
// - 3 = subtitle
type StreamType int
const (
StreamTypeVideo StreamType = 1
StreamTypeAudio StreamType = 2
StreamTypeSubtitle StreamType = 3
)
func (e StreamType) ToPointer() *StreamType {
return &e
}
type Stream struct {
// Unique stream identifier.
ID int64 `json:"id"`
// Stream type (1=video, 2=audio, 3=subtitle).
StreamType int `json:"streamType"`
// Stream type:
// - 1 = video
// - 2 = audio
// - 3 = subtitle
//
StreamType StreamType `json:"streamType"`
// Format of the stream (e.g., srt).
Format *string `json:"format,omitempty"`
// Indicates if this stream is default.
Default *bool `json:"default,omitempty"`
// Codec used by the stream.
Codec string `json:"codec"`
// Index of the stream.
Index int `json:"index"`
Index *int `json:"index,omitempty"`
// Bitrate of the stream.
Bitrate *int `json:"bitrate,omitempty"`
// Language of the stream.
@@ -920,6 +875,8 @@ type Stream struct {
ColorTrc *string `json:"colorTrc,omitempty"`
// Frame rate of the stream.
FrameRate *float32 `json:"frameRate,omitempty"`
// Key to access this stream part.
Key *string `json:"key,omitempty"`
// Height of the video stream.
Height *int `json:"height,omitempty"`
// Video level.
@@ -965,13 +922,20 @@ func (o *Stream) GetID() int64 {
return o.ID
}
func (o *Stream) GetStreamType() int {
func (o *Stream) GetStreamType() StreamType {
if o == nil {
return 0
return StreamType(0)
}
return o.StreamType
}
func (o *Stream) GetFormat() *string {
if o == nil {
return nil
}
return o.Format
}
func (o *Stream) GetDefault() *bool {
if o == nil {
return nil
@@ -986,9 +950,9 @@ func (o *Stream) GetCodec() string {
return o.Codec
}
func (o *Stream) GetIndex() int {
func (o *Stream) GetIndex() *int {
if o == nil {
return 0
return nil
}
return o.Index
}
@@ -1161,6 +1125,13 @@ func (o *Stream) GetFrameRate() *float32 {
return o.FrameRate
}
func (o *Stream) GetKey() *string {
if o == nil {
return nil
}
return o.Key
}
func (o *Stream) GetHeight() *int {
if o == nil {
return nil
@@ -1660,13 +1631,13 @@ func (o *Genre) GetTag() string {
// Country - The filter query string for country media items.
type Country struct {
ID int64 `json:"id"`
ID int `json:"id"`
// The country of origin of this media item
Tag string `json:"tag"`
Filter *string `json:"filter,omitempty"`
}
func (o *Country) GetID() int64 {
func (o *Country) GetID() int {
if o == nil {
return 0
}
@@ -1701,7 +1672,7 @@ func (o *Director) GetTag() string {
type Writer struct {
// Unique identifier for the writer.
ID int64 `json:"id"`
ID int `json:"id"`
// The filter string used to query this writer.
Filter string `json:"filter"`
// The role of Writer
@@ -1710,7 +1681,7 @@ type Writer struct {
TagKey *string `json:"tagKey,omitempty"`
}
func (o *Writer) GetID() int64 {
func (o *Writer) GetID() int {
if o == nil {
return 0
}
@@ -1797,7 +1768,7 @@ func (o *Role) GetThumb() *string {
type Producer struct {
// Unique identifier for the producer.
ID int64 `json:"id"`
ID int `json:"id"`
// The filter string used to query this producer.
Filter string `json:"filter"`
// The name of the producer
@@ -1808,7 +1779,7 @@ type Producer struct {
Thumb *string `json:"thumb,omitempty"`
}
func (o *Producer) GetID() int64 {
func (o *Producer) GetID() int {
if o == nil {
return 0
}

View File

@@ -31,31 +31,6 @@ const (
func (e QueryParamType) ToPointer() *QueryParamType {
return &e
}
func (e *QueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = QueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for QueryParamType: %v", v)
}
}
// QueryParamIncludeMeta - Adds the Meta object to the response
type QueryParamIncludeMeta int

View File

@@ -23,27 +23,6 @@ const (
func (e SearchTypes) ToPointer() *SearchTypes {
return &e
}
func (e *SearchTypes) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "movies":
fallthrough
case "music":
fallthrough
case "otherVideos":
fallthrough
case "people":
fallthrough
case "tv":
*e = SearchTypes(v)
return nil
default:
return fmt.Errorf("invalid value for SearchTypes: %v", v)
}
}
// GetSearchAllLibrariesQueryParamIncludeCollections - Whether to include collections in the search results.
type GetSearchAllLibrariesQueryParamIncludeCollections int
@@ -183,29 +162,6 @@ const (
func (e GetSearchAllLibrariesType) ToPointer() *GetSearchAllLibrariesType {
return &e
}
func (e *GetSearchAllLibrariesType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "movie":
fallthrough
case "show":
fallthrough
case "season":
fallthrough
case "episode":
fallthrough
case "artist":
fallthrough
case "album":
*e = GetSearchAllLibrariesType(v)
return nil
default:
return fmt.Errorf("invalid value for GetSearchAllLibrariesType: %v", v)
}
}
// GetSearchAllLibrariesFlattenSeasons - Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
type GetSearchAllLibrariesFlattenSeasons string
@@ -219,23 +175,6 @@ const (
func (e GetSearchAllLibrariesFlattenSeasons) ToPointer() *GetSearchAllLibrariesFlattenSeasons {
return &e
}
func (e *GetSearchAllLibrariesFlattenSeasons) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "-1":
fallthrough
case "0":
fallthrough
case "1":
*e = GetSearchAllLibrariesFlattenSeasons(v)
return nil
default:
return fmt.Errorf("invalid value for GetSearchAllLibrariesFlattenSeasons: %v", v)
}
}
// GetSearchAllLibrariesEpisodeSort - Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
type GetSearchAllLibrariesEpisodeSort string
@@ -249,23 +188,6 @@ const (
func (e GetSearchAllLibrariesEpisodeSort) ToPointer() *GetSearchAllLibrariesEpisodeSort {
return &e
}
func (e *GetSearchAllLibrariesEpisodeSort) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "-1":
fallthrough
case "0":
fallthrough
case "1":
*e = GetSearchAllLibrariesEpisodeSort(v)
return nil
default:
return fmt.Errorf("invalid value for GetSearchAllLibrariesEpisodeSort: %v", v)
}
}
// GetSearchAllLibrariesEnableCreditsMarkerGeneration - Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
type GetSearchAllLibrariesEnableCreditsMarkerGeneration string
@@ -278,21 +200,6 @@ const (
func (e GetSearchAllLibrariesEnableCreditsMarkerGeneration) ToPointer() *GetSearchAllLibrariesEnableCreditsMarkerGeneration {
return &e
}
func (e *GetSearchAllLibrariesEnableCreditsMarkerGeneration) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "-1":
fallthrough
case "0":
*e = GetSearchAllLibrariesEnableCreditsMarkerGeneration(v)
return nil
default:
return fmt.Errorf("invalid value for GetSearchAllLibrariesEnableCreditsMarkerGeneration: %v", v)
}
}
// GetSearchAllLibrariesShowOrdering - Setting that indicates the episode ordering for the show.
// None = Library default,
@@ -313,27 +220,6 @@ const (
func (e GetSearchAllLibrariesShowOrdering) ToPointer() *GetSearchAllLibrariesShowOrdering {
return &e
}
func (e *GetSearchAllLibrariesShowOrdering) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "None":
fallthrough
case "tmdbAiring":
fallthrough
case "aired":
fallthrough
case "dvd":
fallthrough
case "absolute":
*e = GetSearchAllLibrariesShowOrdering(v)
return nil
default:
return fmt.Errorf("invalid value for GetSearchAllLibrariesShowOrdering: %v", v)
}
}
type GetSearchAllLibrariesOptimizedForStreaming int
@@ -1220,25 +1106,6 @@ const (
func (e GetSearchAllLibrariesLibraryType) ToPointer() *GetSearchAllLibrariesLibraryType {
return &e
}
func (e *GetSearchAllLibrariesLibraryType) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "coverPoster":
fallthrough
case "background":
fallthrough
case "snapshot":
fallthrough
case "clearLogo":
*e = GetSearchAllLibrariesLibraryType(v)
return nil
default:
return fmt.Errorf("invalid value for GetSearchAllLibrariesLibraryType: %v", v)
}
}
type GetSearchAllLibrariesImage struct {
Alt string `json:"alt"`

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -29,31 +27,6 @@ const (
func (e GetSearchLibraryQueryParamType) ToPointer() *GetSearchLibraryQueryParamType {
return &e
}
func (e *GetSearchLibraryQueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = GetSearchLibraryQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for GetSearchLibraryQueryParamType: %v", v)
}
}
type GetSearchLibraryRequest struct {
// The unique key of the Plex library.

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -20,23 +18,6 @@ const (
func (e State) ToPointer() *State {
return &e
}
func (e *State) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "playing":
fallthrough
case "paused":
fallthrough
case "stopped":
*e = State(v)
return nil
default:
return fmt.Errorf("invalid value for State: %v", v)
}
}
type GetTimelineRequest struct {
// The rating key of the media item

View File

@@ -24,21 +24,6 @@ const (
func (e MailingListStatus) ToPointer() *MailingListStatus {
return &e
}
func (e *MailingListStatus) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "active":
fallthrough
case "unsubscribed":
*e = MailingListStatus(v)
return nil
default:
return fmt.Errorf("invalid value for MailingListStatus: %v", v)
}
}
// AutoSelectSubtitle - The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
type AutoSelectSubtitle int
@@ -266,21 +251,6 @@ const (
func (e GetTokenDetailsStatus) ToPointer() *GetTokenDetailsStatus {
return &e
}
func (e *GetTokenDetailsStatus) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "online":
fallthrough
case "offline":
*e = GetTokenDetailsStatus(v)
return nil
default:
return fmt.Errorf("invalid value for GetTokenDetailsStatus: %v", v)
}
}
type Services struct {
Identifier string `json:"identifier"`
@@ -336,21 +306,6 @@ const (
func (e GetTokenDetailsAuthenticationStatus) ToPointer() *GetTokenDetailsAuthenticationStatus {
return &e
}
func (e *GetTokenDetailsAuthenticationStatus) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "Inactive":
fallthrough
case "Active":
*e = GetTokenDetailsAuthenticationStatus(v)
return nil
default:
return fmt.Errorf("invalid value for GetTokenDetailsAuthenticationStatus: %v", v)
}
}
// Subscription - If the accounts Plex Pass subscription is active
type Subscription struct {
@@ -421,21 +376,6 @@ const (
func (e GetTokenDetailsAuthenticationResponseStatus) ToPointer() *GetTokenDetailsAuthenticationResponseStatus {
return &e
}
func (e *GetTokenDetailsAuthenticationResponseStatus) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "Inactive":
fallthrough
case "Active":
*e = GetTokenDetailsAuthenticationResponseStatus(v)
return nil
default:
return fmt.Errorf("invalid value for GetTokenDetailsAuthenticationResponseStatus: %v", v)
}
}
type GetTokenDetailsSubscription struct {
// List of features allowed on your Plex Pass subscription

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"github.com/LukeHagar/plexgo/internal/utils"
"github.com/LukeHagar/plexgo/types"
"net/http"
@@ -31,31 +29,6 @@ const (
func (e GetTopWatchedContentQueryParamType) ToPointer() *GetTopWatchedContentQueryParamType {
return &e
}
func (e *GetTopWatchedContentQueryParamType) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
fallthrough
case 8:
fallthrough
case 9:
fallthrough
case 10:
*e = GetTopWatchedContentQueryParamType(v)
return nil
default:
return fmt.Errorf("invalid value for GetTopWatchedContentQueryParamType: %v", v)
}
}
type GetTopWatchedContentRequest struct {
// Adds the Guids object to the response

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"github.com/LukeHagar/plexgo/internal/utils"
"net/http"
)
@@ -29,19 +27,6 @@ const (
func (e Status) ToPointer() *Status {
return &e
}
func (e *Status) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "accepted":
*e = Status(v)
return nil
default:
return fmt.Errorf("invalid value for Status: %v", v)
}
}
type Friend struct {
// The account email address

View File

@@ -26,23 +26,6 @@ const (
func (e Filter) ToPointer() *Filter {
return &e
}
func (e *Filter) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "all":
fallthrough
case "available":
fallthrough
case "released":
*e = Filter(v)
return nil
default:
return fmt.Errorf("invalid value for Filter: %v", v)
}
}
// Libtype - The type of library to filter. Can be "movie" or "show", or all if not present.
type Libtype string
@@ -55,21 +38,6 @@ const (
func (e Libtype) ToPointer() *Libtype {
return &e
}
func (e *Libtype) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "movie":
fallthrough
case "show":
*e = Libtype(v)
return nil
default:
return fmt.Errorf("invalid value for Libtype: %v", v)
}
}
// IncludeCollections - include collections in the results
type IncludeCollections int64

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -27,27 +25,6 @@ const (
func (e Level) ToPointer() *Level {
return &e
}
func (e *Level) UnmarshalJSON(data []byte) error {
var v int64
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case 0:
fallthrough
case 1:
fallthrough
case 2:
fallthrough
case 3:
fallthrough
case 4:
*e = Level(v)
return nil
default:
return fmt.Errorf("invalid value for Level: %v", v)
}
}
type LogLineRequest struct {
// An integer log level to write to the PMS log with.

View File

@@ -128,21 +128,6 @@ const (
func (e PostUsersSignInDataMailingListStatus) ToPointer() *PostUsersSignInDataMailingListStatus {
return &e
}
func (e *PostUsersSignInDataMailingListStatus) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "active":
fallthrough
case "unsubscribed":
*e = PostUsersSignInDataMailingListStatus(v)
return nil
default:
return fmt.Errorf("invalid value for PostUsersSignInDataMailingListStatus: %v", v)
}
}
// PostUsersSignInDataAutoSelectSubtitle - The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
type PostUsersSignInDataAutoSelectSubtitle int
@@ -370,21 +355,6 @@ const (
func (e PostUsersSignInDataStatus) ToPointer() *PostUsersSignInDataStatus {
return &e
}
func (e *PostUsersSignInDataStatus) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "online":
fallthrough
case "offline":
*e = PostUsersSignInDataStatus(v)
return nil
default:
return fmt.Errorf("invalid value for PostUsersSignInDataStatus: %v", v)
}
}
type PostUsersSignInDataServices struct {
Identifier string `json:"identifier"`
@@ -440,21 +410,6 @@ const (
func (e PostUsersSignInDataAuthenticationStatus) ToPointer() *PostUsersSignInDataAuthenticationStatus {
return &e
}
func (e *PostUsersSignInDataAuthenticationStatus) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "Inactive":
fallthrough
case "Active":
*e = PostUsersSignInDataAuthenticationStatus(v)
return nil
default:
return fmt.Errorf("invalid value for PostUsersSignInDataAuthenticationStatus: %v", v)
}
}
// PostUsersSignInDataSubscription - If the accounts Plex Pass subscription is active
type PostUsersSignInDataSubscription struct {
@@ -525,21 +480,6 @@ const (
func (e PostUsersSignInDataAuthenticationResponseStatus) ToPointer() *PostUsersSignInDataAuthenticationResponseStatus {
return &e
}
func (e *PostUsersSignInDataAuthenticationResponseStatus) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "Inactive":
fallthrough
case "Active":
*e = PostUsersSignInDataAuthenticationResponseStatus(v)
return nil
default:
return fmt.Errorf("invalid value for PostUsersSignInDataAuthenticationResponseStatus: %v", v)
}
}
type PostUsersSignInDataAuthenticationSubscription struct {
// List of features allowed on your Plex Pass subscription
@@ -607,19 +547,6 @@ const (
func (e PostUsersSignInDataState) ToPointer() *PostUsersSignInDataState {
return &e
}
func (e *PostUsersSignInDataState) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "ended":
*e = PostUsersSignInDataState(v)
return nil
default:
return fmt.Errorf("invalid value for PostUsersSignInDataState: %v", v)
}
}
type InternalPaymentMethod struct {
}

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -31,45 +29,6 @@ const (
func (e TaskName) ToPointer() *TaskName {
return &e
}
func (e *TaskName) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "BackupDatabase":
fallthrough
case "BuildGracenoteCollections":
fallthrough
case "CheckForUpdates":
fallthrough
case "CleanOldBundles":
fallthrough
case "CleanOldCacheFiles":
fallthrough
case "DeepMediaAnalysis":
fallthrough
case "GenerateAutoTags":
fallthrough
case "GenerateChapterThumbs":
fallthrough
case "GenerateMediaIndexFiles":
fallthrough
case "OptimizeDatabase":
fallthrough
case "RefreshLibraries":
fallthrough
case "RefreshLocalMedia":
fallthrough
case "RefreshPeriodicMetadata":
fallthrough
case "UpgradeMediaAnalysis":
*e = TaskName(v)
return nil
default:
return fmt.Errorf("invalid value for TaskName: %v", v)
}
}
type StartTaskRequest struct {
// the name of the task to be started.

View File

@@ -3,8 +3,6 @@
package operations
import (
"encoding/json"
"fmt"
"net/http"
)
@@ -31,45 +29,6 @@ const (
func (e PathParamTaskName) ToPointer() *PathParamTaskName {
return &e
}
func (e *PathParamTaskName) UnmarshalJSON(data []byte) error {
var v string
if err := json.Unmarshal(data, &v); err != nil {
return err
}
switch v {
case "BackupDatabase":
fallthrough
case "BuildGracenoteCollections":
fallthrough
case "CheckForUpdates":
fallthrough
case "CleanOldBundles":
fallthrough
case "CleanOldCacheFiles":
fallthrough
case "DeepMediaAnalysis":
fallthrough
case "GenerateAutoTags":
fallthrough
case "GenerateChapterThumbs":
fallthrough
case "GenerateMediaIndexFiles":
fallthrough
case "OptimizeDatabase":
fallthrough
case "RefreshLibraries":
fallthrough
case "RefreshLocalMedia":
fallthrough
case "RefreshPeriodicMetadata":
fallthrough
case "UpgradeMediaAnalysis":
*e = PathParamTaskName(v)
return nil
default:
return fmt.Errorf("invalid value for PathParamTaskName: %v", v)
}
}
type StopTaskRequest struct {
// The name of the task to be started.

View File

@@ -299,9 +299,9 @@ func New(opts ...SDKOption) *PlexAPI {
sdkConfiguration: sdkConfiguration{
Language: "go",
OpenAPIDocVersion: "0.0.3",
SDKVersion: "0.20.0",
GenVersion: "2.565.1",
UserAgent: "speakeasy-sdk/go 0.20.0 2.565.1 0.0.3 github.com/LukeHagar/plexgo",
SDKVersion: "0.21.2",
GenVersion: "2.597.9",
UserAgent: "speakeasy-sdk/go 0.21.2 2.597.9 0.0.3 github.com/LukeHagar/plexgo",
ServerDefaults: []map[string]string{
{
"protocol": "https",