diff --git a/.gitignore b/.gitignore
index be8123c..281b2af 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,5 @@
+**/.speakeasy/temp/
+**/.speakeasy/logs/
*.gem
.rbenv-gemsets
.DS_Store
diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock
index 47e73c3..9d40177 100755
--- a/.speakeasy/gen.lock
+++ b/.speakeasy/gen.lock
@@ -1,12 +1,12 @@
lockVersion: 2.0.0
id: aa9449e7-c19d-411d-b8e2-f9c5fe982f6f
management:
- docChecksum: 89dadbc8c2d01913eaf905dadd40f814
+ docChecksum: d79f1dea291e60a9e3b3fc2de2e0da83
docVersion: 0.0.3
speakeasyVersion: 1.531.4
generationVersion: 2.570.4
- releaseVersion: 0.11.1
- configChecksum: 8a24419ec9bfe8a7eb24ce8f5a74b4a1
+ releaseVersion: 0.12.1
+ configChecksum: 20fc5fc2fa807de5bbff3e0f1c3de8d6
repoURL: https://github.com/LukeHagar/plexruby.git
repoSubDirectory: .
installationURL: https://github.com/LukeHagar/plexruby
@@ -359,12 +359,14 @@ generatedFiles:
- docs/models/operations/allowtuners.md
- docs/models/operations/applyupdatesrequest.md
- docs/models/operations/applyupdatesresponse.md
+ - docs/models/operations/attributes.md
- docs/models/operations/autoselectsubtitle.md
- docs/models/operations/billing.md
- docs/models/operations/butlertask.md
- docs/models/operations/butlertasks.md
- docs/models/operations/cancelserveractivitiesrequest.md
- docs/models/operations/cancelserveractivitiesresponse.md
+ - docs/models/operations/chapter.md
- docs/models/operations/checkforupdatesrequest.md
- docs/models/operations/checkforupdatesresponse.md
- docs/models/operations/clearplaylistcontentsrequest.md
@@ -393,6 +395,7 @@ generatedFiles:
- docs/models/operations/enablecreditsmarkergeneration.md
- docs/models/operations/enablepapertrailresponse.md
- docs/models/operations/episodesort.md
+ - docs/models/operations/extras.md
- docs/models/operations/feature.md
- docs/models/operations/field.md
- docs/models/operations/fieldtype.md
@@ -445,6 +448,7 @@ generatedFiles:
- docs/models/operations/getallmedialibraryrole.md
- docs/models/operations/getallmedialibrarysort.md
- docs/models/operations/getallmedialibrarystream.md
+ - docs/models/operations/getallmedialibrarystreamtype.md
- docs/models/operations/getallmedialibrarytype.md
- docs/models/operations/getallmedialibraryultrablurcolors.md
- docs/models/operations/getallmedialibrarywriter.md
@@ -564,6 +568,7 @@ generatedFiles:
- docs/models/operations/getmediametadatahasthumbnail.md
- docs/models/operations/getmediametadataimage.md
- docs/models/operations/getmediametadatalibraryoptimizedforstreaming.md
+ - docs/models/operations/getmediametadatalibrarytype.md
- docs/models/operations/getmediametadatalocation.md
- docs/models/operations/getmediametadatamedia.md
- docs/models/operations/getmediametadatamediacontainer.md
@@ -579,6 +584,8 @@ generatedFiles:
- docs/models/operations/getmediametadatarole.md
- docs/models/operations/getmediametadatasimilar.md
- docs/models/operations/getmediametadatastream.md
+ - docs/models/operations/getmediametadatastreamtype.md
+ - docs/models/operations/getmediametadatatype.md
- docs/models/operations/getmediametadataultrablurcolors.md
- docs/models/operations/getmediametadatawriter.md
- docs/models/operations/getmediapostersmediacontainer.md
@@ -815,6 +822,7 @@ generatedFiles:
- docs/models/operations/loglineresponse.md
- docs/models/operations/logmultilineresponse.md
- docs/models/operations/mailingliststatus.md
+ - docs/models/operations/marker.md
- docs/models/operations/markplayedrequest.md
- docs/models/operations/markplayedresponse.md
- docs/models/operations/markunplayedrequest.md
@@ -918,6 +926,7 @@ generatedFiles:
- docs/models/operations/stoptranscodesessionrequest.md
- docs/models/operations/stoptranscodesessionresponse.md
- docs/models/operations/stream.md
+ - docs/models/operations/streamtype.md
- docs/models/operations/subscription.md
- docs/models/operations/tag.md
- docs/models/operations/taskname.md
@@ -1299,12 +1308,14 @@ generatedFiles:
- lib/plex_ruby_sdk/models/operations/allowtuners.rb
- lib/plex_ruby_sdk/models/operations/applyupdates_request.rb
- lib/plex_ruby_sdk/models/operations/applyupdates_response.rb
+ - lib/plex_ruby_sdk/models/operations/attributes.rb
- lib/plex_ruby_sdk/models/operations/autoselectsubtitle.rb
- lib/plex_ruby_sdk/models/operations/billing.rb
- lib/plex_ruby_sdk/models/operations/butlertask.rb
- lib/plex_ruby_sdk/models/operations/butlertasks.rb
- lib/plex_ruby_sdk/models/operations/cancelserveractivities_request.rb
- lib/plex_ruby_sdk/models/operations/cancelserveractivities_response.rb
+ - lib/plex_ruby_sdk/models/operations/chapter.rb
- lib/plex_ruby_sdk/models/operations/checkforupdates_request.rb
- lib/plex_ruby_sdk/models/operations/checkforupdates_response.rb
- lib/plex_ruby_sdk/models/operations/clearplaylistcontents_request.rb
@@ -1333,6 +1344,7 @@ generatedFiles:
- lib/plex_ruby_sdk/models/operations/enablecreditsmarkergeneration.rb
- lib/plex_ruby_sdk/models/operations/enablepapertrail_response.rb
- lib/plex_ruby_sdk/models/operations/episodesort.rb
+ - lib/plex_ruby_sdk/models/operations/extras.rb
- lib/plex_ruby_sdk/models/operations/feature.rb
- lib/plex_ruby_sdk/models/operations/field.rb
- lib/plex_ruby_sdk/models/operations/fieldtype.rb
@@ -1385,6 +1397,7 @@ generatedFiles:
- lib/plex_ruby_sdk/models/operations/get_all_media_library_role.rb
- lib/plex_ruby_sdk/models/operations/get_all_media_library_sort.rb
- lib/plex_ruby_sdk/models/operations/get_all_media_library_stream.rb
+ - lib/plex_ruby_sdk/models/operations/get_all_media_library_streamtype.rb
- lib/plex_ruby_sdk/models/operations/get_all_media_library_type.rb
- lib/plex_ruby_sdk/models/operations/get_all_media_library_ultrablurcolors.rb
- lib/plex_ruby_sdk/models/operations/get_all_media_library_writer.rb
@@ -1465,6 +1478,7 @@ generatedFiles:
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_hasthumbnail.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_optimizedforstreaming.rb
+ - lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_type.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_location.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb
@@ -1480,6 +1494,8 @@ generatedFiles:
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_similar.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb
+ - lib/plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb
+ - lib/plex_ruby_sdk/models/operations/get_media_meta_data_type.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb
- lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb
- lib/plex_ruby_sdk/models/operations/get_media_posters_mediacontainer.rb
@@ -1755,6 +1771,7 @@ generatedFiles:
- lib/plex_ruby_sdk/models/operations/logline_response.rb
- lib/plex_ruby_sdk/models/operations/logmultiline_response.rb
- lib/plex_ruby_sdk/models/operations/mailingliststatus.rb
+ - lib/plex_ruby_sdk/models/operations/marker.rb
- lib/plex_ruby_sdk/models/operations/markplayed_request.rb
- lib/plex_ruby_sdk/models/operations/markplayed_response.rb
- lib/plex_ruby_sdk/models/operations/markunplayed_request.rb
@@ -1858,6 +1875,7 @@ generatedFiles:
- lib/plex_ruby_sdk/models/operations/stoptranscodesession_request.rb
- lib/plex_ruby_sdk/models/operations/stoptranscodesession_response.rb
- lib/plex_ruby_sdk/models/operations/stream.rb
+ - lib/plex_ruby_sdk/models/operations/streamtype.rb
- lib/plex_ruby_sdk/models/operations/subscription.rb
- lib/plex_ruby_sdk/models/operations/tag.rb
- lib/plex_ruby_sdk/models/operations/taskname.rb
@@ -2307,7 +2325,7 @@ examples:
X-Plex-Container-Size: 50
responses:
"200":
- application/json: {"MediaContainer": {"size": 50, "totalSize": 50, "offset": 0, "allowSync": false, "identifier": "com.plexapp.plugins.library", "Meta": {"Type": [{"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}], "FieldType": [{"type": "tag", "Operator": [{"key": "=", "title": "is"}]}, {"type": "tag", "Operator": []}, {"type": "tag", "Operator": []}]}, "Metadata": [{"addedAt": 1556281940, "art": "/library/metadata/58683/art/1703239236", "audienceRatingImage": "rottentomatoes://image.rating.upright", "audienceRating": 9.2, "chapterSource": "media", "childCount": 1, "contentRating": "PG-13", "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "duration": 11558112, "grandparentArt": "/library/metadata/66/art/1705716261", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentKey": "/library/metadata/66", "grandparentRatingKey": "66", "grandparentSlug": "alice-in-borderland-2020", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTitle": "Caprica", "guid": "plex://movie/5d7768ba96b655001fdc0408", "index": 1, "key": "/library/metadata/58683", "lastRatedAt": 1721813113, "lastViewedAt": 1682752242, "leafCount": 14, "librarySectionID": 1, "librarySectionKey": "/library/sections/1", "librarySectionTitle": "Movies", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "originallyAvailableAt": "2022-12-14", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "parentIndex": 1, "parentKey": "/library/metadata/66", "parentRatingKey": "66", "parentSlug": "alice-in-borderland-2020", "parentStudio": "UCP", "parentTheme": "/library/metadata/66/theme/1705716261", "parentThumb": "/library/metadata/66/thumb/1705716261", "parentTitle": "Caprica", "parentYear": 2010, "primaryExtraKey": "/library/metadata/58684", "ratingImage": "rottentomatoes://image.rating.ripe", "ratingKey": "58683", "rating": 7.6, "seasonCount": 2022, "skipCount": 1, "slug": "4-for-texas", "studio": "20th Century Studios", "subtype": "clip", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "tagline": "Return to Pandora.", "theme": "/library/metadata/1/theme/1705636920", "thumb": "/library/metadata/58683/thumb/1703239236", "titleSort": "Whale", "title": "Avatar: The Way of Water", "type": "movie", "updatedAt": 1556281940, "userRating": 10, "viewCount": 1, "viewOffset": 5222500, "viewedLeafCount": 0, "year": 2022, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"id": 259, "filter": "genre=19", "tag": "Crime"}], "Country": [{"id": 259, "tag": "United States of America", "filter": "country=19"}], "Director": [{"tag": "Danny Boyle"}, {"tag": "Danny Boyle"}, {"tag": "Danny Boyle"}], "Writer": [{"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}], "Role": [{"id": 126522, "filter": "actor=126522", "tag": "Teller", "tagKey": "5d77683d85719b001f3a535e", "role": "Self - Judge", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Producer": [{"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Rating": [{"image": "imdb://image.rating", "value": 5.1, "type": "audience"}], "Similar": [{"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}, {"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}, {"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}], "Location": [{"path": "/TV Shows/Clarkson's Farm"}], "Guid": [{"id": "tvdb://2337"}, {"id": "tvdb://2337"}], "Collection": [{"tag": "My Awesome Collection"}, {"tag": "My Awesome Collection"}, {"tag": "My Awesome Collection"}]}, {"addedAt": 1556281940, "art": "/library/metadata/58683/art/1703239236", "audienceRatingImage": "rottentomatoes://image.rating.upright", "audienceRating": 9.2, "chapterSource": "media", "childCount": 1, "contentRating": "PG-13", "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "duration": 11558112, "grandparentArt": "/library/metadata/66/art/1705716261", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentKey": "/library/metadata/66", "grandparentRatingKey": "66", "grandparentSlug": "alice-in-borderland-2020", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTitle": "Caprica", "guid": "plex://movie/5d7768ba96b655001fdc0408", "index": 1, "key": "/library/metadata/58683", "lastRatedAt": 1721813113, "lastViewedAt": 1682752242, "leafCount": 14, "librarySectionID": 1, "librarySectionKey": "/library/sections/1", "librarySectionTitle": "Movies", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "originallyAvailableAt": "2022-12-14", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "parentIndex": 1, "parentKey": "/library/metadata/66", "parentRatingKey": "66", "parentSlug": "alice-in-borderland-2020", "parentStudio": "UCP", "parentTheme": "/library/metadata/66/theme/1705716261", "parentThumb": "/library/metadata/66/thumb/1705716261", "parentTitle": "Caprica", "parentYear": 2010, "primaryExtraKey": "/library/metadata/58684", "ratingImage": "rottentomatoes://image.rating.ripe", "ratingKey": "58683", "rating": 7.6, "seasonCount": 2022, "skipCount": 1, "slug": "4-for-texas", "studio": "20th Century Studios", "subtype": "clip", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "tagline": "Return to Pandora.", "theme": "/library/metadata/1/theme/1705636920", "thumb": "/library/metadata/58683/thumb/1703239236", "titleSort": "Whale", "title": "Avatar: The Way of Water", "type": "movie", "updatedAt": 1556281940, "userRating": 10, "viewCount": 1, "viewOffset": 5222500, "viewedLeafCount": 0, "year": 2022, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"id": 259, "filter": "genre=19", "tag": "Crime"}, {"id": 259, "filter": "genre=19", "tag": "Crime"}], "Country": [{"id": 259, "tag": "United States of America", "filter": "country=19"}], "Director": [{"tag": "Danny Boyle"}, {"tag": "Danny Boyle"}], "Writer": [{"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}], "Role": [{"id": 126522, "filter": "actor=126522", "tag": "Teller", "tagKey": "5d77683d85719b001f3a535e", "role": "Self - Judge", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Producer": [{"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Rating": [{"image": "imdb://image.rating", "value": 5.1, "type": "audience"}], "Similar": [{"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}, {"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}, {"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}], "Location": [{"path": "/TV Shows/Clarkson's Farm"}, {"path": "/TV Shows/Clarkson's Farm"}, {"path": "/TV Shows/Clarkson's Farm"}], "Guid": [{"id": "tvdb://2337"}, {"id": "tvdb://2337"}], "Collection": [{"tag": "My Awesome Collection"}, {"tag": "My Awesome Collection"}]}]}}
+ application/json: {"MediaContainer": {"size": 50, "totalSize": 50, "offset": 0, "allowSync": false, "identifier": "com.plexapp.plugins.library", "Meta": {"Type": [{"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}], "FieldType": [{"type": "tag", "Operator": [{"key": "=", "title": "is"}]}, {"type": "tag", "Operator": []}, {"type": "tag", "Operator": []}]}, "Metadata": [{"addedAt": 1556281940, "art": "/library/metadata/58683/art/1703239236", "audienceRatingImage": "rottentomatoes://image.rating.upright", "audienceRating": 9.2, "chapterSource": "media", "childCount": 1, "contentRating": "PG-13", "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "duration": 11558112, "grandparentArt": "/library/metadata/66/art/1705716261", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentKey": "/library/metadata/66", "grandparentRatingKey": "66", "grandparentSlug": "alice-in-borderland-2020", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTitle": "Caprica", "guid": "plex://movie/5d7768ba96b655001fdc0408", "index": 1, "key": "/library/metadata/58683", "lastRatedAt": 1721813113, "lastViewedAt": 1682752242, "leafCount": 14, "librarySectionID": 1, "librarySectionKey": "/library/sections/1", "librarySectionTitle": "Movies", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "originallyAvailableAt": "2022-12-14", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "parentIndex": 1, "parentKey": "/library/metadata/66", "parentRatingKey": "66", "parentSlug": "alice-in-borderland-2020", "parentStudio": "UCP", "parentTheme": "/library/metadata/66/theme/1705716261", "parentThumb": "/library/metadata/66/thumb/1705716261", "parentTitle": "Caprica", "parentYear": 2010, "primaryExtraKey": "/library/metadata/58684", "ratingImage": "rottentomatoes://image.rating.ripe", "ratingKey": "58683", "rating": 7.6, "seasonCount": 2022, "skipCount": 1, "slug": "4-for-texas", "studio": "20th Century Studios", "subtype": "clip", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "tagline": "Return to Pandora.", "theme": "/library/metadata/1/theme/1705636920", "thumb": "/library/metadata/58683/thumb/1703239236", "titleSort": "Whale", "title": "Avatar: The Way of Water", "type": "movie", "updatedAt": 1556281940, "userRating": 10, "viewCount": 1, "viewOffset": 5222500, "viewedLeafCount": 0, "year": 2022, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"id": 259, "filter": "genre=19", "tag": "Crime"}], "Country": [{"id": 259, "tag": "United States of America", "filter": "country=19"}], "Director": [{"tag": "Danny Boyle"}, {"tag": "Danny Boyle"}, {"tag": "Danny Boyle"}], "Writer": [{"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}], "Role": [{"id": 126522, "filter": "actor=126522", "tag": "Teller", "tagKey": "5d77683d85719b001f3a535e", "role": "Self - Judge", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Producer": [{"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Rating": [{"image": "imdb://image.rating", "value": 5.1, "type": "audience"}], "Similar": [{"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}, {"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}, {"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}], "Location": [{"path": "/TV Shows/Clarkson's Farm"}], "Guid": [{"id": "tvdb://2337"}, {"id": "tvdb://2337"}], "Collection": [{"tag": "My Awesome Collection"}, {"tag": "My Awesome Collection"}, {"tag": "My Awesome Collection"}]}, {"addedAt": 1556281940, "art": "/library/metadata/58683/art/1703239236", "audienceRatingImage": "rottentomatoes://image.rating.upright", "audienceRating": 9.2, "chapterSource": "media", "childCount": 1, "contentRating": "PG-13", "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "duration": 11558112, "grandparentArt": "/library/metadata/66/art/1705716261", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentKey": "/library/metadata/66", "grandparentRatingKey": "66", "grandparentSlug": "alice-in-borderland-2020", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTitle": "Caprica", "guid": "plex://movie/5d7768ba96b655001fdc0408", "index": 1, "key": "/library/metadata/58683", "lastRatedAt": 1721813113, "lastViewedAt": 1682752242, "leafCount": 14, "librarySectionID": 1, "librarySectionKey": "/library/sections/1", "librarySectionTitle": "Movies", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "originallyAvailableAt": "2022-12-14", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "parentIndex": 1, "parentKey": "/library/metadata/66", "parentRatingKey": "66", "parentSlug": "alice-in-borderland-2020", "parentStudio": "UCP", "parentTheme": "/library/metadata/66/theme/1705716261", "parentThumb": "/library/metadata/66/thumb/1705716261", "parentTitle": "Caprica", "parentYear": 2010, "primaryExtraKey": "/library/metadata/58684", "ratingImage": "rottentomatoes://image.rating.ripe", "ratingKey": "58683", "rating": 7.6, "seasonCount": 2022, "skipCount": 1, "slug": "4-for-texas", "studio": "20th Century Studios", "subtype": "clip", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "tagline": "Return to Pandora.", "theme": "/library/metadata/1/theme/1705636920", "thumb": "/library/metadata/58683/thumb/1703239236", "titleSort": "Whale", "title": "Avatar: The Way of Water", "type": "movie", "updatedAt": 1556281940, "userRating": 10, "viewCount": 1, "viewOffset": 5222500, "viewedLeafCount": 0, "year": 2022, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"id": 259, "filter": "genre=19", "tag": "Crime"}, {"id": 259, "filter": "genre=19", "tag": "Crime"}], "Country": [{"id": 259, "tag": "United States of America", "filter": "country=19"}], "Director": [{"tag": "Danny Boyle"}, {"tag": "Danny Boyle"}], "Writer": [{"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "filter": "writer=126522", "tag": "Jamie P. Hanson", "tagKey": "5d77683d85719b001f3a535e"}], "Role": [{"id": 126522, "filter": "actor=126522", "tag": "Teller", "tagKey": "5d77683d85719b001f3a535e", "role": "Self - Judge", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Producer": [{"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "filter": "producer=126522", "tag": "Amelia Knapp", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Rating": [{"image": "imdb://image.rating", "value": 5.1, "type": "audience"}], "Similar": [{"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}, {"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}, {"id": 259, "filter": "similar=259", "tag": "Criss Angel Mindfreak"}], "Location": [{"path": "/TV Shows/Clarkson's Farm"}, {"path": "/TV Shows/Clarkson's Farm"}, {"path": "/TV Shows/Clarkson's Farm"}], "Guid": [{"id": "tvdb://2337"}, {"id": "tvdb://2337"}], "Collection": [{"tag": "My Awesome Collection"}, {"tag": "My Awesome Collection"}]}]}}
getLibraryHubs:
speakeasy-default-get-library-hubs:
parameters:
@@ -2450,7 +2468,7 @@ examples:
X-Plex-Container-Size: 50
responses:
"200":
- application/json: {"MediaContainer": {"size": 50, "totalSize": 50, "offset": 0, "allowSync": false, "art": "/:/resources/show-fanart.jpg", "content": "secondary", "identifier": "com.plexapp.plugins.library", "librarySectionID": 2, "librarySectionTitle": "TV Series", "librarySectionUUID": "e69655a2-ef48-4aba-bb19-0cc34d1e7d36", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "thumb": "/:/resources/show.png", "nocache": true, "title1": "TV Series", "title2": "By Starring Actor", "viewGroup": "secondary", "Meta": {"Type": [{"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}], "FieldType": [{"type": "tag", "Operator": []}]}, "Metadata": [{"ratingKey": "58683", "key": "/library/metadata/58683", "guid": "plex://movie/5d7768ba96b655001fdc0408", "slug": "4-for-texas", "studio": "20th Century Studios", "type": "movie", "title": "Avatar: The Way of Water", "titleSort": "Whale", "contentRating": "PG-13", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "rating": 7.6, "audienceRating": 9.2, "year": 2022, "tagline": "Return to Pandora.", "thumb": "/library/metadata/58683/thumb/1703239236", "art": "/library/metadata/58683/art/1703239236", "theme": "/library/metadata/1/theme/1705636920", "index": 1, "leafCount": 14, "viewedLeafCount": 0, "childCount": 1, "seasonCount": 2022, "duration": 11558112, "originallyAvailableAt": "2022-12-14", "addedAt": 1556281940, "updatedAt": 1556281940, "audienceRatingImage": "rottentomatoes://image.rating.upright", "chapterSource": "media", "primaryExtraKey": "/library/metadata/58684", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "parentRatingKey": "66", "grandparentRatingKey": "66", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/66", "parentKey": "/library/metadata/66", "grandparentTitle": "Caprica", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentArt": "/library/metadata/66/art/1705716261", "parentTitle": "Caprica", "parentIndex": 1, "parentThumb": "/library/metadata/66/thumb/1705716261", "ratingImage": "rottentomatoes://image.rating.ripe", "viewCount": 1, "viewOffset": 5222500, "skipCount": 1, "subtype": "clip", "lastRatedAt": 1721813113, "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "lastViewedAt": 1682752242, "userRating": 10, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}, {"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"tag": "Crime"}, {"tag": "Crime"}, {"tag": "Crime"}], "Country": [{"tag": "United States of America"}, {"tag": "United States of America"}], "Director": [{"tag": "Danny Boyle"}, {"tag": "Danny Boyle"}], "Writer": [{"tag": "Jamie P. Hanson"}, {"tag": "Jamie P. Hanson"}], "Role": [{"tag": "Teller"}], "Guid": [{"id": "tvdb://2337"}], "Collection": [{"tag": "My Awesome Collection"}, {"tag": "My Awesome Collection"}]}]}}
+ application/json: {"MediaContainer": {"size": 50, "totalSize": 50, "offset": 0, "allowSync": false, "art": "/:/resources/show-fanart.jpg", "content": "secondary", "identifier": "com.plexapp.plugins.library", "librarySectionID": 2, "librarySectionTitle": "TV Series", "librarySectionUUID": "e69655a2-ef48-4aba-bb19-0cc34d1e7d36", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "thumb": "/:/resources/show.png", "nocache": true, "title1": "TV Series", "title2": "By Starring Actor", "viewGroup": "secondary", "Meta": {"Type": [{"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}, {"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "filter", "subtype": "clip", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter", "advanced": true}], "Sort": [{"default": "asc", "active": false, "activeDirection": "asc", "defaultDirection": "asc", "descKey": "titleSort:desc", "firstCharacterKey": "/library/sections/2/firstCharacter", "key": "titleSort", "title": "Title"}], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}], "FieldType": [{"type": "tag", "Operator": []}]}, "Metadata": [{"ratingKey": "58683", "key": "/library/metadata/58683", "guid": "plex://movie/5d7768ba96b655001fdc0408", "slug": "4-for-texas", "studio": "20th Century Studios", "type": "movie", "title": "Avatar: The Way of Water", "titleSort": "Whale", "contentRating": "PG-13", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "rating": 7.6, "audienceRating": 9.2, "year": 2022, "tagline": "Return to Pandora.", "thumb": "/library/metadata/58683/thumb/1703239236", "art": "/library/metadata/58683/art/1703239236", "theme": "/library/metadata/1/theme/1705636920", "index": 1, "leafCount": 14, "viewedLeafCount": 0, "childCount": 1, "seasonCount": 2022, "duration": 11558112, "originallyAvailableAt": "2022-12-14", "addedAt": 1556281940, "updatedAt": 1556281940, "audienceRatingImage": "rottentomatoes://image.rating.upright", "chapterSource": "media", "primaryExtraKey": "/library/metadata/58684", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "parentRatingKey": "66", "grandparentRatingKey": "66", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/66", "parentKey": "/library/metadata/66", "grandparentTitle": "Caprica", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentArt": "/library/metadata/66/art/1705716261", "parentTitle": "Caprica", "parentIndex": 1, "parentThumb": "/library/metadata/66/thumb/1705716261", "ratingImage": "rottentomatoes://image.rating.ripe", "viewCount": 1, "viewOffset": 5222500, "skipCount": 1, "subtype": "clip", "lastRatedAt": 1721813113, "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "lastViewedAt": 1682752242, "userRating": 10, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}, {"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"tag": "Crime"}, {"tag": "Crime"}, {"tag": "Crime"}], "Country": [{"tag": "United States of America"}, {"tag": "United States of America"}], "Director": [{"tag": "Danny Boyle"}, {"tag": "Danny Boyle"}], "Writer": [{"tag": "Jamie P. Hanson"}, {"tag": "Jamie P. Hanson"}], "Role": [{"tag": "Teller"}], "Guid": [{"id": "tvdb://2337"}], "Collection": [{"tag": "My Awesome Collection"}, {"tag": "My Awesome Collection"}]}]}}
"400":
application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]}
"401":
@@ -2561,7 +2579,7 @@ examples:
asyncRefreshLocalMediaAgent: true
responses:
"200":
- application/json: {"MediaContainer": {"size": 50, "allowSync": false, "identifier": "com.plexapp.plugins.library", "librarySectionID": 2, "librarySectionTitle": "TV Series", "librarySectionUUID": "e69655a2-ef48-4aba-bb19-0cc34d1e7d36", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "Metadata": [{"ratingKey": "44288", "parentRatingKey": "48047", "grandparentRatingKey": "45520", "parentGuid": "plex://season/618b89208dde18df707ad15c", "grandparentGuid": "plex://show/5e16253691c20300412003a8", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/45520", "parentKey": "/library/metadata/48047", "key": "/library/metadata/44288/children", "guid": "plex://show/5d9c08254eefaa001f5d6dcb", "slug": "better-call-saul", "studio": "Sony Pictures Television", "type": "show", "title": "Better Call Saul", "originalTitle": "Wicked: Part I", "librarySectionTitle": "TV Series ", "librarySectionID": 2, "librarySectionKey": "/library/sections/2", "contentRating": "TV-MA", "summary": "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": 1, "grandparentTitle": "Alice in Borderland", "parentTitle": "Season 2", "audienceRating": 8.7, "viewCount": 4, "skipCount": 1, "lastViewedAt": 1625764795, "year": 2015, "rating": 6, "ratingImage": "rottentomatoes://image.rating.ripe", "tagline": "Make the call", "chapterSource": "media", "primaryExtraKey": "/library/metadata/134704", "thumb": "/library/metadata/44288/thumb/1736487993", "art": "/library/metadata/44288/art/1736487993", "theme": "/library/metadata/44288/theme/1736487993", "duration": 2700000, "originallyAvailableAt": "2015-02-08", "leafCount": 63, "viewedLeafCount": 4, "childCount": 6, "addedAt": 1556281940, "updatedAt": 1556281940, "audienceRatingImage": "themoviedb://image.rating", "parentIndex": 2, "parentThumb": "/library/metadata/48047/thumb/1671800243", "grandparentThumb": "/library/metadata/45520/thumb/1736488003", "grandparentArt": "/library/metadata/45520/art/1736488003", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Image": [{"alt": "Better Call Saul", "type": "coverPoster", "url": "/library/metadata/44288/thumb/1736487993"}, {"alt": "Better Call Saul", "type": "coverPoster", "url": "/library/metadata/44288/thumb/1736487993"}], "UltraBlurColors": {"topLeft": "11333a", "topRight": "1d2721", "bottomRight": "5c451d", "bottomLeft": "372c10"}, "Genre": [{"id": 1057, "filter": "genre=1057", "tag": "Crime"}], "Country": [{"id": 58591, "filter": "country=58591", "tag": "United States of America"}, {"id": 58591, "filter": "country=58591", "tag": "United States of America"}], "Guid": [{"id": "imdb://tt3032476"}, {"id": "imdb://tt3032476"}], "Rating": [{"image": "imdb://image.rating", "value": 9, "type": "audience"}], "Role": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Director": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Writer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}]}, {"ratingKey": "44288", "parentRatingKey": "48047", "grandparentRatingKey": "45520", "parentGuid": "plex://season/618b89208dde18df707ad15c", "grandparentGuid": "plex://show/5e16253691c20300412003a8", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/45520", "parentKey": "/library/metadata/48047", "key": "/library/metadata/44288/children", "guid": "plex://show/5d9c08254eefaa001f5d6dcb", "slug": "better-call-saul", "studio": "Sony Pictures Television", "type": "show", "title": "Better Call Saul", "originalTitle": "Wicked: Part I", "librarySectionTitle": "TV Series ", "librarySectionID": 2, "librarySectionKey": "/library/sections/2", "contentRating": "TV-MA", "summary": "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": 1, "grandparentTitle": "Alice in Borderland", "parentTitle": "Season 2", "audienceRating": 8.7, "viewCount": 4, "skipCount": 1, "lastViewedAt": 1625764795, "year": 2015, "rating": 6, "ratingImage": "rottentomatoes://image.rating.ripe", "tagline": "Make the call", "chapterSource": "media", "primaryExtraKey": "/library/metadata/134704", "thumb": "/library/metadata/44288/thumb/1736487993", "art": "/library/metadata/44288/art/1736487993", "theme": "/library/metadata/44288/theme/1736487993", "duration": 2700000, "originallyAvailableAt": "2015-02-08", "leafCount": 63, "viewedLeafCount": 4, "childCount": 6, "addedAt": 1556281940, "updatedAt": 1556281940, "audienceRatingImage": "themoviedb://image.rating", "parentIndex": 2, "parentThumb": "/library/metadata/48047/thumb/1671800243", "grandparentThumb": "/library/metadata/45520/thumb/1736488003", "grandparentArt": "/library/metadata/45520/art/1736488003", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Image": [{"alt": "Better Call Saul", "type": "coverPoster", "url": "/library/metadata/44288/thumb/1736487993"}], "UltraBlurColors": {"topLeft": "11333a", "topRight": "1d2721", "bottomRight": "5c451d", "bottomLeft": "372c10"}, "Genre": [{"id": 1057, "filter": "genre=1057", "tag": "Crime"}, {"id": 1057, "filter": "genre=1057", "tag": "Crime"}, {"id": 1057, "filter": "genre=1057", "tag": "Crime"}], "Country": [{"id": 58591, "filter": "country=58591", "tag": "United States of America"}], "Guid": [{"id": "imdb://tt3032476"}], "Rating": [{"image": "imdb://image.rating", "value": 9, "type": "audience"}], "Role": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Director": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Writer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}, {"path": "/TV Shows/Better Call Saul"}, {"path": "/TV Shows/Better Call Saul"}]}, {"ratingKey": "44288", "parentRatingKey": "48047", "grandparentRatingKey": "45520", "parentGuid": "plex://season/618b89208dde18df707ad15c", "grandparentGuid": "plex://show/5e16253691c20300412003a8", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/45520", "parentKey": "/library/metadata/48047", "key": "/library/metadata/44288/children", "guid": "plex://show/5d9c08254eefaa001f5d6dcb", "slug": "better-call-saul", "studio": "Sony Pictures Television", "type": "show", "title": "Better Call Saul", "originalTitle": "Wicked: Part I", "librarySectionTitle": "TV Series ", "librarySectionID": 2, "librarySectionKey": "/library/sections/2", "contentRating": "TV-MA", "summary": "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": 1, "grandparentTitle": "Alice in Borderland", "parentTitle": "Season 2", "audienceRating": 8.7, "viewCount": 4, "skipCount": 1, "lastViewedAt": 1625764795, "year": 2015, "rating": 6, "ratingImage": "rottentomatoes://image.rating.ripe", "tagline": "Make the call", "chapterSource": "media", "primaryExtraKey": "/library/metadata/134704", "thumb": "/library/metadata/44288/thumb/1736487993", "art": "/library/metadata/44288/art/1736487993", "theme": "/library/metadata/44288/theme/1736487993", "duration": 2700000, "originallyAvailableAt": "2015-02-08", "leafCount": 63, "viewedLeafCount": 4, "childCount": 6, "addedAt": 1556281940, "updatedAt": 1556281940, "audienceRatingImage": "themoviedb://image.rating", "parentIndex": 2, "parentThumb": "/library/metadata/48047/thumb/1671800243", "grandparentThumb": "/library/metadata/45520/thumb/1736488003", "grandparentArt": "/library/metadata/45520/art/1736488003", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Image": [{"alt": "Better Call Saul", "type": "coverPoster", "url": "/library/metadata/44288/thumb/1736487993"}, {"alt": "Better Call Saul", "type": "coverPoster", "url": "/library/metadata/44288/thumb/1736487993"}], "UltraBlurColors": {"topLeft": "11333a", "topRight": "1d2721", "bottomRight": "5c451d", "bottomLeft": "372c10"}, "Genre": [{"id": 1057, "filter": "genre=1057", "tag": "Crime"}], "Country": [{"id": 58591, "filter": "country=58591", "tag": "United States of America"}], "Guid": [{"id": "imdb://tt3032476"}, {"id": "imdb://tt3032476"}], "Rating": [{"image": "imdb://image.rating", "value": 9, "type": "audience"}], "Role": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Director": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Writer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}, {"path": "/TV Shows/Better Call Saul"}]}]}}
+ application/json: {"MediaContainer": {"size": 50, "allowSync": false, "identifier": "com.plexapp.plugins.library", "librarySectionID": 2, "librarySectionTitle": "TV Series", "librarySectionUUID": "e69655a2-ef48-4aba-bb19-0cc34d1e7d36", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "Metadata": [{"ratingKey": "58683", "key": "/library/metadata/58683", "guid": "plex://movie/5d7768ba96b655001fdc0408", "slug": "4-for-texas", "studio": "20th Century Studios", "type": "movie", "title": "Avatar: The Way of Water", "titleSort": "Whale", "contentRating": "PG-13", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "rating": 7.6, "audienceRating": 9.2, "year": 2022, "tagline": "Return to Pandora.", "thumb": "/library/metadata/58683/thumb/1703239236", "art": "/library/metadata/58683/art/1703239236", "theme": "/library/metadata/1/theme/1705636920", "index": 1, "leafCount": 14, "viewedLeafCount": 0, "childCount": 1, "seasonCount": 2022, "duration": 11558112, "originallyAvailableAt": "2022-12-14", "addedAt": 1556281940, "updatedAt": 1556281940, "audienceRatingImage": "rottentomatoes://image.rating.upright", "chapterSource": "media", "primaryExtraKey": "/library/metadata/58684", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "parentRatingKey": "66", "grandparentRatingKey": "66", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/66", "parentKey": "/library/metadata/66", "grandparentTitle": "Caprica", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentArt": "/library/metadata/66/art/1705716261", "parentTitle": "Caprica", "parentIndex": 1, "parentThumb": "/library/metadata/66/thumb/1705716261", "ratingImage": "rottentomatoes://image.rating.ripe", "viewCount": 1, "viewOffset": 5222500, "skipCount": 1, "subtype": "clip", "lastRatedAt": 1721813113, "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "lastViewedAt": 1682752242, "userRating": 10, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}, {"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "librarySectionID": 1, "librarySectionTitle": "Movies", "librarySectionKey": "/library/sections/1", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"id": 259, "tag": "Crime", "filter": "genre=19"}], "Country": [{"id": 259, "tag": "United States of America", "filter": "country=19"}, {"id": 259, "tag": "United States of America", "filter": "country=19"}], "Director": [{"id": 126522, "tag": "Danny Boyle", "filter": "director=235876", "tagKey": "5d776831151a60001f24d031", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg"}], "Writer": [{"id": 126522, "tag": "Jamie P. Hanson", "filter": "writer=126522", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "tag": "Jamie P. Hanson", "filter": "writer=126522", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg", "tagKey": "5d77683d85719b001f3a535e"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Role": [{"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Guid": [{"id": "imdb://tt3032476"}, {"id": "imdb://tt3032476"}], "Rating": [{"image": "imdb://image.rating", "value": 9, "type": "audience"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}], "Chapter": [{"id": 4, "filter": "thumb=4", "index": 1, "startTimeOffset": 0, "endTimeOffset": 100100, "thumb": "/library/media/46883/chapterImages/1"}, {"id": 4, "filter": "thumb=4", "index": 1, "startTimeOffset": 0, "endTimeOffset": 100100, "thumb": "/library/media/46883/chapterImages/1"}, {"id": 4, "filter": "thumb=4", "index": 1, "startTimeOffset": 0, "endTimeOffset": 100100, "thumb": "/library/media/46883/chapterImages/1"}], "Marker": [{"id": 306970, "type": "credits", "startTimeOffset": 4176050, "endTimeOffset": 4393389, "final": true, "Attributes": {"id": 306970, "version": 4}}, {"id": 306970, "type": "credits", "startTimeOffset": 4176050, "endTimeOffset": 4393389, "final": true, "Attributes": {"id": 306970, "version": 4}}, {"id": 306970, "type": "credits", "startTimeOffset": 4176050, "endTimeOffset": 4393389, "final": true, "Attributes": {"id": 306970, "version": 4}}], "Extras": {"size": 1}}, {"ratingKey": "58683", "key": "/library/metadata/58683", "guid": "plex://movie/5d7768ba96b655001fdc0408", "slug": "4-for-texas", "studio": "20th Century Studios", "type": "movie", "title": "Avatar: The Way of Water", "titleSort": "Whale", "contentRating": "PG-13", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "rating": 7.6, "audienceRating": 9.2, "year": 2022, "tagline": "Return to Pandora.", "thumb": "/library/metadata/58683/thumb/1703239236", "art": "/library/metadata/58683/art/1703239236", "theme": "/library/metadata/1/theme/1705636920", "index": 1, "leafCount": 14, "viewedLeafCount": 0, "childCount": 1, "seasonCount": 2022, "duration": 11558112, "originallyAvailableAt": "2022-12-14", "addedAt": 1556281940, "updatedAt": 1556281940, "audienceRatingImage": "rottentomatoes://image.rating.upright", "chapterSource": "media", "primaryExtraKey": "/library/metadata/58684", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "parentRatingKey": "66", "grandparentRatingKey": "66", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/66", "parentKey": "/library/metadata/66", "grandparentTitle": "Caprica", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentArt": "/library/metadata/66/art/1705716261", "parentTitle": "Caprica", "parentIndex": 1, "parentThumb": "/library/metadata/66/thumb/1705716261", "ratingImage": "rottentomatoes://image.rating.ripe", "viewCount": 1, "viewOffset": 5222500, "skipCount": 1, "subtype": "clip", "lastRatedAt": 1721813113, "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "lastViewedAt": 1682752242, "userRating": 10, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "librarySectionID": 1, "librarySectionTitle": "Movies", "librarySectionKey": "/library/sections/1", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"id": 259, "tag": "Crime", "filter": "genre=19"}, {"id": 259, "tag": "Crime", "filter": "genre=19"}, {"id": 259, "tag": "Crime", "filter": "genre=19"}], "Country": [{"id": 259, "tag": "United States of America", "filter": "country=19"}], "Director": [{"id": 126522, "tag": "Danny Boyle", "filter": "director=235876", "tagKey": "5d776831151a60001f24d031", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg"}, {"id": 126522, "tag": "Danny Boyle", "filter": "director=235876", "tagKey": "5d776831151a60001f24d031", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg"}], "Writer": [{"id": 126522, "tag": "Jamie P. Hanson", "filter": "writer=126522", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "tag": "Jamie P. Hanson", "filter": "writer=126522", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg", "tagKey": "5d77683d85719b001f3a535e"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Role": [{"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Guid": [{"id": "imdb://tt3032476"}], "Rating": [{"image": "imdb://image.rating", "value": 9, "type": "audience"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}, {"path": "/TV Shows/Better Call Saul"}, {"path": "/TV Shows/Better Call Saul"}], "Chapter": [{"id": 4, "filter": "thumb=4", "index": 1, "startTimeOffset": 0, "endTimeOffset": 100100, "thumb": "/library/media/46883/chapterImages/1"}, {"id": 4, "filter": "thumb=4", "index": 1, "startTimeOffset": 0, "endTimeOffset": 100100, "thumb": "/library/media/46883/chapterImages/1"}], "Marker": [{"id": 306970, "type": "credits", "startTimeOffset": 4176050, "endTimeOffset": 4393389, "final": true, "Attributes": {"id": 306970, "version": 4}}, {"id": 306970, "type": "credits", "startTimeOffset": 4176050, "endTimeOffset": 4393389, "final": true, "Attributes": {"id": 306970, "version": 4}}, {"id": 306970, "type": "credits", "startTimeOffset": 4176050, "endTimeOffset": 4393389, "final": true, "Attributes": {"id": 306970, "version": 4}}], "Extras": {"size": 1}}, {"ratingKey": "58683", "key": "/library/metadata/58683", "guid": "plex://movie/5d7768ba96b655001fdc0408", "slug": "4-for-texas", "studio": "20th Century Studios", "type": "movie", "title": "Avatar: The Way of Water", "titleSort": "Whale", "contentRating": "PG-13", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\nOnce a familiar threat returns to finish what was previously started, Jake must\nwork with Neytiri and the army of the Na'vi race to protect their home.\n", "rating": 7.6, "audienceRating": 9.2, "year": 2022, "tagline": "Return to Pandora.", "thumb": "/library/metadata/58683/thumb/1703239236", "art": "/library/metadata/58683/art/1703239236", "theme": "/library/metadata/1/theme/1705636920", "index": 1, "leafCount": 14, "viewedLeafCount": 0, "childCount": 1, "seasonCount": 2022, "duration": 11558112, "originallyAvailableAt": "2022-12-14", "addedAt": 1556281940, "updatedAt": 1556281940, "audienceRatingImage": "rottentomatoes://image.rating.upright", "chapterSource": "media", "primaryExtraKey": "/library/metadata/58684", "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "parentRatingKey": "66", "grandparentRatingKey": "66", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/66", "parentKey": "/library/metadata/66", "grandparentTitle": "Caprica", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentTheme": "/library/metadata/66/theme/1705716261", "grandparentArt": "/library/metadata/66/art/1705716261", "parentTitle": "Caprica", "parentIndex": 1, "parentThumb": "/library/metadata/66/thumb/1705716261", "ratingImage": "rottentomatoes://image.rating.ripe", "viewCount": 1, "viewOffset": 5222500, "skipCount": 1, "subtype": "clip", "lastRatedAt": 1721813113, "createdAtAccuracy": "epoch,local", "createdAtTZOffset": "0", "lastViewedAt": 1682752242, "userRating": 10, "Image": [{"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}, {"alt": "Episode 1", "type": "background", "url": "/library/metadata/45521/thumb/1644710589"}], "UltraBlurColors": {"topLeft": "11333b", "topRight": "0a232d", "bottomRight": "73958", "bottomLeft": "1f5066"}, "librarySectionID": 1, "librarySectionTitle": "Movies", "librarySectionKey": "/library/sections/1", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "displayOffset": 50, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "audioProfile": "dts", "has64bitOffsets": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "packetLength": 188, "container": "mkv", "videoProfile": "main 10", "audioProfile": "dts", "has64bitOffsets": false, "hasThumbnail": "1", "Stream": [{"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "format": "srt", "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "headerCompression": true, "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "closedCaptions": true, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "key": "/library/streams/216389", "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "embeddedInVideo": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Genre": [{"id": 259, "tag": "Crime", "filter": "genre=19"}], "Country": [{"id": 259, "tag": "United States of America", "filter": "country=19"}], "Director": [{"id": 126522, "tag": "Danny Boyle", "filter": "director=235876", "tagKey": "5d776831151a60001f24d031", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg"}, {"id": 126522, "tag": "Danny Boyle", "filter": "director=235876", "tagKey": "5d776831151a60001f24d031", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg"}, {"id": 126522, "tag": "Danny Boyle", "filter": "director=235876", "tagKey": "5d776831151a60001f24d031", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg"}], "Writer": [{"id": 126522, "tag": "Jamie P. Hanson", "filter": "writer=126522", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "tag": "Jamie P. Hanson", "filter": "writer=126522", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg", "tagKey": "5d77683d85719b001f3a535e"}, {"id": 126522, "tag": "Jamie P. Hanson", "filter": "writer=126522", "thumb": "https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg", "tagKey": "5d77683d85719b001f3a535e"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Role": [{"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}, {"id": 126522, "tag": "Teller", "role": "Self - Judge", "filter": "actor=126522", "tagKey": "5d77683d85719b001f3a535e", "thumb": "https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg"}], "Guid": [{"id": "imdb://tt3032476"}, {"id": "imdb://tt3032476"}], "Rating": [{"image": "imdb://image.rating", "value": 9, "type": "audience"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}, {"path": "/TV Shows/Better Call Saul"}], "Chapter": [{"id": 4, "filter": "thumb=4", "index": 1, "startTimeOffset": 0, "endTimeOffset": 100100, "thumb": "/library/media/46883/chapterImages/1"}, {"id": 4, "filter": "thumb=4", "index": 1, "startTimeOffset": 0, "endTimeOffset": 100100, "thumb": "/library/media/46883/chapterImages/1"}, {"id": 4, "filter": "thumb=4", "index": 1, "startTimeOffset": 0, "endTimeOffset": 100100, "thumb": "/library/media/46883/chapterImages/1"}], "Marker": [{"id": 306970, "type": "credits", "startTimeOffset": 4176050, "endTimeOffset": 4393389, "final": true, "Attributes": {"id": 306970, "version": 4}}], "Extras": {"size": 1}}]}}
"400":
application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]}
"401":
diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml
index d09d889..d37e3e8 100644
--- a/.speakeasy/gen.yaml
+++ b/.speakeasy/gen.yaml
@@ -11,11 +11,12 @@ generation:
parameterOrderingFeb2024: true
requestResponseComponentNamesFeb2024: true
securityFeb2025: false
+ sharedErrorComponentsApr2025: false
auth:
oAuth2ClientCredentialsEnabled: false
oAuth2PasswordEnabled: false
ruby:
- version: 0.11.1
+ version: 0.12.1
additionalDependencies:
development: {}
runtime: {}
diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock
index 9d4c343..db50e03 100644
--- a/.speakeasy/workflow.lock
+++ b/.speakeasy/workflow.lock
@@ -9,19 +9,19 @@ sources:
- main
plexapi:
sourceNamespace: plexapi
- sourceRevisionDigest: sha256:b2f9599237ceb13cf8f9c1693e38b290177b65fb389cebf0c3c60b8ef4778615
- sourceBlobDigest: sha256:f8df9ef88ada992cd981d601e6c0b45cc82db76aba3d915c2f9d08f90c81ced9
+ sourceRevisionDigest: sha256:31ab7b2e65ccf1e0349bcd8b35791d1ce80091313481874749163fc0c80fd8ed
+ sourceBlobDigest: sha256:d971fff9723c626fe70403a2a83d813c396a20b06ccd6b899263762038cfdbb0
tags:
- latest
- - speakeasy-sdk-regen-1745107771
+ - speakeasy-sdk-regen-1746144545
targets:
plexruby:
source: plexapi
sourceNamespace: plexapi
- sourceRevisionDigest: sha256:b2f9599237ceb13cf8f9c1693e38b290177b65fb389cebf0c3c60b8ef4778615
- sourceBlobDigest: sha256:f8df9ef88ada992cd981d601e6c0b45cc82db76aba3d915c2f9d08f90c81ced9
+ sourceRevisionDigest: sha256:31ab7b2e65ccf1e0349bcd8b35791d1ce80091313481874749163fc0c80fd8ed
+ sourceBlobDigest: sha256:d971fff9723c626fe70403a2a83d813c396a20b06ccd6b899263762038cfdbb0
codeSamplesNamespace: code-samples-ruby-plexruby
- codeSamplesRevisionDigest: sha256:198b59e6e22a3e54d0d70313049b6eb164324914688a30921eb7a81f89ee4e08
+ codeSamplesRevisionDigest: sha256:19decd0842d9054e6319e190ba63514ca8ee2e51e23ff636c936b890024e7870
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
diff --git a/Gemfile.lock b/Gemfile.lock
index 1aabe96..c0bfdbf 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,7 +1,7 @@
PATH
remote: .
specs:
- plex_ruby_sdk (0.11.1)
+ plex_ruby_sdk (0.12.1)
faraday
faraday-multipart
faraday-retry (~> 2.2.1)
diff --git a/RELEASES.md b/RELEASES.md
index a6b757a..46ffc8a 100644
--- a/RELEASES.md
+++ b/RELEASES.md
@@ -796,4 +796,14 @@ Based on:
### Generated
- [ruby v0.11.1] .
### Releases
-- [Ruby Gems v0.11.1] https://rubygems.org/gems/plex_ruby_sdk/versions/0.11.1 - .
\ No newline at end of file
+- [Ruby Gems v0.11.1] https://rubygems.org/gems/plex_ruby_sdk/versions/0.11.1 - .
+
+## 2025-05-02 00:08:48
+### Changes
+Based on:
+- OpenAPI Doc
+- Speakeasy CLI 1.531.4 (2.570.4) https://github.com/speakeasy-api/speakeasy
+### Generated
+- [ruby v0.12.1] .
+### Releases
+- [Ruby Gems v0.12.1] https://rubygems.org/gems/plex_ruby_sdk/versions/0.12.1 - .
\ No newline at end of file
diff --git a/docs/models/operations/attributes.md b/docs/models/operations/attributes.md
new file mode 100644
index 0000000..18305d2
--- /dev/null
+++ b/docs/models/operations/attributes.md
@@ -0,0 +1,11 @@
+# Attributes
+
+Attributes associated with the marker.
+
+
+## Fields
+
+| Field | Type | Required | Description | Example |
+| -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- |
+| `id` | *::Integer* | :heavy_check_mark: | The identifier for the attributes. | 306970 |
+| `version` | *T.nilable(::Integer)* | :heavy_minus_sign: | The version number of the marker attributes. | 4 |
\ No newline at end of file
diff --git a/docs/models/operations/chapter.md b/docs/models/operations/chapter.md
new file mode 100644
index 0000000..2f3b48e
--- /dev/null
+++ b/docs/models/operations/chapter.md
@@ -0,0 +1,15 @@
+# Chapter
+
+The thumbnail for the chapter
+
+
+## Fields
+
+| Field | Type | Required | Description | Example |
+| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ |
+| `id` | *::Integer* | :heavy_check_mark: | N/A | 4 |
+| `filter` | *::String* | :heavy_check_mark: | N/A | thumb=4 |
+| `index` | *::Integer* | :heavy_check_mark: | N/A | 1 |
+| `start_time_offset` | *::Integer* | :heavy_check_mark: | N/A | 0 |
+| `end_time_offset` | *::Integer* | :heavy_check_mark: | N/A | 100100 |
+| `thumb` | *::String* | :heavy_check_mark: | N/A | /library/media/46883/chapterImages/1 |
\ No newline at end of file
diff --git a/docs/models/operations/extras.md b/docs/models/operations/extras.md
new file mode 100644
index 0000000..e46cb7f
--- /dev/null
+++ b/docs/models/operations/extras.md
@@ -0,0 +1,8 @@
+# Extras
+
+
+## Fields
+
+| Field | Type | Required | Description | Example |
+| ----------------------- | ----------------------- | ----------------------- | ----------------------- | ----------------------- |
+| `size` | *T.nilable(::Integer)* | :heavy_minus_sign: | The size of the extras. | 1 |
\ No newline at end of file
diff --git a/docs/models/operations/getallmedialibrarystream.md b/docs/models/operations/getallmedialibrarystream.md
index 21c269b..6f0ed2d 100644
--- a/docs/models/operations/getallmedialibrarystream.md
+++ b/docs/models/operations/getallmedialibrarystream.md
@@ -3,54 +3,56 @@
## Fields
-| Field | Type | Required | Description | Example |
-| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
-| `id` | *::Integer* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
-| `stream_type` | *::Integer* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
-| `default` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is default. | true |
-| `codec` | *::String* | :heavy_check_mark: | Codec used by the stream. | hevc |
-| `index` | *::Integer* | :heavy_check_mark: | Index of the stream. | 0 |
-| `bitrate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
-| `language` | *T.nilable(::String)* | :heavy_minus_sign: | Language of the stream. | English |
-| `language_tag` | *T.nilable(::String)* | :heavy_minus_sign: | Language tag (e.g., en). | en |
-| `language_code` | *T.nilable(::String)* | :heavy_minus_sign: | ISO language code. | eng |
-| `header_compression` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
-| `dovibl_compat_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
-| `dovibl_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
-| `doviel_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
-| `dovi_level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision level. | 6 |
-| `dovi_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
-| `dovi_profile` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
-| `dovirpu_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
-| `dovi_version` | *T.nilable(::String)* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
-| `bit_depth` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
-| `chroma_location` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma sample location. | topleft |
-| `chroma_subsampling` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
-| `coded_height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video height. | 1608 |
-| `coded_width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video width. | 3840 |
-| `closed_captions` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
-| `color_primaries` | *T.nilable(::String)* | :heavy_minus_sign: | Color primaries used. | bt2020 |
-| `color_range` | *T.nilable(::String)* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
-| `color_space` | *T.nilable(::String)* | :heavy_minus_sign: | Color space. | bt2020nc |
-| `color_trc` | *T.nilable(::String)* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
-| `frame_rate` | *T.nilable(::Float)* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
-| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Height of the video stream. | 1602 |
-| `level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Video level. | 150 |
-| `original` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
-| `has_scaling_matrix` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false |
-| `profile` | *T.nilable(::String)* | :heavy_minus_sign: | Video profile. | main 10 |
-| `scan_type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
-| `embedded_in_video` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
-| `ref_frames` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of reference frames. | 1 |
-| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Width of the video stream. | 3840 |
-| `display_title` | *::String* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
-| `extended_display_title` | *::String* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
-| `selected` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
-| `forced` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
-| `channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
-| `audio_channel_layout` | *T.nilable(::String)* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
-| `sampling_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
-| `can_auto_sync` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
-| `hearing_impaired` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
-| `dub` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
-| `title` | *T.nilable(::String)* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
+| `id` | *::Integer* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
+| `stream_type` | [Models::Operations::GetAllMediaLibraryStreamType](../../models/operations/getallmedialibrarystreamtype.md) | :heavy_check_mark: | Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
| 1 |
+| `format` | *T.nilable(::String)* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
+| `default` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is default. | true |
+| `codec` | *::String* | :heavy_check_mark: | Codec used by the stream. | hevc |
+| `index` | *T.nilable(::Integer)* | :heavy_minus_sign: | Index of the stream. | 0 |
+| `bitrate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
+| `language` | *T.nilable(::String)* | :heavy_minus_sign: | Language of the stream. | English |
+| `language_tag` | *T.nilable(::String)* | :heavy_minus_sign: | Language tag (e.g., en). | en |
+| `language_code` | *T.nilable(::String)* | :heavy_minus_sign: | ISO language code. | eng |
+| `header_compression` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
+| `dovibl_compat_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
+| `dovibl_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
+| `doviel_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
+| `dovi_level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision level. | 6 |
+| `dovi_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
+| `dovi_profile` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
+| `dovirpu_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
+| `dovi_version` | *T.nilable(::String)* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
+| `bit_depth` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
+| `chroma_location` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma sample location. | topleft |
+| `chroma_subsampling` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
+| `coded_height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video height. | 1608 |
+| `coded_width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video width. | 3840 |
+| `closed_captions` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
+| `color_primaries` | *T.nilable(::String)* | :heavy_minus_sign: | Color primaries used. | bt2020 |
+| `color_range` | *T.nilable(::String)* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
+| `color_space` | *T.nilable(::String)* | :heavy_minus_sign: | Color space. | bt2020nc |
+| `color_trc` | *T.nilable(::String)* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
+| `frame_rate` | *T.nilable(::Float)* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
+| `key` | *T.nilable(::String)* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
+| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Height of the video stream. | 1602 |
+| `level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Video level. | 150 |
+| `original` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
+| `has_scaling_matrix` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false |
+| `profile` | *T.nilable(::String)* | :heavy_minus_sign: | Video profile. | main 10 |
+| `scan_type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
+| `embedded_in_video` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
+| `ref_frames` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of reference frames. | 1 |
+| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Width of the video stream. | 3840 |
+| `display_title` | *::String* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
+| `extended_display_title` | *::String* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
+| `selected` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
+| `forced` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
+| `channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
+| `audio_channel_layout` | *T.nilable(::String)* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
+| `sampling_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
+| `can_auto_sync` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
+| `hearing_impaired` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
+| `dub` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
+| `title` | *T.nilable(::String)* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
\ No newline at end of file
diff --git a/docs/models/operations/getallmedialibrarystreamtype.md b/docs/models/operations/getallmedialibrarystreamtype.md
new file mode 100644
index 0000000..8975cfe
--- /dev/null
+++ b/docs/models/operations/getallmedialibrarystreamtype.md
@@ -0,0 +1,16 @@
+# GetAllMediaLibraryStreamType
+
+Stream type:
+ - 1 = video
+ - 2 = audio
+ - 3 = subtitle
+
+
+
+## Values
+
+| Name | Value |
+| ---------- | ---------- |
+| `VIDEO` | 1 |
+| `AUDIO` | 2 |
+| `SUBTITLE` | 3 |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatacountry.md b/docs/models/operations/getmediametadatacountry.md
index c3d60a6..fb1186d 100644
--- a/docs/models/operations/getmediametadatacountry.md
+++ b/docs/models/operations/getmediametadatacountry.md
@@ -1,10 +1,12 @@
# GetMediaMetaDataCountry
+The filter query string for country media items.
+
## Fields
-| Field | Type | Required | Description | Example |
-| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- |
-| `id` | *::Integer* | :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 |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
+| `id` | *::Integer* | :heavy_check_mark: | N/A | 259 |
+| `tag` | *::String* | :heavy_check_mark: | The country of origin of this media item | United States of America |
+| `filter` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | country=19 |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatadirector.md b/docs/models/operations/getmediametadatadirector.md
index 6ce241e..1d5ba22 100644
--- a/docs/models/operations/getmediametadatadirector.md
+++ b/docs/models/operations/getmediametadatadirector.md
@@ -3,11 +3,10 @@
## Fields
-| Field | Type | Required | Description | Example |
-| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
-| `id` | *::Integer* | :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 |
-| `tag_key` | *::String* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 |
-| `role` | *T.nilable(::String)* | :heavy_minus_sign: | The character name or role. | Jimmy McGill |
-| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
+| `id` | *::Integer* | :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 |
+| `tag_key` | *T.nilable(::String)* | :heavy_minus_sign: | A unique key associated with the director's tag, used for internal identification. | 5d776831151a60001f24d031 |
+| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the thumbnail image for the director. | https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatagenre.md b/docs/models/operations/getmediametadatagenre.md
index 5d0da7c..84e49a5 100644
--- a/docs/models/operations/getmediametadatagenre.md
+++ b/docs/models/operations/getmediametadatagenre.md
@@ -1,10 +1,12 @@
# GetMediaMetaDataGenre
+The filter query string for similar items.
+
## Fields
-| Field | Type | Required | Description | Example |
-| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- |
-| `id` | *::Integer* | :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 |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- |
+| `id` | *::Integer* | :heavy_check_mark: | N/A | 259 |
+| `tag` | *::String* | :heavy_check_mark: | The genre name of this media-item
| Crime |
+| `filter` | *::String* | :heavy_check_mark: | N/A | genre=19 |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadataimage.md b/docs/models/operations/getmediametadataimage.md
index c10c29e..cfa610b 100644
--- a/docs/models/operations/getmediametadataimage.md
+++ b/docs/models/operations/getmediametadataimage.md
@@ -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 |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
+| `alt` | *::String* | :heavy_check_mark: | N/A | Episode 1 |
+| `type` | [Models::Operations::GetMediaMetaDataLibraryType](../../models/operations/getmediametadatalibrarytype.md) | :heavy_check_mark: | N/A | background |
+| `url` | *::String* | :heavy_check_mark: | N/A | /library/metadata/45521/thumb/1644710589 |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatalibrarytype.md b/docs/models/operations/getmediametadatalibrarytype.md
new file mode 100644
index 0000000..77547ef
--- /dev/null
+++ b/docs/models/operations/getmediametadatalibrarytype.md
@@ -0,0 +1,11 @@
+# GetMediaMetaDataLibraryType
+
+
+## Values
+
+| Name | Value |
+| -------------- | -------------- |
+| `COVER_POSTER` | coverPoster |
+| `BACKGROUND` | background |
+| `SNAPSHOT` | snapshot |
+| `CLEAR_LOGO` | clearLogo |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatametadata.md b/docs/models/operations/getmediametadatametadata.md
index 062f414..9986255 100644
--- a/docs/models/operations/getmediametadatametadata.md
+++ b/docs/models/operations/getmediametadatametadata.md
@@ -1,68 +1,83 @@
# GetMediaMetaDataMetadata
+Unknown
+
+
## Fields
-| Field | Type | Required | Description | Example |
-| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `rating_key` | *::String* | :heavy_check_mark: | The rating key of the metadata item. | 44288 |
-| `parent_rating_key` | *T.nilable(::String)* | :heavy_minus_sign: | The rating key of the parent of this metadata item. | 48047 |
-| `grandparent_rating_key` | *T.nilable(::String)* | :heavy_minus_sign: | The rating key of the grandparent of this metadata item. | 45520 |
-| `parent_guid` | *T.nilable(::String)* | :heavy_minus_sign: | A GUID identifying the parent entity (e.g., season) for the item. | plex://season/618b89208dde18df707ad15c |
-| `grandparent_guid` | *T.nilable(::String)* | :heavy_minus_sign: | A GUID identifying the grandparent entity (e.g., show). | plex://show/5e16253691c20300412003a8 |
-| `grandparent_slug` | *T.nilable(::String)* | :heavy_minus_sign: | A URL-friendly identifier (slug) for the grandparent entity. | alice-in-borderland-2020 |
-| `grandparent_key` | *T.nilable(::String)* | :heavy_minus_sign: | A key identifying the grandparent metadata in the library. | /library/metadata/45520 |
-| `parent_key` | *T.nilable(::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` | *T.nilable(::String)* | :heavy_minus_sign: | A URL-friendly identifier for the item. | better-call-saul |
-| `studio` | *T.nilable(::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 |
-| `original_title` | *T.nilable(::String)* | :heavy_minus_sign: | The original title of the content. | Wicked: Part I |
-| `library_section_title` | *::String* | :heavy_check_mark: | The title of the library section. | TV Series |
-| `library_section_id` | *::Integer* | :heavy_check_mark: | The ID of the library section. | 2 |
-| `library_section_key` | *::String* | :heavy_check_mark: | The key of the library section. | /library/sections/2 |
-| `content_rating` | *T.nilable(::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` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index or order of the item. | 1 |
-| `grandparent_title` | *T.nilable(::String)* | :heavy_minus_sign: | The title of the grandparent entity (typically the show's title). | Alice in Borderland |
-| `parent_title` | *T.nilable(::String)* | :heavy_minus_sign: | The title of the parent entity (typically the season's title). | Season 2 |
-| `audience_rating` | *T.nilable(::Float)* | :heavy_minus_sign: | The audience rating for the content. | 8.7 |
-| `view_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of times the item has been viewed. | 4 |
-| `skip_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of times the item has been skipped. | 1 |
-| `last_viewed_at` | *T.nilable(::Integer)* | :heavy_minus_sign: | Unix timestamp of when the item was last viewed. | 1625764795 |
-| `year` | *::Integer* | :heavy_check_mark: | The release year. | 2015 |
-| `rating` | *T.nilable(::Float)* | :heavy_minus_sign: | The general rating | 6 |
-| `rating_image` | *T.nilable(::String)* | :heavy_minus_sign: | The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image). | rottentomatoes://image.rating.ripe |
-| `tagline` | *T.nilable(::String)* | :heavy_minus_sign: | The tagline of the content. | Make the call |
-| `chapter_source` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | media |
-| `primary_extra_key` | *T.nilable(::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` | *T.nilable(::String)* | :heavy_minus_sign: | URL of the theme image. | /library/metadata/44288/theme/1736487993 |
-| `duration` | *::Integer* | :heavy_check_mark: | Duration of the content in milliseconds. | 2700000 |
-| `originally_available_at` | [DateTime](https://ruby-doc.org/stdlib-2.6.1/libdoc/date/rdoc/DateTime.html) | :heavy_minus_sign: | The original release date. | 2015-02-08 |
-| `leaf_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The total number of episodes (or leaves). | 63 |
-| `viewed_leaf_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of episodes that have been viewed. | 4 |
-| `child_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of child items. | 6 |
-| `added_at` | *::Integer* | :heavy_check_mark: | N/A | 1556281940 |
-| `updated_at` | *::Integer* | :heavy_check_mark: | N/A | 1556281940 |
-| `audience_rating_image` | *T.nilable(::String)* | :heavy_minus_sign: | The URL for the audience rating image. | themoviedb://image.rating |
-| `parent_index` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index number of the parent entity, which could indicate its order or position. | 2 |
-| `parent_thumb` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the parent's thumbnail image. | /library/metadata/48047/thumb/1671800243 |
-| `grandparent_thumb` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the grandparent's thumbnail image. | /library/metadata/45520/thumb/1736488003 |
-| `grandparent_art` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the grandparent's art image. | /library/metadata/45520/art/1736488003 |
-| `media` | T::Array<[Models::Operations::GetMediaMetaDataMedia](../../models/operations/getmediametadatamedia.md)> | :heavy_minus_sign: | N/A | |
-| `image` | T::Array<[Models::Operations::GetMediaMetaDataImage](../../models/operations/getmediametadataimage.md)> | :heavy_check_mark: | An array of image objects. | |
-| `ultra_blur_colors` | [Models::Operations::GetMediaMetaDataUltraBlurColors](../../models/operations/getmediametadataultrablurcolors.md) | :heavy_check_mark: | N/A | |
-| `genre` | T::Array<[Models::Operations::GetMediaMetaDataGenre](../../models/operations/getmediametadatagenre.md)> | :heavy_minus_sign: | An array of genre tags. | |
-| `country` | T::Array<[Models::Operations::GetMediaMetaDataCountry](../../models/operations/getmediametadatacountry.md)> | :heavy_minus_sign: | An array of country tags. | |
-| `guids` | T::Array<[Models::Operations::GetMediaMetaDataGuids](../../models/operations/getmediametadataguids.md)> | :heavy_minus_sign: | An array of GUID objects. | |
-| `ratings` | T::Array<[Models::Operations::Ratings](../../models/operations/ratings.md)> | :heavy_minus_sign: | An array of rating objects. | |
-| `role` | T::Array<[Models::Operations::GetMediaMetaDataRole](../../models/operations/getmediametadatarole.md)> | :heavy_minus_sign: | An array of Actor roles. | |
-| `director` | T::Array<[Models::Operations::GetMediaMetaDataDirector](../../models/operations/getmediametadatadirector.md)> | :heavy_minus_sign: | An array of Director roles. | |
-| `writer` | T::Array<[Models::Operations::GetMediaMetaDataWriter](../../models/operations/getmediametadatawriter.md)> | :heavy_minus_sign: | An array of Writer roles. | |
-| `producer` | T::Array<[Models::Operations::GetMediaMetaDataProducer](../../models/operations/getmediametadataproducer.md)> | :heavy_minus_sign: | An array of Writer roles. | |
-| `similar` | T::Array<[Models::Operations::GetMediaMetaDataSimilar](../../models/operations/getmediametadatasimilar.md)> | :heavy_minus_sign: | An array of similar content objects. | |
-| `location` | T::Array<[Models::Operations::GetMediaMetaDataLocation](../../models/operations/getmediametadatalocation.md)> | :heavy_minus_sign: | An array of location objects. | |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| `rating_key` | *::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 URL‐friendly version of the media title. | 4-for-texas |
+| `studio` | *T.nilable(::String)* | :heavy_minus_sign: | The studio that produced the media item. | 20th Century Studios |
+| `type` | [Models::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 |
+| `title_sort` | *::String* | :heavy_check_mark: | The sort title used for ordering media items. | Whale |
+| `content_rating` | *T.nilable(::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.
Once a familiar threat returns to finish what was previously started, Jake must
work with Neytiri and the army of the Na'vi race to protect their home.
|
+| `rating` | *::Float* | :heavy_check_mark: | The critic rating for the media item. | 7.6 |
+| `audience_rating` | *::Float* | :heavy_check_mark: | The audience rating for the media item. | 9.2 |
+| `year` | *T.nilable(::Integer)* | :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` | *::Integer* | :heavy_check_mark: | The index position of the media item. | 1 |
+| `leaf_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of leaf items (end nodes) under this media item. | 14 |
+| `viewed_leaf_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of leaf items that have been viewed. | 0 |
+| `child_count` | *::Integer* | :heavy_check_mark: | The number of child items associated with this media item. | 1 |
+| `season_count` | *::Integer* | :heavy_check_mark: | The total number of seasons (for TV shows). | 2022 |
+| `duration` | *::Integer* | :heavy_check_mark: | The duration of the media item in milliseconds. | 11558112 |
+| `originally_available_at` | [DateTime](https://ruby-doc.org/stdlib-2.6.1/libdoc/date/rdoc/DateTime.html) | :heavy_check_mark: | The original release date of the media item. | 2022-12-14 |
+| `added_at` | *::Integer* | :heavy_check_mark: | N/A | 1556281940 |
+| `updated_at` | *T.nilable(::Integer)* | :heavy_minus_sign: | Unix epoch datetime in seconds | 1556281940 |
+| `audience_rating_image` | *T.nilable(::String)* | :heavy_minus_sign: | The URL for the audience rating image. | rottentomatoes://image.rating.upright |
+| `chapter_source` | *T.nilable(::String)* | :heavy_minus_sign: | The source from which chapter data is derived. | media |
+| `primary_extra_key` | *T.nilable(::String)* | :heavy_minus_sign: | The primary extra key associated with this media item. | /library/metadata/58684 |
+| `original_title` | *T.nilable(::String)* | :heavy_minus_sign: | The original title of the media item (if different). | 映画 ブラッククローバー 魔法帝の剣 |
+| `parent_rating_key` | *T.nilable(::String)* | :heavy_minus_sign: | The rating key of the parent media item. | 66 |
+| `grandparent_rating_key` | *T.nilable(::String)* | :heavy_minus_sign: | The rating key of the grandparent media item. | 66 |
+| `parent_guid` | *T.nilable(::String)* | :heavy_minus_sign: | The GUID of the parent media item. | plex://show/5d9c081b170e24001f2a7be4 |
+| `grandparent_guid` | *T.nilable(::String)* | :heavy_minus_sign: | The GUID of the grandparent media item. | plex://show/5d9c081b170e24001f2a7be4 |
+| `grandparent_slug` | *T.nilable(::String)* | :heavy_minus_sign: | The slug for the grandparent media item. | alice-in-borderland-2020 |
+| `grandparent_key` | *T.nilable(::String)* | :heavy_minus_sign: | The key of the grandparent media item. | /library/metadata/66 |
+| `parent_key` | *T.nilable(::String)* | :heavy_minus_sign: | The key of the parent media item. | /library/metadata/66 |
+| `grandparent_title` | *T.nilable(::String)* | :heavy_minus_sign: | The title of the grandparent media item. | Caprica |
+| `grandparent_thumb` | *T.nilable(::String)* | :heavy_minus_sign: | The thumbnail URL for the grandparent media item. | /library/metadata/66/thumb/1705716261 |
+| `grandparent_theme` | *T.nilable(::String)* | :heavy_minus_sign: | The theme URL for the grandparent media item. | /library/metadata/66/theme/1705716261 |
+| `grandparent_art` | *T.nilable(::String)* | :heavy_minus_sign: | The art URL for the grandparent media item. | /library/metadata/66/art/1705716261 |
+| `parent_title` | *T.nilable(::String)* | :heavy_minus_sign: | The title of the parent media item. | Caprica |
+| `parent_index` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index position of the parent media item. | 1 |
+| `parent_thumb` | *T.nilable(::String)* | :heavy_minus_sign: | The thumbnail URL for the parent media item. | /library/metadata/66/thumb/1705716261 |
+| `rating_image` | *T.nilable(::String)* | :heavy_minus_sign: | The URL for the rating image. | rottentomatoes://image.rating.ripe |
+| `view_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of times this media item has been viewed. | 1 |
+| `view_offset` | *T.nilable(::Integer)* | :heavy_minus_sign: | The current playback offset (in milliseconds). | 5222500 |
+| `skip_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of times this media item has been skipped. | 1 |
+| `subtype` | *T.nilable(::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 |
+| `last_rated_at` | *T.nilable(::Integer)* | :heavy_minus_sign: | The Unix timestamp representing the last time the item was rated. | 1721813113 |
+| `created_at_accuracy` | *T.nilable(::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 |
+| `created_at_tz_offset` | *T.nilable(::String)* | :heavy_minus_sign: | The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC. | 0 |
+| `last_viewed_at` | *T.nilable(::Integer)* | :heavy_minus_sign: | Unix timestamp for when the media item was last viewed. | 1682752242 |
+| `user_rating` | *T.nilable(::Float)* | :heavy_minus_sign: | The rating provided by a user for the item. This value is expressed as a decimal number. | 10 |
+| `image` | T::Array<[Models::Operations::GetMediaMetaDataImage](../../models/operations/getmediametadataimage.md)> | :heavy_minus_sign: | N/A | |
+| `ultra_blur_colors` | [T.nilable(Models::Operations::GetMediaMetaDataUltraBlurColors)](../../models/operations/getmediametadataultrablurcolors.md) | :heavy_minus_sign: | N/A | |
+| `library_section_id` | *::Integer* | :heavy_check_mark: | The identifier for the library section. | 1 |
+| `library_section_title` | *::String* | :heavy_check_mark: | The title of the library section. | Movies |
+| `library_section_key` | *::String* | :heavy_check_mark: | The key corresponding to the library section. | /library/sections/1 |
+| `media` | T::Array<[Models::Operations::GetMediaMetaDataMedia](../../models/operations/getmediametadatamedia.md)> | :heavy_minus_sign: | N/A | |
+| `genre` | T::Array<[Models::Operations::GetMediaMetaDataGenre](../../models/operations/getmediametadatagenre.md)> | :heavy_minus_sign: | N/A | |
+| `country` | T::Array<[Models::Operations::GetMediaMetaDataCountry](../../models/operations/getmediametadatacountry.md)> | :heavy_minus_sign: | N/A | |
+| `director` | T::Array<[Models::Operations::GetMediaMetaDataDirector](../../models/operations/getmediametadatadirector.md)> | :heavy_minus_sign: | N/A | |
+| `writer` | T::Array<[Models::Operations::GetMediaMetaDataWriter](../../models/operations/getmediametadatawriter.md)> | :heavy_minus_sign: | N/A | |
+| `producer` | T::Array<[Models::Operations::GetMediaMetaDataProducer](../../models/operations/getmediametadataproducer.md)> | :heavy_minus_sign: | N/A | |
+| `role` | T::Array<[Models::Operations::GetMediaMetaDataRole](../../models/operations/getmediametadatarole.md)> | :heavy_minus_sign: | N/A | |
+| `guids` | T::Array<[Models::Operations::GetMediaMetaDataGuids](../../models/operations/getmediametadataguids.md)> | :heavy_minus_sign: | N/A | |
+| `ratings` | T::Array<[Models::Operations::Ratings](../../models/operations/ratings.md)> | :heavy_minus_sign: | N/A | |
+| `similar` | T::Array<[Models::Operations::GetMediaMetaDataSimilar](../../models/operations/getmediametadatasimilar.md)> | :heavy_minus_sign: | N/A | |
+| `location` | T::Array<[Models::Operations::GetMediaMetaDataLocation](../../models/operations/getmediametadatalocation.md)> | :heavy_minus_sign: | N/A | |
+| `chapter` | T::Array<[Models::Operations::Chapter](../../models/operations/chapter.md)> | :heavy_minus_sign: | N/A | |
+| `marker` | T::Array<[Models::Operations::Marker](../../models/operations/marker.md)> | :heavy_minus_sign: | N/A | |
+| `extras` | [T.nilable(Models::Operations::Extras)](../../models/operations/extras.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatarole.md b/docs/models/operations/getmediametadatarole.md
index 3e2906b..23932fd 100644
--- a/docs/models/operations/getmediametadatarole.md
+++ b/docs/models/operations/getmediametadatarole.md
@@ -3,11 +3,11 @@
## Fields
-| Field | Type | Required | Description | Example |
-| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
-| `id` | *::Integer* | :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 |
-| `tag_key` | *::String* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 |
-| `role` | *T.nilable(::String)* | :heavy_minus_sign: | The character name or role. | Jimmy McGill |
-| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
+| `id` | *::Integer* | :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` | *T.nilable(::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 |
+| `tag_key` | *T.nilable(::String)* | :heavy_minus_sign: | A unique key associated with the actor's tag, used for internal identification. | 5d77683d85719b001f3a535e |
+| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the thumbnail image for the actor. | https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatastream.md b/docs/models/operations/getmediametadatastream.md
index 065eb05..1842164 100644
--- a/docs/models/operations/getmediametadatastream.md
+++ b/docs/models/operations/getmediametadatastream.md
@@ -3,54 +3,56 @@
## Fields
-| Field | Type | Required | Description | Example |
-| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
-| `id` | *::Integer* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
-| `stream_type` | *::Integer* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
-| `default` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is default. | true |
-| `codec` | *::String* | :heavy_check_mark: | Codec used by the stream. | hevc |
-| `index` | *::Integer* | :heavy_check_mark: | Index of the stream. | 0 |
-| `bitrate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
-| `language` | *T.nilable(::String)* | :heavy_minus_sign: | Language of the stream. | English |
-| `language_tag` | *T.nilable(::String)* | :heavy_minus_sign: | Language tag (e.g., en). | en |
-| `language_code` | *T.nilable(::String)* | :heavy_minus_sign: | ISO language code. | eng |
-| `header_compression` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
-| `dovibl_compat_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
-| `dovibl_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
-| `doviel_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
-| `dovi_level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision level. | 6 |
-| `dovi_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
-| `dovi_profile` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
-| `dovirpu_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
-| `dovi_version` | *T.nilable(::String)* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
-| `bit_depth` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
-| `chroma_location` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma sample location. | topleft |
-| `chroma_subsampling` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
-| `coded_height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video height. | 1608 |
-| `coded_width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video width. | 3840 |
-| `closed_captions` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
-| `color_primaries` | *T.nilable(::String)* | :heavy_minus_sign: | Color primaries used. | bt2020 |
-| `color_range` | *T.nilable(::String)* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
-| `color_space` | *T.nilable(::String)* | :heavy_minus_sign: | Color space. | bt2020nc |
-| `color_trc` | *T.nilable(::String)* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
-| `frame_rate` | *T.nilable(::Float)* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
-| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Height of the video stream. | 1602 |
-| `level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Video level. | 150 |
-| `original` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
-| `has_scaling_matrix` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false |
-| `profile` | *T.nilable(::String)* | :heavy_minus_sign: | Video profile. | main 10 |
-| `scan_type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
-| `embedded_in_video` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
-| `ref_frames` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of reference frames. | 1 |
-| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Width of the video stream. | 3840 |
-| `display_title` | *::String* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
-| `extended_display_title` | *::String* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
-| `selected` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
-| `forced` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
-| `channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
-| `audio_channel_layout` | *T.nilable(::String)* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
-| `sampling_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
-| `can_auto_sync` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
-| `hearing_impaired` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
-| `dub` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
-| `title` | *T.nilable(::String)* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
+| `id` | *::Integer* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
+| `stream_type` | [Models::Operations::GetMediaMetaDataStreamType](../../models/operations/getmediametadatastreamtype.md) | :heavy_check_mark: | Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
| 1 |
+| `format` | *T.nilable(::String)* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
+| `default` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is default. | true |
+| `codec` | *::String* | :heavy_check_mark: | Codec used by the stream. | hevc |
+| `index` | *T.nilable(::Integer)* | :heavy_minus_sign: | Index of the stream. | 0 |
+| `bitrate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
+| `language` | *T.nilable(::String)* | :heavy_minus_sign: | Language of the stream. | English |
+| `language_tag` | *T.nilable(::String)* | :heavy_minus_sign: | Language tag (e.g., en). | en |
+| `language_code` | *T.nilable(::String)* | :heavy_minus_sign: | ISO language code. | eng |
+| `header_compression` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
+| `dovibl_compat_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
+| `dovibl_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
+| `doviel_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
+| `dovi_level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision level. | 6 |
+| `dovi_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
+| `dovi_profile` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
+| `dovirpu_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
+| `dovi_version` | *T.nilable(::String)* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
+| `bit_depth` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
+| `chroma_location` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma sample location. | topleft |
+| `chroma_subsampling` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
+| `coded_height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video height. | 1608 |
+| `coded_width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video width. | 3840 |
+| `closed_captions` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
+| `color_primaries` | *T.nilable(::String)* | :heavy_minus_sign: | Color primaries used. | bt2020 |
+| `color_range` | *T.nilable(::String)* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
+| `color_space` | *T.nilable(::String)* | :heavy_minus_sign: | Color space. | bt2020nc |
+| `color_trc` | *T.nilable(::String)* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
+| `frame_rate` | *T.nilable(::Float)* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
+| `key` | *T.nilable(::String)* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
+| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Height of the video stream. | 1602 |
+| `level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Video level. | 150 |
+| `original` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
+| `has_scaling_matrix` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false |
+| `profile` | *T.nilable(::String)* | :heavy_minus_sign: | Video profile. | main 10 |
+| `scan_type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
+| `embedded_in_video` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
+| `ref_frames` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of reference frames. | 1 |
+| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Width of the video stream. | 3840 |
+| `display_title` | *::String* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
+| `extended_display_title` | *::String* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
+| `selected` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
+| `forced` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
+| `channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
+| `audio_channel_layout` | *T.nilable(::String)* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
+| `sampling_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
+| `can_auto_sync` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
+| `hearing_impaired` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
+| `dub` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
+| `title` | *T.nilable(::String)* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatastreamtype.md b/docs/models/operations/getmediametadatastreamtype.md
new file mode 100644
index 0000000..e60f96a
--- /dev/null
+++ b/docs/models/operations/getmediametadatastreamtype.md
@@ -0,0 +1,16 @@
+# GetMediaMetaDataStreamType
+
+Stream type:
+ - 1 = video
+ - 2 = audio
+ - 3 = subtitle
+
+
+
+## Values
+
+| Name | Value |
+| ---------- | ---------- |
+| `VIDEO` | 1 |
+| `AUDIO` | 2 |
+| `SUBTITLE` | 3 |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatatype.md b/docs/models/operations/getmediametadatatype.md
new file mode 100644
index 0000000..389034c
--- /dev/null
+++ b/docs/models/operations/getmediametadatatype.md
@@ -0,0 +1,16 @@
+# GetMediaMetaDataType
+
+The type of media content
+
+
+
+## Values
+
+| Name | Value |
+| --------- | --------- |
+| `MOVIE` | movie |
+| `TV_SHOW` | show |
+| `SEASON` | season |
+| `EPISODE` | episode |
+| `ARTIST` | artist |
+| `ALBUM` | album |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadataultrablurcolors.md b/docs/models/operations/getmediametadataultrablurcolors.md
index 49ae3fc..871313d 100644
--- a/docs/models/operations/getmediametadataultrablurcolors.md
+++ b/docs/models/operations/getmediametadataultrablurcolors.md
@@ -3,9 +3,9 @@
## Fields
-| Field | Type | Required | Description | Example |
-| ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- |
-| `top_left` | *::String* | :heavy_check_mark: | The top-left color value. | 11333a |
-| `top_right` | *::String* | :heavy_check_mark: | The top-right color value. | 1d2721 |
-| `bottom_right` | *::String* | :heavy_check_mark: | The bottom-right color value. | 5c451d |
-| `bottom_left` | *::String* | :heavy_check_mark: | The bottom-left color value. | 372c10 |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
+| `top_left` | *::String* | :heavy_check_mark: | N/A | 11333b |
+| `top_right` | *::String* | :heavy_check_mark: | N/A | 0a232d |
+| `bottom_right` | *::String* | :heavy_check_mark: | N/A | 73958 |
+| `bottom_left` | *::String* | :heavy_check_mark: | N/A | 1f5066 |
\ No newline at end of file
diff --git a/docs/models/operations/getmediametadatawriter.md b/docs/models/operations/getmediametadatawriter.md
index 392dc72..0ef0e3e 100644
--- a/docs/models/operations/getmediametadatawriter.md
+++ b/docs/models/operations/getmediametadatawriter.md
@@ -3,11 +3,10 @@
## Fields
-| Field | Type | Required | Description | Example |
-| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
-| `id` | *::Integer* | :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 |
-| `tag_key` | *::String* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 |
-| `role` | *T.nilable(::String)* | :heavy_minus_sign: | The character name or role. | Jimmy McGill |
-| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
+| `id` | *::Integer* | :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` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the thumbnail image for the writer. | https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg |
+| `tag_key` | *T.nilable(::String)* | :heavy_minus_sign: | A unique key associated with the writers tag, used for internal identification. | 5d77683d85719b001f3a535e |
\ No newline at end of file
diff --git a/docs/models/operations/marker.md b/docs/models/operations/marker.md
new file mode 100644
index 0000000..d5846f3
--- /dev/null
+++ b/docs/models/operations/marker.md
@@ -0,0 +1,15 @@
+# Marker
+
+The final status of the marker
+
+
+## Fields
+
+| Field | Type | Required | Description | Example |
+| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
+| `id` | *::Integer* | :heavy_check_mark: | N/A | 306970 |
+| `type` | *::String* | :heavy_check_mark: | N/A | credits |
+| `start_time_offset` | *::Integer* | :heavy_check_mark: | N/A | 4176050 |
+| `end_time_offset` | *::Integer* | :heavy_check_mark: | N/A | 4393389 |
+| `final` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
+| `attributes` | [T.nilable(Models::Operations::Attributes)](../../models/operations/attributes.md) | :heavy_minus_sign: | Attributes associated with the marker. | |
\ No newline at end of file
diff --git a/docs/models/operations/stream.md b/docs/models/operations/stream.md
index d7dc15d..159207d 100644
--- a/docs/models/operations/stream.md
+++ b/docs/models/operations/stream.md
@@ -3,54 +3,56 @@
## Fields
-| Field | Type | Required | Description | Example |
-| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
-| `id` | *::Integer* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
-| `stream_type` | *::Integer* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
-| `default` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is default. | true |
-| `codec` | *::String* | :heavy_check_mark: | Codec used by the stream. | hevc |
-| `index` | *::Integer* | :heavy_check_mark: | Index of the stream. | 0 |
-| `bitrate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
-| `language` | *T.nilable(::String)* | :heavy_minus_sign: | Language of the stream. | English |
-| `language_tag` | *T.nilable(::String)* | :heavy_minus_sign: | Language tag (e.g., en). | en |
-| `language_code` | *T.nilable(::String)* | :heavy_minus_sign: | ISO language code. | eng |
-| `header_compression` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
-| `dovibl_compat_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
-| `dovibl_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
-| `doviel_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
-| `dovi_level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision level. | 6 |
-| `dovi_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
-| `dovi_profile` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
-| `dovirpu_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
-| `dovi_version` | *T.nilable(::String)* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
-| `bit_depth` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
-| `chroma_location` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma sample location. | topleft |
-| `chroma_subsampling` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
-| `coded_height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video height. | 1608 |
-| `coded_width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video width. | 3840 |
-| `closed_captions` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
-| `color_primaries` | *T.nilable(::String)* | :heavy_minus_sign: | Color primaries used. | bt2020 |
-| `color_range` | *T.nilable(::String)* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
-| `color_space` | *T.nilable(::String)* | :heavy_minus_sign: | Color space. | bt2020nc |
-| `color_trc` | *T.nilable(::String)* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
-| `frame_rate` | *T.nilable(::Float)* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
-| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Height of the video stream. | 1602 |
-| `level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Video level. | 150 |
-| `original` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
-| `has_scaling_matrix` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false |
-| `profile` | *T.nilable(::String)* | :heavy_minus_sign: | Video profile. | main 10 |
-| `scan_type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
-| `embedded_in_video` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
-| `ref_frames` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of reference frames. | 1 |
-| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Width of the video stream. | 3840 |
-| `display_title` | *::String* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
-| `extended_display_title` | *::String* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
-| `selected` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
-| `forced` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
-| `channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
-| `audio_channel_layout` | *T.nilable(::String)* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
-| `sampling_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
-| `can_auto_sync` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
-| `hearing_impaired` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
-| `dub` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
-| `title` | *T.nilable(::String)* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- |
+| `id` | *::Integer* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
+| `stream_type` | [Models::Operations::StreamType](../../models/operations/streamtype.md) | :heavy_check_mark: | Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
| 1 |
+| `format` | *T.nilable(::String)* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
+| `default` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is default. | true |
+| `codec` | *::String* | :heavy_check_mark: | Codec used by the stream. | hevc |
+| `index` | *T.nilable(::Integer)* | :heavy_minus_sign: | Index of the stream. | 0 |
+| `bitrate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
+| `language` | *T.nilable(::String)* | :heavy_minus_sign: | Language of the stream. | English |
+| `language_tag` | *T.nilable(::String)* | :heavy_minus_sign: | Language tag (e.g., en). | en |
+| `language_code` | *T.nilable(::String)* | :heavy_minus_sign: | ISO language code. | eng |
+| `header_compression` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
+| `dovibl_compat_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
+| `dovibl_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
+| `doviel_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
+| `dovi_level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision level. | 6 |
+| `dovi_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
+| `dovi_profile` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
+| `dovirpu_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
+| `dovi_version` | *T.nilable(::String)* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
+| `bit_depth` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
+| `chroma_location` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma sample location. | topleft |
+| `chroma_subsampling` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
+| `coded_height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video height. | 1608 |
+| `coded_width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video width. | 3840 |
+| `closed_captions` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
+| `color_primaries` | *T.nilable(::String)* | :heavy_minus_sign: | Color primaries used. | bt2020 |
+| `color_range` | *T.nilable(::String)* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
+| `color_space` | *T.nilable(::String)* | :heavy_minus_sign: | Color space. | bt2020nc |
+| `color_trc` | *T.nilable(::String)* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
+| `frame_rate` | *T.nilable(::Float)* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
+| `key` | *T.nilable(::String)* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
+| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Height of the video stream. | 1602 |
+| `level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Video level. | 150 |
+| `original` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
+| `has_scaling_matrix` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false |
+| `profile` | *T.nilable(::String)* | :heavy_minus_sign: | Video profile. | main 10 |
+| `scan_type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
+| `embedded_in_video` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive |
+| `ref_frames` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of reference frames. | 1 |
+| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Width of the video stream. | 3840 |
+| `display_title` | *::String* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
+| `extended_display_title` | *::String* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
+| `selected` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
+| `forced` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true |
+| `channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
+| `audio_channel_layout` | *T.nilable(::String)* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
+| `sampling_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
+| `can_auto_sync` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
+| `hearing_impaired` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
+| `dub` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
+| `title` | *T.nilable(::String)* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
\ No newline at end of file
diff --git a/docs/models/operations/streamtype.md b/docs/models/operations/streamtype.md
new file mode 100644
index 0000000..de7b5d1
--- /dev/null
+++ b/docs/models/operations/streamtype.md
@@ -0,0 +1,16 @@
+# StreamType
+
+Stream type:
+ - 1 = video
+ - 2 = audio
+ - 3 = subtitle
+
+
+
+## Values
+
+| Name | Value |
+| ---------- | ---------- |
+| `VIDEO` | 1 |
+| `AUDIO` | 2 |
+| `SUBTITLE` | 3 |
\ No newline at end of file
diff --git a/lib/plex_ruby_sdk/models/operations.rb b/lib/plex_ruby_sdk/models/operations.rb
index 261204e..58b7a28 100644
--- a/lib/plex_ruby_sdk/models/operations.rb
+++ b/lib/plex_ruby_sdk/models/operations.rb
@@ -10,14 +10,17 @@ module PlexRubySDK
autoload :Account, 'plex_ruby_sdk/models/operations/account.rb'
autoload :Action, 'plex_ruby_sdk/models/operations/action.rb'
autoload :Activity, 'plex_ruby_sdk/models/operations/activity.rb'
+ autoload :Attributes, 'plex_ruby_sdk/models/operations/attributes.rb'
autoload :ButlerTask, 'plex_ruby_sdk/models/operations/butlertask.rb'
autoload :ButlerTasks, 'plex_ruby_sdk/models/operations/butlertasks.rb'
+ autoload :Chapter, 'plex_ruby_sdk/models/operations/chapter.rb'
autoload :Collection, 'plex_ruby_sdk/models/operations/collection.rb'
autoload :Context, 'plex_ruby_sdk/models/operations/context.rb'
autoload :Country, 'plex_ruby_sdk/models/operations/country.rb'
autoload :Device, 'plex_ruby_sdk/models/operations/device.rb'
autoload :Director, 'plex_ruby_sdk/models/operations/director.rb'
autoload :Directory, 'plex_ruby_sdk/models/operations/directory.rb'
+ autoload :Extras, 'plex_ruby_sdk/models/operations/extras.rb'
autoload :Feature, 'plex_ruby_sdk/models/operations/feature.rb'
autoload :Field, 'plex_ruby_sdk/models/operations/field.rb'
autoload :FieldType, 'plex_ruby_sdk/models/operations/fieldtype.rb'
@@ -27,6 +30,7 @@ module PlexRubySDK
autoload :Hub, 'plex_ruby_sdk/models/operations/hub.rb'
autoload :Image, 'plex_ruby_sdk/models/operations/image.rb'
autoload :Location, 'plex_ruby_sdk/models/operations/location.rb'
+ autoload :Marker, 'plex_ruby_sdk/models/operations/marker.rb'
autoload :Media, 'plex_ruby_sdk/models/operations/media.rb'
autoload :MediaContainer, 'plex_ruby_sdk/models/operations/mediacontainer.rb'
autoload :MediaGuid, 'plex_ruby_sdk/models/operations/mediaguid.rb'
@@ -152,6 +156,7 @@ module PlexRubySDK
autoload :GetAllMediaLibraryRequest, 'plex_ruby_sdk/models/operations/get_all_media_library_request.rb'
autoload :GetAllMediaLibraryResponse, 'plex_ruby_sdk/models/operations/get_all_media_library_response.rb'
autoload :GetAllMediaLibraryResponseBody, 'plex_ruby_sdk/models/operations/get_all_media_library_responsebody.rb'
+ autoload :GetAllMediaLibraryStreamType, 'plex_ruby_sdk/models/operations/get_all_media_library_streamtype.rb'
autoload :GetBannerImageRequest, 'plex_ruby_sdk/models/operations/get_banner_image_request.rb'
autoload :GetBannerImageResponse, 'plex_ruby_sdk/models/operations/get_banner_image_response.rb'
autoload :GetCountriesLibraryDirectory, 'plex_ruby_sdk/models/operations/get_countries_library_directory.rb'
@@ -228,6 +233,7 @@ module PlexRubySDK
autoload :GetMediaMetaDataGuids, 'plex_ruby_sdk/models/operations/get_media_meta_data_guids.rb'
autoload :GetMediaMetaDataImage, 'plex_ruby_sdk/models/operations/get_media_meta_data_image.rb'
autoload :GetMediaMetaDataLibraryOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_media_meta_data_library_optimizedforstreaming.rb'
+ autoload :GetMediaMetaDataLibraryType, 'plex_ruby_sdk/models/operations/get_media_meta_data_library_type.rb'
autoload :GetMediaMetaDataLocation, 'plex_ruby_sdk/models/operations/get_media_meta_data_location.rb'
autoload :GetMediaMetaDataMedia, 'plex_ruby_sdk/models/operations/get_media_meta_data_media.rb'
autoload :GetMediaMetaDataMediaContainer, 'plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb'
@@ -246,6 +252,8 @@ module PlexRubySDK
autoload :GetMediaMetaDataRequest, 'plex_ruby_sdk/models/operations/get_media_meta_data_request.rb'
autoload :GetMediaMetaDataResponse, 'plex_ruby_sdk/models/operations/get_media_meta_data_response.rb'
autoload :GetMediaMetaDataResponseBody, 'plex_ruby_sdk/models/operations/get_media_meta_data_responsebody.rb'
+ autoload :GetMediaMetaDataStreamType, 'plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb'
+ autoload :GetMediaMetaDataType, 'plex_ruby_sdk/models/operations/get_media_meta_data_type.rb'
autoload :GetMediaPostersMediaContainer, 'plex_ruby_sdk/models/operations/get_media_posters_mediacontainer.rb'
autoload :GetMediaPostersMetadata, 'plex_ruby_sdk/models/operations/get_media_posters_metadata.rb'
autoload :GetMediaPostersRequest, 'plex_ruby_sdk/models/operations/get_media_posters_request.rb'
@@ -588,6 +596,7 @@ module PlexRubySDK
autoload :StopTaskResponse, 'plex_ruby_sdk/models/operations/stoptask_response.rb'
autoload :StopTranscodeSessionRequest, 'plex_ruby_sdk/models/operations/stoptranscodesession_request.rb'
autoload :StopTranscodeSessionResponse, 'plex_ruby_sdk/models/operations/stoptranscodesession_response.rb'
+ autoload :StreamType, 'plex_ruby_sdk/models/operations/streamtype.rb'
autoload :Tag, 'plex_ruby_sdk/models/operations/tag.rb'
autoload :TaskName, 'plex_ruby_sdk/models/operations/taskname.rb'
autoload :Tonight, 'plex_ruby_sdk/models/operations/tonight.rb'
diff --git a/lib/plex_ruby_sdk/models/operations/attributes.rb b/lib/plex_ruby_sdk/models/operations/attributes.rb
new file mode 100644
index 0000000..dea64e9
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/attributes.rb
@@ -0,0 +1,37 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+ # Attributes associated with the marker.
+ class Attributes
+ extend T::Sig
+ include Crystalline::MetadataFields
+
+ # The identifier for the attributes.
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
+ # The version number of the marker attributes.
+ field :version, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('version') } }
+
+
+ sig { params(id: ::Integer, version: T.nilable(::Integer)).void }
+ def initialize(id: nil, version: nil)
+ @id = id
+ @version = version
+ end
+
+ def ==(other)
+ return false unless other.is_a? self.class
+ return false unless @id == other.id
+ return false unless @version == other.version
+ true
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/models/operations/chapter.rb b/lib/plex_ruby_sdk/models/operations/chapter.rb
new file mode 100644
index 0000000..b581fca
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/chapter.rb
@@ -0,0 +1,53 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+ # The thumbnail for the chapter
+ class Chapter
+ extend T::Sig
+ include Crystalline::MetadataFields
+
+
+ field :end_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('endTimeOffset') } }
+
+ field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
+
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
+
+ field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
+
+ field :start_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('startTimeOffset') } }
+
+ field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
+
+
+ sig { params(end_time_offset: ::Integer, filter: ::String, id: ::Integer, index: ::Integer, start_time_offset: ::Integer, thumb: ::String).void }
+ def initialize(end_time_offset: nil, filter: nil, id: nil, index: nil, start_time_offset: nil, thumb: nil)
+ @end_time_offset = end_time_offset
+ @filter = filter
+ @id = id
+ @index = index
+ @start_time_offset = start_time_offset
+ @thumb = thumb
+ end
+
+ def ==(other)
+ return false unless other.is_a? self.class
+ return false unless @end_time_offset == other.end_time_offset
+ return false unless @filter == other.filter
+ return false unless @id == other.id
+ return false unless @index == other.index
+ return false unless @start_time_offset == other.start_time_offset
+ return false unless @thumb == other.thumb
+ true
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/models/operations/extras.rb b/lib/plex_ruby_sdk/models/operations/extras.rb
new file mode 100644
index 0000000..f940d63
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/extras.rb
@@ -0,0 +1,33 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+
+ class Extras
+ extend T::Sig
+ include Crystalline::MetadataFields
+
+ # The size of the extras.
+ field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
+
+
+ sig { params(size: T.nilable(::Integer)).void }
+ def initialize(size: nil)
+ @size = size
+ end
+
+ def ==(other)
+ return false unless other.is_a? self.class
+ return false unless @size == other.size
+ true
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/models/operations/get_all_media_library_stream.rb b/lib/plex_ruby_sdk/models/operations/get_all_media_library_stream.rb
index 56d7f36..5cdc285 100644
--- a/lib/plex_ruby_sdk/models/operations/get_all_media_library_stream.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_all_media_library_stream.rb
@@ -21,10 +21,12 @@ module PlexRubySDK
field :extended_display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
# Unique stream identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
- # Index of the stream.
- field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
- # Stream type (1=video, 2=audio, 3=subtitle).
- field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
+ # Stream type:
+ # - 1 = video
+ # - 2 = audio
+ # - 3 = subtitle
+ #
+ field :stream_type, Models::Operations::GetAllMediaLibraryStreamType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType'), 'decoder': Utils.enum_from_string(Models::Operations::GetAllMediaLibraryStreamType, false) } }
# Audio channel layout.
field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
# Bit depth of the video stream.
@@ -77,6 +79,8 @@ module PlexRubySDK
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
+ # Format of the stream (e.g., srt).
+ field :format, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('format') } }
# Frame rate of the stream.
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
@@ -87,6 +91,10 @@ module PlexRubySDK
field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
# Height of the video stream.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
+ # Index of the stream.
+ field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
+ # Key to access this stream part.
+ field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
# Language of the stream.
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# ISO language code.
@@ -113,13 +121,12 @@ module PlexRubySDK
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
- sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
- def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
+ sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, stream_type: Models::Operations::GetAllMediaLibraryStreamType, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), format: T.nilable(::String), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), index: T.nilable(::Integer), key: T.nilable(::String), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
+ def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, format: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, index: nil, key: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
@codec = codec
@display_title = display_title
@extended_display_title = extended_display_title
@id = id
- @index = index
@stream_type = stream_type
@audio_channel_layout = audio_channel_layout
@bit_depth = bit_depth
@@ -147,11 +154,14 @@ module PlexRubySDK
@dub = dub
@embedded_in_video = embedded_in_video
@forced = forced
+ @format = format
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@header_compression = header_compression
@hearing_impaired = hearing_impaired
@height = height
+ @index = index
+ @key = key
@language = language
@language_code = language_code
@language_tag = language_tag
@@ -172,7 +182,6 @@ module PlexRubySDK
return false unless @display_title == other.display_title
return false unless @extended_display_title == other.extended_display_title
return false unless @id == other.id
- return false unless @index == other.index
return false unless @stream_type == other.stream_type
return false unless @audio_channel_layout == other.audio_channel_layout
return false unless @bit_depth == other.bit_depth
@@ -200,11 +209,14 @@ module PlexRubySDK
return false unless @dub == other.dub
return false unless @embedded_in_video == other.embedded_in_video
return false unless @forced == other.forced
+ return false unless @format == other.format
return false unless @frame_rate == other.frame_rate
return false unless @has_scaling_matrix == other.has_scaling_matrix
return false unless @header_compression == other.header_compression
return false unless @hearing_impaired == other.hearing_impaired
return false unless @height == other.height
+ return false unless @index == other.index
+ return false unless @key == other.key
return false unless @language == other.language
return false unless @language_code == other.language_code
return false unless @language_tag == other.language_tag
diff --git a/lib/plex_ruby_sdk/models/operations/get_all_media_library_streamtype.rb b/lib/plex_ruby_sdk/models/operations/get_all_media_library_streamtype.rb
new file mode 100644
index 0000000..4c9f8da
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/get_all_media_library_streamtype.rb
@@ -0,0 +1,25 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+ # GetAllMediaLibraryStreamType - Stream type:
+ # - 1 = video
+ # - 2 = audio
+ # - 3 = subtitle
+ #
+ class GetAllMediaLibraryStreamType < T::Enum
+ enums do
+ VIDEO = new(1)
+ AUDIO = new(2)
+ SUBTITLE = new(3)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb
index 82f36ea..049f117 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb
@@ -8,31 +8,31 @@ module PlexRubySDK
module Models
module Operations
-
+ # The filter query string for country media items.
class GetMediaMetaDataCountry
extend T::Sig
include Crystalline::MetadataFields
- # The filter string for the country.
- field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
- # The unique country identifier.
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
- # The country name.
+ # The country of origin of this media item
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
+ field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
- sig { params(filter: ::String, id: ::Integer, tag: ::String).void }
- def initialize(filter: nil, id: nil, tag: nil)
- @filter = filter
+
+ sig { params(id: ::Integer, tag: ::String, filter: T.nilable(::String)).void }
+ def initialize(id: nil, tag: nil, filter: nil)
@id = id
@tag = tag
+ @filter = filter
end
def ==(other)
return false unless other.is_a? self.class
- return false unless @filter == other.filter
return false unless @id == other.id
return false unless @tag == other.tag
+ return false unless @filter == other.filter
true
end
end
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb
index 5ddd357..7d33980 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb
@@ -13,27 +13,24 @@ module PlexRubySDK
extend T::Sig
include Crystalline::MetadataFields
- # The filter string for the role.
+ # The filter string used to query this director.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
- # The unique role identifier.
+ # Unique identifier for the director.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
- # The actor's name.
+ # The role of Director
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
- # A key associated with the actor tag.
- field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
- # The character name or role.
- field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
- # URL for the role thumbnail image.
+ # A unique key associated with the director's tag, used for internal identification.
+ field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
+ # The URL of the thumbnail image for the director.
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
- sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
- def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
+ sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
+ def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil)
@filter = filter
@id = id
@tag = tag
@tag_key = tag_key
- @role = role
@thumb = thumb
end
@@ -43,7 +40,6 @@ module PlexRubySDK
return false unless @id == other.id
return false unless @tag == other.tag
return false unless @tag_key == other.tag_key
- return false unless @role == other.role
return false unless @thumb == other.thumb
true
end
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb
index ff4f960..78dbd5d 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb
@@ -8,16 +8,17 @@ module PlexRubySDK
module Models
module Operations
-
+ # The filter query string for similar items.
class GetMediaMetaDataGenre
extend T::Sig
include Crystalline::MetadataFields
- # The filter string for the genre.
+
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
- # The unique genre identifier.
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
- # The genre name.
+ # The genre name of this media-item
+ #
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb
index 2a50757..2f87c4a 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb
@@ -13,15 +13,15 @@ module PlexRubySDK
extend T::Sig
include Crystalline::MetadataFields
- # Alternate text for the image.
+
field :alt, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('alt') } }
- # The type of image (e.g., coverPoster, background, clearLogo).
- field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
- # The URL of the image.
+
+ field :type, Models::Operations::GetMediaMetaDataLibraryType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(Models::Operations::GetMediaMetaDataLibraryType, false) } }
+
field :url, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('url') } }
- sig { params(alt: ::String, type: ::String, url: ::String).void }
+ sig { params(alt: ::String, type: Models::Operations::GetMediaMetaDataLibraryType, url: ::String).void }
def initialize(alt: nil, type: nil, url: nil)
@alt = alt
@type = type
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_type.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_type.rb
new file mode 100644
index 0000000..e41deef
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_type.rb
@@ -0,0 +1,22 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+
+ class GetMediaMetaDataLibraryType < T::Enum
+ enums do
+ COVER_POSTER = new('coverPoster')
+ BACKGROUND = new('background')
+ SNAPSHOT = new('snapshot')
+ CLEAR_LOGO = new('clearLogo')
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb
index 8528091..64b8e43 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb
@@ -8,176 +8,211 @@ module PlexRubySDK
module Models
module Operations
-
+ # Unknown
+ #
class GetMediaMetaDataMetadata
extend T::Sig
include Crystalline::MetadataFields
field :added_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
- # URL of the art image.
+ # The art image URL for the media item.
field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
- # Duration of the content in milliseconds.
+ # The audience rating for the media item.
+ field :audience_rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } }
+ # The number of child items associated with this media item.
+ field :child_count, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
+ # The duration of the media item in milliseconds.
field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
- # The globally unique identifier for the item.
+ # The globally unique identifier for the media item.
field :guid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
- # An array of image objects.
- field :image, T::Array[Models::Operations::GetMediaMetaDataImage], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
- # The API key to access metadata details.
+ # The index position of the media item.
+ field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
+ # The unique key for the media item.
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
- # The ID of the library section.
+ # The identifier for the library section.
field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
- # The key of the library section.
+ # The key corresponding to the library section.
field :library_section_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
# The title of the library section.
field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
- # The rating key of the metadata item.
+ # The original release date of the media item.
+ field :originally_available_at, ::Date, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(false) } }
+ # The critic rating for the media item.
+ field :rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
+ # 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.
field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
- # A summary of the content.
+ # The total number of seasons (for TV shows).
+ field :season_count, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('seasonCount') } }
+ # A URL‐friendly version of the media title.
+ field :slug, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
+ # A synopsis of the media item.
field :summary, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
- # URL of the thumbnail image.
+ # A brief tagline for the media item.
+ field :tagline, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } }
+ # The theme URL for the media item.
+ field :theme, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } }
+ # The thumbnail image URL for the media item.
field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
- # The title of the content.
+ # The title of the media item.
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
- # The type of content (e.g., show, movie).
- field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
+ # The sort title used for ordering media items.
+ field :title_sort, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
- field :ultra_blur_colors, Models::Operations::GetMediaMetaDataUltraBlurColors, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
-
- field :updated_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
- # The release year.
- field :year, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
- # The audience rating for the content.
- field :audience_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } }
+ field :type, Models::Operations::GetMediaMetaDataType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(Models::Operations::GetMediaMetaDataType, false) } }
# The URL for the audience rating image.
field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
+ field :chapter, T.nilable(T::Array[Models::Operations::Chapter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Chapter') } }
+ # The source from which chapter data is derived.
field :chapter_source, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chapterSource') } }
- # The number of child items.
- field :child_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
- # The content rating (e.g., TV-MA).
+ # The content rating for the media item.
field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
- # An array of country tags.
+
field :country, T.nilable(T::Array[Models::Operations::GetMediaMetaDataCountry]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } }
- # An array of Director roles.
+ # 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).
+ field :created_at_accuracy, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('createdAtAccuracy') } }
+ # The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC.
+ field :created_at_tz_offset, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('createdAtTZOffset') } }
+
field :director, T.nilable(T::Array[Models::Operations::GetMediaMetaDataDirector]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
- # An array of genre tags.
+
+ field :extras, T.nilable(Models::Operations::Extras), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Extras') } }
+
field :genre, T.nilable(T::Array[Models::Operations::GetMediaMetaDataGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
- # The URL of the grandparent's art image.
+ # The art URL for the grandparent media item.
field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } }
- # A GUID identifying the grandparent entity (e.g., show).
+ # The GUID of the grandparent media item.
field :grandparent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentGuid') } }
- # A key identifying the grandparent metadata in the library.
+ # The key of the grandparent media item.
field :grandparent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentKey') } }
- # The rating key of the grandparent of this metadata item.
+ # The rating key of the grandparent media item.
field :grandparent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentRatingKey') } }
- # A URL-friendly identifier (slug) for the grandparent entity.
+ # The slug for the grandparent media item.
field :grandparent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentSlug') } }
- # The URL of the grandparent's thumbnail image.
+ # The theme URL for the grandparent media item.
+ field :grandparent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTheme') } }
+ # The thumbnail URL for the grandparent media item.
field :grandparent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentThumb') } }
- # The title of the grandparent entity (typically the show's title).
+ # The title of the grandparent media item.
field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
- # An array of GUID objects.
+
field :guids, T.nilable(T::Array[Models::Operations::GetMediaMetaDataGuids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
- # The index or order of the item.
- field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
- # Unix timestamp of when the item was last viewed.
+
+ field :image, T.nilable(T::Array[Models::Operations::GetMediaMetaDataImage]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
+ # The Unix timestamp representing the last time the item was rated.
+ field :last_rated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastRatedAt') } }
+ # Unix timestamp for when the media item was last viewed.
field :last_viewed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } }
- # The total number of episodes (or leaves).
+ # The number of leaf items (end nodes) under this media item.
field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } }
- # An array of location objects.
+
field :location, T.nilable(T::Array[Models::Operations::GetMediaMetaDataLocation]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Location') } }
+ field :marker, T.nilable(T::Array[Models::Operations::Marker]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Marker') } }
+
field :media, T.nilable(T::Array[Models::Operations::GetMediaMetaDataMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
- # The original release date.
- field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
- # The original title of the content.
+ # The original title of the media item (if different).
field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } }
- # A GUID identifying the parent entity (e.g., season) for the item.
+ # The GUID of the parent media item.
field :parent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentGuid') } }
- # The index number of the parent entity, which could indicate its order or position.
+ # The index position of the parent media item.
field :parent_index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } }
- # A key identifying the parent metadata in the library.
+ # The key of the parent media item.
field :parent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentKey') } }
- # The rating key of the parent of this metadata item.
+ # The rating key of the parent media item.
field :parent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } }
- # The URL of the parent's thumbnail image.
+ # The thumbnail URL for the parent media item.
field :parent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentThumb') } }
- # The title of the parent entity (typically the season's title).
+ # The title of the parent media item.
field :parent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTitle') } }
-
+ # The primary extra key associated with this media item.
field :primary_extra_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('primaryExtraKey') } }
- # An array of Writer roles.
+
field :producer, T.nilable(T::Array[Models::Operations::GetMediaMetaDataProducer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Producer') } }
- # The general rating
- field :rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
- # The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image).
+ # The URL for the rating image.
field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } }
- # An array of rating objects.
+
field :ratings, T.nilable(T::Array[Models::Operations::Ratings]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
- # An array of Actor roles.
+
field :role, T.nilable(T::Array[Models::Operations::GetMediaMetaDataRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
- # An array of similar content objects.
+
field :similar, T.nilable(T::Array[Models::Operations::GetMediaMetaDataSimilar]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Similar') } }
- # The number of times the item has been skipped.
+ # The number of times this media item has been skipped.
field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
- # A URL-friendly identifier for the item.
- field :slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
- # The studio that produced the content.
+ # The studio that produced the media item.
field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } }
- # The tagline of the content.
- field :tagline, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } }
- # URL of the theme image.
- field :theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } }
- # The number of times the item has been viewed.
+ # A classification that further describes the type of media item. For example, 'clip' indicates that the item is a short video clip.
+ field :subtype, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subtype') } }
+
+ field :ultra_blur_colors, T.nilable(Models::Operations::GetMediaMetaDataUltraBlurColors), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
+ # Unix epoch datetime in seconds
+ field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
+ # The rating provided by a user for the item. This value is expressed as a decimal number.
+ field :user_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('userRating') } }
+ # The number of times this media item has been viewed.
field :view_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewCount') } }
- # The number of episodes that have been viewed.
+ # The number of leaf items that have been viewed.
field :viewed_leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewedLeafCount') } }
- # An array of Writer roles.
+ # The current playback offset (in milliseconds).
+ field :view_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewOffset') } }
+
field :writer, T.nilable(T::Array[Models::Operations::GetMediaMetaDataWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
+ # The release year of the media item.
+ field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
- sig { params(added_at: ::Integer, art: ::String, duration: ::Integer, guid: ::String, image: T::Array[Models::Operations::GetMediaMetaDataImage], key: ::String, library_section_id: ::Integer, library_section_key: ::String, library_section_title: ::String, rating_key: ::String, summary: ::String, thumb: ::String, title: ::String, type: ::String, ultra_blur_colors: Models::Operations::GetMediaMetaDataUltraBlurColors, updated_at: ::Integer, year: ::Integer, audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), content_rating: T.nilable(::String), country: T.nilable(T::Array[Models::Operations::GetMediaMetaDataCountry]), director: T.nilable(T::Array[Models::Operations::GetMediaMetaDataDirector]), genre: T.nilable(T::Array[Models::Operations::GetMediaMetaDataGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[Models::Operations::GetMediaMetaDataGuids]), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), location: T.nilable(T::Array[Models::Operations::GetMediaMetaDataLocation]), media: T.nilable(T::Array[Models::Operations::GetMediaMetaDataMedia]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), primary_extra_key: T.nilable(::String), producer: T.nilable(T::Array[Models::Operations::GetMediaMetaDataProducer]), rating: T.nilable(::Float), rating_image: T.nilable(::String), ratings: T.nilable(T::Array[Models::Operations::Ratings]), role: T.nilable(T::Array[Models::Operations::GetMediaMetaDataRole]), similar: T.nilable(T::Array[Models::Operations::GetMediaMetaDataSimilar]), skip_count: T.nilable(::Integer), slug: T.nilable(::String), studio: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), writer: T.nilable(T::Array[Models::Operations::GetMediaMetaDataWriter])).void }
- def initialize(added_at: nil, art: nil, duration: nil, guid: nil, image: nil, key: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, rating_key: nil, summary: nil, thumb: nil, title: nil, type: nil, ultra_blur_colors: nil, updated_at: nil, year: nil, audience_rating: nil, audience_rating_image: nil, chapter_source: nil, child_count: nil, content_rating: nil, country: nil, director: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_thumb: nil, grandparent_title: nil, guids: nil, index: nil, last_viewed_at: nil, leaf_count: nil, location: nil, media: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, primary_extra_key: nil, producer: nil, rating: nil, rating_image: nil, ratings: nil, role: nil, similar: nil, skip_count: nil, slug: nil, studio: nil, tagline: nil, theme: nil, view_count: nil, viewed_leaf_count: nil, writer: nil)
+ sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::String, library_section_id: ::Integer, library_section_key: ::String, library_section_title: ::String, originally_available_at: ::Date, rating: ::Float, rating_key: ::String, season_count: ::Integer, slug: ::String, summary: ::String, tagline: ::String, theme: ::String, thumb: ::String, title: ::String, title_sort: ::String, type: Models::Operations::GetMediaMetaDataType, audience_rating_image: T.nilable(::String), chapter: T.nilable(T::Array[Models::Operations::Chapter]), chapter_source: T.nilable(::String), content_rating: T.nilable(::String), country: T.nilable(T::Array[Models::Operations::GetMediaMetaDataCountry]), created_at_accuracy: T.nilable(::String), created_at_tz_offset: T.nilable(::String), director: T.nilable(T::Array[Models::Operations::GetMediaMetaDataDirector]), extras: T.nilable(Models::Operations::Extras), genre: T.nilable(T::Array[Models::Operations::GetMediaMetaDataGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[Models::Operations::GetMediaMetaDataGuids]), image: T.nilable(T::Array[Models::Operations::GetMediaMetaDataImage]), last_rated_at: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), location: T.nilable(T::Array[Models::Operations::GetMediaMetaDataLocation]), marker: T.nilable(T::Array[Models::Operations::Marker]), media: T.nilable(T::Array[Models::Operations::GetMediaMetaDataMedia]), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), primary_extra_key: T.nilable(::String), producer: T.nilable(T::Array[Models::Operations::GetMediaMetaDataProducer]), rating_image: T.nilable(::String), ratings: T.nilable(T::Array[Models::Operations::Ratings]), role: T.nilable(T::Array[Models::Operations::GetMediaMetaDataRole]), similar: T.nilable(T::Array[Models::Operations::GetMediaMetaDataSimilar]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), subtype: T.nilable(::String), ultra_blur_colors: T.nilable(Models::Operations::GetMediaMetaDataUltraBlurColors), updated_at: T.nilable(::Integer), user_rating: T.nilable(::Float), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[Models::Operations::GetMediaMetaDataWriter]), year: T.nilable(::Integer)).void }
+ def initialize(added_at: nil, art: nil, audience_rating: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, originally_available_at: nil, rating: nil, rating_key: nil, season_count: nil, slug: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title: nil, title_sort: nil, type: nil, audience_rating_image: nil, chapter: nil, chapter_source: nil, content_rating: nil, country: nil, created_at_accuracy: nil, created_at_tz_offset: nil, director: nil, extras: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guids: nil, image: nil, last_rated_at: nil, last_viewed_at: nil, leaf_count: nil, location: nil, marker: nil, media: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, primary_extra_key: nil, producer: nil, rating_image: nil, ratings: nil, role: nil, similar: nil, skip_count: nil, studio: nil, subtype: nil, ultra_blur_colors: nil, updated_at: nil, user_rating: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
@added_at = added_at
@art = art
+ @audience_rating = audience_rating
+ @child_count = child_count
@duration = duration
@guid = guid
- @image = image
+ @index = index
@key = key
@library_section_id = library_section_id
@library_section_key = library_section_key
@library_section_title = library_section_title
+ @originally_available_at = originally_available_at
+ @rating = rating
@rating_key = rating_key
+ @season_count = season_count
+ @slug = slug
@summary = summary
+ @tagline = tagline
+ @theme = theme
@thumb = thumb
@title = title
+ @title_sort = title_sort
@type = type
- @ultra_blur_colors = ultra_blur_colors
- @updated_at = updated_at
- @year = year
- @audience_rating = audience_rating
@audience_rating_image = audience_rating_image
+ @chapter = chapter
@chapter_source = chapter_source
- @child_count = child_count
@content_rating = content_rating
@country = country
+ @created_at_accuracy = created_at_accuracy
+ @created_at_tz_offset = created_at_tz_offset
@director = director
+ @extras = extras
@genre = genre
@grandparent_art = grandparent_art
@grandparent_guid = grandparent_guid
@grandparent_key = grandparent_key
@grandparent_rating_key = grandparent_rating_key
@grandparent_slug = grandparent_slug
+ @grandparent_theme = grandparent_theme
@grandparent_thumb = grandparent_thumb
@grandparent_title = grandparent_title
@guids = guids
- @index = index
+ @image = image
+ @last_rated_at = last_rated_at
@last_viewed_at = last_viewed_at
@leaf_count = leaf_count
@location = location
+ @marker = marker
@media = media
- @originally_available_at = originally_available_at
@original_title = original_title
@parent_guid = parent_guid
@parent_index = parent_index
@@ -187,62 +222,74 @@ module PlexRubySDK
@parent_title = parent_title
@primary_extra_key = primary_extra_key
@producer = producer
- @rating = rating
@rating_image = rating_image
@ratings = ratings
@role = role
@similar = similar
@skip_count = skip_count
- @slug = slug
@studio = studio
- @tagline = tagline
- @theme = theme
+ @subtype = subtype
+ @ultra_blur_colors = ultra_blur_colors
+ @updated_at = updated_at
+ @user_rating = user_rating
@view_count = view_count
@viewed_leaf_count = viewed_leaf_count
+ @view_offset = view_offset
@writer = writer
+ @year = year
end
def ==(other)
return false unless other.is_a? self.class
return false unless @added_at == other.added_at
return false unless @art == other.art
+ return false unless @audience_rating == other.audience_rating
+ return false unless @child_count == other.child_count
return false unless @duration == other.duration
return false unless @guid == other.guid
- return false unless @image == other.image
+ return false unless @index == other.index
return false unless @key == other.key
return false unless @library_section_id == other.library_section_id
return false unless @library_section_key == other.library_section_key
return false unless @library_section_title == other.library_section_title
+ return false unless @originally_available_at == other.originally_available_at
+ return false unless @rating == other.rating
return false unless @rating_key == other.rating_key
+ return false unless @season_count == other.season_count
+ return false unless @slug == other.slug
return false unless @summary == other.summary
+ return false unless @tagline == other.tagline
+ return false unless @theme == other.theme
return false unless @thumb == other.thumb
return false unless @title == other.title
+ return false unless @title_sort == other.title_sort
return false unless @type == other.type
- return false unless @ultra_blur_colors == other.ultra_blur_colors
- return false unless @updated_at == other.updated_at
- return false unless @year == other.year
- return false unless @audience_rating == other.audience_rating
return false unless @audience_rating_image == other.audience_rating_image
+ return false unless @chapter == other.chapter
return false unless @chapter_source == other.chapter_source
- return false unless @child_count == other.child_count
return false unless @content_rating == other.content_rating
return false unless @country == other.country
+ return false unless @created_at_accuracy == other.created_at_accuracy
+ return false unless @created_at_tz_offset == other.created_at_tz_offset
return false unless @director == other.director
+ return false unless @extras == other.extras
return false unless @genre == other.genre
return false unless @grandparent_art == other.grandparent_art
return false unless @grandparent_guid == other.grandparent_guid
return false unless @grandparent_key == other.grandparent_key
return false unless @grandparent_rating_key == other.grandparent_rating_key
return false unless @grandparent_slug == other.grandparent_slug
+ return false unless @grandparent_theme == other.grandparent_theme
return false unless @grandparent_thumb == other.grandparent_thumb
return false unless @grandparent_title == other.grandparent_title
return false unless @guids == other.guids
- return false unless @index == other.index
+ return false unless @image == other.image
+ return false unless @last_rated_at == other.last_rated_at
return false unless @last_viewed_at == other.last_viewed_at
return false unless @leaf_count == other.leaf_count
return false unless @location == other.location
+ return false unless @marker == other.marker
return false unless @media == other.media
- return false unless @originally_available_at == other.originally_available_at
return false unless @original_title == other.original_title
return false unless @parent_guid == other.parent_guid
return false unless @parent_index == other.parent_index
@@ -252,19 +299,21 @@ module PlexRubySDK
return false unless @parent_title == other.parent_title
return false unless @primary_extra_key == other.primary_extra_key
return false unless @producer == other.producer
- return false unless @rating == other.rating
return false unless @rating_image == other.rating_image
return false unless @ratings == other.ratings
return false unless @role == other.role
return false unless @similar == other.similar
return false unless @skip_count == other.skip_count
- return false unless @slug == other.slug
return false unless @studio == other.studio
- return false unless @tagline == other.tagline
- return false unless @theme == other.theme
+ return false unless @subtype == other.subtype
+ return false unless @ultra_blur_colors == other.ultra_blur_colors
+ return false unless @updated_at == other.updated_at
+ return false unless @user_rating == other.user_rating
return false unless @view_count == other.view_count
return false unless @viewed_leaf_count == other.viewed_leaf_count
+ return false unless @view_offset == other.view_offset
return false unless @writer == other.writer
+ return false unless @year == other.year
true
end
end
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb
index 9bd49b7..8ef0b96 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb
@@ -13,27 +13,27 @@ module PlexRubySDK
extend T::Sig
include Crystalline::MetadataFields
- # The filter string for the role.
+ # The filter string used to query this actor. For example, it may indicate that this is an actor with a given key.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
- # The unique role identifier.
+ # Unique identifier for the actor or role.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
- # The actor's name.
+ # The display tag for the actor (typically the actor's name).
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
- # A key associated with the actor tag.
- field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
- # The character name or role.
+ # The role played by the actor in the media item.
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
- # URL for the role thumbnail image.
+ # A unique key associated with the actor's tag, used for internal identification.
+ field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
+ # The URL of the thumbnail image for the actor.
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
- sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
- def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
+ sig { params(filter: ::String, id: ::Integer, tag: ::String, role: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
+ def initialize(filter: nil, id: nil, tag: nil, role: nil, tag_key: nil, thumb: nil)
@filter = filter
@id = id
@tag = tag
- @tag_key = tag_key
@role = role
+ @tag_key = tag_key
@thumb = thumb
end
@@ -42,8 +42,8 @@ module PlexRubySDK
return false unless @filter == other.filter
return false unless @id == other.id
return false unless @tag == other.tag
- return false unless @tag_key == other.tag_key
return false unless @role == other.role
+ return false unless @tag_key == other.tag_key
return false unless @thumb == other.thumb
true
end
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb
index acd4fc8..4de779f 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb
@@ -21,10 +21,12 @@ module PlexRubySDK
field :extended_display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
# Unique stream identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
- # Index of the stream.
- field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
- # Stream type (1=video, 2=audio, 3=subtitle).
- field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
+ # Stream type:
+ # - 1 = video
+ # - 2 = audio
+ # - 3 = subtitle
+ #
+ field :stream_type, Models::Operations::GetMediaMetaDataStreamType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType'), 'decoder': Utils.enum_from_string(Models::Operations::GetMediaMetaDataStreamType, false) } }
# Audio channel layout.
field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
# Bit depth of the video stream.
@@ -77,6 +79,8 @@ module PlexRubySDK
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
+ # Format of the stream (e.g., srt).
+ field :format, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('format') } }
# Frame rate of the stream.
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
@@ -87,6 +91,10 @@ module PlexRubySDK
field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
# Height of the video stream.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
+ # Index of the stream.
+ field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
+ # Key to access this stream part.
+ field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
# Language of the stream.
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# ISO language code.
@@ -113,13 +121,12 @@ module PlexRubySDK
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
- sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
- def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
+ sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, stream_type: Models::Operations::GetMediaMetaDataStreamType, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), format: T.nilable(::String), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), index: T.nilable(::Integer), key: T.nilable(::String), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
+ def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, format: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, index: nil, key: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
@codec = codec
@display_title = display_title
@extended_display_title = extended_display_title
@id = id
- @index = index
@stream_type = stream_type
@audio_channel_layout = audio_channel_layout
@bit_depth = bit_depth
@@ -147,11 +154,14 @@ module PlexRubySDK
@dub = dub
@embedded_in_video = embedded_in_video
@forced = forced
+ @format = format
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@header_compression = header_compression
@hearing_impaired = hearing_impaired
@height = height
+ @index = index
+ @key = key
@language = language
@language_code = language_code
@language_tag = language_tag
@@ -172,7 +182,6 @@ module PlexRubySDK
return false unless @display_title == other.display_title
return false unless @extended_display_title == other.extended_display_title
return false unless @id == other.id
- return false unless @index == other.index
return false unless @stream_type == other.stream_type
return false unless @audio_channel_layout == other.audio_channel_layout
return false unless @bit_depth == other.bit_depth
@@ -200,11 +209,14 @@ module PlexRubySDK
return false unless @dub == other.dub
return false unless @embedded_in_video == other.embedded_in_video
return false unless @forced == other.forced
+ return false unless @format == other.format
return false unless @frame_rate == other.frame_rate
return false unless @has_scaling_matrix == other.has_scaling_matrix
return false unless @header_compression == other.header_compression
return false unless @hearing_impaired == other.hearing_impaired
return false unless @height == other.height
+ return false unless @index == other.index
+ return false unless @key == other.key
return false unless @language == other.language
return false unless @language_code == other.language_code
return false unless @language_tag == other.language_tag
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb
new file mode 100644
index 0000000..e61d509
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb
@@ -0,0 +1,25 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+ # GetMediaMetaDataStreamType - Stream type:
+ # - 1 = video
+ # - 2 = audio
+ # - 3 = subtitle
+ #
+ class GetMediaMetaDataStreamType < T::Enum
+ enums do
+ VIDEO = new(1)
+ AUDIO = new(2)
+ SUBTITLE = new(3)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_type.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_type.rb
new file mode 100644
index 0000000..5a82cfb
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_type.rb
@@ -0,0 +1,25 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+ # GetMediaMetaDataType - The type of media content
+ #
+ class GetMediaMetaDataType < T::Enum
+ enums do
+ MOVIE = new('movie')
+ TV_SHOW = new('show')
+ SEASON = new('season')
+ EPISODE = new('episode')
+ ARTIST = new('artist')
+ ALBUM = new('album')
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb
index 36d2435..4deaa43 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb
@@ -13,13 +13,13 @@ module PlexRubySDK
extend T::Sig
include Crystalline::MetadataFields
- # The bottom-left color value.
+
field :bottom_left, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bottomLeft') } }
- # The bottom-right color value.
+
field :bottom_right, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bottomRight') } }
- # The top-left color value.
+
field :top_left, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('topLeft') } }
- # The top-right color value.
+
field :top_right, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('topRight') } }
diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb
index 3969488..58eac7e 100644
--- a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb
+++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb
@@ -13,27 +13,24 @@ module PlexRubySDK
extend T::Sig
include Crystalline::MetadataFields
- # The filter string for the role.
+ # The filter string used to query this writer.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
- # The unique role identifier.
+ # Unique identifier for the writer.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
- # The actor's name.
+ # The role of Writer
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
- # A key associated with the actor tag.
- field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
- # The character name or role.
- field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
- # URL for the role thumbnail image.
+ # A unique key associated with the writers tag, used for internal identification.
+ field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
+ # The URL of the thumbnail image for the writer.
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
- sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
- def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
+ sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
+ def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil)
@filter = filter
@id = id
@tag = tag
@tag_key = tag_key
- @role = role
@thumb = thumb
end
@@ -43,7 +40,6 @@ module PlexRubySDK
return false unless @id == other.id
return false unless @tag == other.tag
return false unless @tag_key == other.tag_key
- return false unless @role == other.role
return false unless @thumb == other.thumb
true
end
diff --git a/lib/plex_ruby_sdk/models/operations/marker.rb b/lib/plex_ruby_sdk/models/operations/marker.rb
new file mode 100644
index 0000000..86dd380
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/marker.rb
@@ -0,0 +1,53 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+ # The final status of the marker
+ class Marker
+ extend T::Sig
+ include Crystalline::MetadataFields
+
+
+ field :end_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('endTimeOffset') } }
+
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
+
+ field :start_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('startTimeOffset') } }
+
+ field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
+ # Attributes associated with the marker.
+ field :attributes, T.nilable(Models::Operations::Attributes), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Attributes') } }
+
+ field :final, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('final') } }
+
+
+ sig { params(end_time_offset: ::Integer, id: ::Integer, start_time_offset: ::Integer, type: ::String, attributes: T.nilable(Models::Operations::Attributes), final: T.nilable(T::Boolean)).void }
+ def initialize(end_time_offset: nil, id: nil, start_time_offset: nil, type: nil, attributes: nil, final: nil)
+ @end_time_offset = end_time_offset
+ @id = id
+ @start_time_offset = start_time_offset
+ @type = type
+ @attributes = attributes
+ @final = final
+ end
+
+ def ==(other)
+ return false unless other.is_a? self.class
+ return false unless @end_time_offset == other.end_time_offset
+ return false unless @id == other.id
+ return false unless @start_time_offset == other.start_time_offset
+ return false unless @type == other.type
+ return false unless @attributes == other.attributes
+ return false unless @final == other.final
+ true
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/models/operations/stream.rb b/lib/plex_ruby_sdk/models/operations/stream.rb
index b0c6286..b8c3362 100644
--- a/lib/plex_ruby_sdk/models/operations/stream.rb
+++ b/lib/plex_ruby_sdk/models/operations/stream.rb
@@ -21,10 +21,12 @@ module PlexRubySDK
field :extended_display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
# Unique stream identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
- # Index of the stream.
- field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
- # Stream type (1=video, 2=audio, 3=subtitle).
- field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
+ # Stream type:
+ # - 1 = video
+ # - 2 = audio
+ # - 3 = subtitle
+ #
+ field :stream_type, Models::Operations::StreamType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType'), 'decoder': Utils.enum_from_string(Models::Operations::StreamType, false) } }
# Audio channel layout.
field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
# Bit depth of the video stream.
@@ -77,6 +79,8 @@ module PlexRubySDK
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
+ # Format of the stream (e.g., srt).
+ field :format, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('format') } }
# Frame rate of the stream.
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
@@ -87,6 +91,10 @@ module PlexRubySDK
field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
# Height of the video stream.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
+ # Index of the stream.
+ field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
+ # Key to access this stream part.
+ field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
# Language of the stream.
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# ISO language code.
@@ -113,13 +121,12 @@ module PlexRubySDK
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
- sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
- def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
+ sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, stream_type: Models::Operations::StreamType, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), format: T.nilable(::String), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), index: T.nilable(::Integer), key: T.nilable(::String), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
+ def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, format: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, index: nil, key: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
@codec = codec
@display_title = display_title
@extended_display_title = extended_display_title
@id = id
- @index = index
@stream_type = stream_type
@audio_channel_layout = audio_channel_layout
@bit_depth = bit_depth
@@ -147,11 +154,14 @@ module PlexRubySDK
@dub = dub
@embedded_in_video = embedded_in_video
@forced = forced
+ @format = format
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@header_compression = header_compression
@hearing_impaired = hearing_impaired
@height = height
+ @index = index
+ @key = key
@language = language
@language_code = language_code
@language_tag = language_tag
@@ -172,7 +182,6 @@ module PlexRubySDK
return false unless @display_title == other.display_title
return false unless @extended_display_title == other.extended_display_title
return false unless @id == other.id
- return false unless @index == other.index
return false unless @stream_type == other.stream_type
return false unless @audio_channel_layout == other.audio_channel_layout
return false unless @bit_depth == other.bit_depth
@@ -200,11 +209,14 @@ module PlexRubySDK
return false unless @dub == other.dub
return false unless @embedded_in_video == other.embedded_in_video
return false unless @forced == other.forced
+ return false unless @format == other.format
return false unless @frame_rate == other.frame_rate
return false unless @has_scaling_matrix == other.has_scaling_matrix
return false unless @header_compression == other.header_compression
return false unless @hearing_impaired == other.hearing_impaired
return false unless @height == other.height
+ return false unless @index == other.index
+ return false unless @key == other.key
return false unless @language == other.language
return false unless @language_code == other.language_code
return false unless @language_tag == other.language_tag
diff --git a/lib/plex_ruby_sdk/models/operations/streamtype.rb b/lib/plex_ruby_sdk/models/operations/streamtype.rb
new file mode 100644
index 0000000..d1330f2
--- /dev/null
+++ b/lib/plex_ruby_sdk/models/operations/streamtype.rb
@@ -0,0 +1,25 @@
+# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+
+# typed: true
+# frozen_string_literal: true
+
+
+module PlexRubySDK
+ module Models
+ module Operations
+
+ # StreamType - Stream type:
+ # - 1 = video
+ # - 2 = audio
+ # - 3 = subtitle
+ #
+ class StreamType < T::Enum
+ enums do
+ VIDEO = new(1)
+ AUDIO = new(2)
+ SUBTITLE = new(3)
+ end
+ end
+ end
+ end
+end
diff --git a/lib/plex_ruby_sdk/sdkconfiguration.rb b/lib/plex_ruby_sdk/sdkconfiguration.rb
index e591f00..1896b64 100644
--- a/lib/plex_ruby_sdk/sdkconfiguration.rb
+++ b/lib/plex_ruby_sdk/sdkconfiguration.rb
@@ -14,7 +14,7 @@ module PlexRubySDK
extend T::Sig
SERVERS = [
- 'https://10.10.10.47:32400', # 1 - The full address of your Plex Server
+ '{protocol}://{ip}:{port}', # 1 - The full address of your Plex Server
].freeze
# Contains the list of servers available to the SDK
@@ -66,9 +66,9 @@ module PlexRubySDK
end
@language = 'ruby'
@openapi_doc_version = '0.0.3'
- @sdk_version = '0.11.1'
+ @sdk_version = '0.12.1'
@gen_version = '2.570.4'
- @user_agent = 'speakeasy-sdk/ruby 0.11.1 2.570.4 0.0.3 plex_ruby_sdk'
+ @user_agent = 'speakeasy-sdk/ruby 0.12.1 2.570.4 0.0.3 plex_ruby_sdk'
end
sig { returns([String, T::Hash[Symbol, String]]) }
diff --git a/plex_ruby_sdk.gemspec b/plex_ruby_sdk.gemspec
index 9a2921a..f6484d5 100644
--- a/plex_ruby_sdk.gemspec
+++ b/plex_ruby_sdk.gemspec
@@ -4,7 +4,7 @@ $LOAD_PATH.push File.expand_path('lib', __dir__)
Gem::Specification.new do |s|
s.name = 'plex_ruby_sdk'
- s.version = '0.11.1'
+ s.version = '0.12.1'
s.platform = Gem::Platform::RUBY
s.licenses = ['Apache-2.0']
s.summary = ''
diff --git a/sorbet/rbi/gems/faraday-multipart@1.1.0.rbi b/sorbet/rbi/gems/faraday-multipart@1.1.0.rbi
new file mode 100644
index 0000000..dbc83e9
--- /dev/null
+++ b/sorbet/rbi/gems/faraday-multipart@1.1.0.rbi
@@ -0,0 +1,258 @@
+# typed: true
+
+# DO NOT EDIT MANUALLY
+# This is an autogenerated file for types exported from the `faraday-multipart` gem.
+# Please instead update this file by running `bin/tapioca gem faraday-multipart`.
+
+# source://faraday-multipart//lib/faraday/multipart/version.rb#3
+module Faraday
+ class << self
+ # source://faraday/2.7.11/lib/faraday.rb#55
+ def default_adapter; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#102
+ def default_adapter=(adapter); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#59
+ def default_adapter_options; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#59
+ def default_adapter_options=(_arg0); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#120
+ def default_connection; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#62
+ def default_connection=(_arg0); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#127
+ def default_connection_options; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#134
+ def default_connection_options=(options); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#67
+ def ignore_env_proxy; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#67
+ def ignore_env_proxy=(_arg0); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#46
+ def lib_path; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#46
+ def lib_path=(_arg0); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#96
+ def new(url = T.unsafe(nil), options = T.unsafe(nil), &block); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#107
+ def respond_to_missing?(symbol, include_private = T.unsafe(nil)); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#42
+ def root_path; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#42
+ def root_path=(_arg0); end
+
+ private
+
+ # source://faraday/2.7.11/lib/faraday.rb#143
+ def method_missing(name, *args, &block); end
+ end
+end
+
+# source://faraday-multipart//lib/faraday/multipart.rb#18
+Faraday::CompositeReadIO = Faraday::Multipart::CompositeReadIO
+
+# Aliases for Faraday v1, these are all deprecated and will be removed in v2 of this middleware
+#
+# source://faraday-multipart//lib/faraday/multipart.rb#15
+Faraday::FilePart = Multipart::Post::UploadIO
+
+# Main Faraday::Multipart module.
+#
+# source://faraday-multipart//lib/faraday/multipart/version.rb#5
+module Faraday::Multipart
+ class << self
+ # source://faraday-multipart//lib/faraday/multipart/version.rb#8
+ def multipart_post_version; end
+ end
+end
+
+# Similar to, but not compatible with CompositeReadIO provided by the
+# multipart-post gem.
+# https://github.com/nicksieger/multipart-post/blob/master/lib/composite_io.rb
+#
+# source://faraday-multipart//lib/faraday/multipart/file_part.rb#67
+class Faraday::Multipart::CompositeReadIO
+ # @return [CompositeReadIO] a new instance of CompositeReadIO
+ #
+ # source://faraday-multipart//lib/faraday/multipart/file_part.rb#68
+ def initialize(*parts); end
+
+ # Close each of the IOs.
+ #
+ # @return [void]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/file_part.rb#111
+ def close; end
+
+ # source://faraday-multipart//lib/faraday/multipart/file_part.rb#115
+ def ensure_open_and_readable; end
+
+ # @return [Integer] sum of the lengths of all the parts
+ #
+ # source://faraday-multipart//lib/faraday/multipart/file_part.rb#75
+ def length; end
+
+ # Read from IOs in order until `length` bytes have been received.
+ #
+ # @param length [Integer, nil]
+ # @param outbuf [String, nil]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/file_part.rb#91
+ def read(length = T.unsafe(nil), outbuf = T.unsafe(nil)); end
+
+ # Rewind each of the IOs and reset the index to 0.
+ #
+ # @return [void]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/file_part.rb#82
+ def rewind; end
+
+ private
+
+ # source://faraday-multipart//lib/faraday/multipart/file_part.rb#125
+ def advance_io; end
+
+ # source://faraday-multipart//lib/faraday/multipart/file_part.rb#121
+ def current_io; end
+end
+
+# source://faraday-multipart//lib/faraday/multipart/file_part.rb#55
+Faraday::Multipart::FilePart = Multipart::Post::UploadIO
+
+# Middleware for supporting multi-part requests.
+#
+# source://faraday-multipart//lib/faraday/multipart/middleware.rb#8
+class Faraday::Multipart::Middleware < ::Faraday::Request::UrlEncoded
+ # @return [Middleware] a new instance of Middleware
+ #
+ # source://faraday-multipart//lib/faraday/multipart/middleware.rb#13
+ def initialize(app = T.unsafe(nil), options = T.unsafe(nil)); end
+
+ # Checks for files in the payload, otherwise leaves everything untouched.
+ #
+ # @param env [Faraday::Env]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/middleware.rb#21
+ def call(env); end
+
+ # @param env [Faraday::Env]
+ # @param params [Hash]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/middleware.rb#55
+ def create_multipart(env, params); end
+
+ # Returns true if obj is an enumerable with values that are multipart.
+ #
+ # @param obj [Object]
+ # @return [Boolean]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/middleware.rb#44
+ def has_multipart?(obj); end
+
+ # source://faraday-multipart//lib/faraday/multipart/middleware.rb#67
+ def part(boundary, key, value); end
+
+ # @param params [Hash]
+ # @param prefix [String]
+ # @param pieces [Array]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/middleware.rb#83
+ def process_params(params, prefix = T.unsafe(nil), pieces = T.unsafe(nil), &block); end
+
+ # @param env [Faraday::Env]
+ # @return [Boolean]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/middleware.rb#32
+ def process_request?(env); end
+
+ # @return [String]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/middleware.rb#76
+ def unique_boundary; end
+end
+
+# source://faraday-multipart//lib/faraday/multipart/middleware.rb#9
+Faraday::Multipart::Middleware::DEFAULT_BOUNDARY_PREFIX = T.let(T.unsafe(nil), String)
+
+# Multipart value used to POST data with a content type.
+#
+# source://faraday-multipart//lib/faraday/multipart/param_part.rb#6
+class Faraday::Multipart::ParamPart
+ # @param value [String] Uploaded content as a String.
+ # @param content_type [String] String content type of the value.
+ # @param content_id [String] Optional String of this value's Content-ID.
+ # @return [Faraday::ParamPart]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/param_part.rb#12
+ def initialize(value, content_type, content_id = T.unsafe(nil)); end
+
+ # The value's content ID, if given.
+ #
+ # @return [String, nil]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/param_part.rb#52
+ def content_id; end
+
+ # The value's content type.
+ #
+ # @return [String]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/param_part.rb#47
+ def content_type; end
+
+ # Returns a Hash of String key/value pairs.
+ #
+ # @return [Hash]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/param_part.rb#32
+ def headers; end
+
+ # Converts this value to a form part.
+ #
+ # @param boundary [String] String multipart boundary that must not exist in
+ # the content exactly.
+ # @param key [String] String key name for this value.
+ # @return [Faraday::Parts::Part]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/param_part.rb#25
+ def to_part(boundary, key); end
+
+ # The content to upload.
+ #
+ # @return [String]
+ #
+ # source://faraday-multipart//lib/faraday/multipart/param_part.rb#42
+ def value; end
+end
+
+# source://faraday-multipart//lib/faraday/multipart/file_part.rb#56
+Faraday::Multipart::Parts = Multipart::Post::Parts
+
+# source://faraday-multipart//lib/faraday/multipart/version.rb#6
+Faraday::Multipart::VERSION = T.let(T.unsafe(nil), String)
+
+# source://faraday-multipart//lib/faraday/multipart.rb#16
+Faraday::ParamPart = Faraday::Multipart::ParamPart
+
+# source://faraday-multipart//lib/faraday/multipart.rb#17
+Faraday::Parts = Multipart::Post::Parts
+
+# multipart-post v2.2.0 introduces a new class hierarchy for classes like Parts and UploadIO
+# For backwards compatibility, detect the gem version and use the right class
+#
+# source://faraday-multipart//lib/faraday/multipart.rb#21
+Faraday::UploadIO = Multipart::Post::UploadIO
diff --git a/sorbet/rbi/gems/faraday-net_http@3.4.0.rbi b/sorbet/rbi/gems/faraday-net_http@3.4.0.rbi
new file mode 100644
index 0000000..aa059e0
--- /dev/null
+++ b/sorbet/rbi/gems/faraday-net_http@3.4.0.rbi
@@ -0,0 +1,146 @@
+# typed: true
+
+# DO NOT EDIT MANUALLY
+# This is an autogenerated file for types exported from the `faraday-net_http` gem.
+# Please instead update this file by running `bin/tapioca gem faraday-net_http`.
+
+# source://faraday-net_http//lib/faraday/adapter/net_http.rb#12
+module Faraday
+ class << self
+ # source://faraday/2.7.11/lib/faraday.rb#55
+ def default_adapter; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#102
+ def default_adapter=(adapter); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#59
+ def default_adapter_options; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#59
+ def default_adapter_options=(_arg0); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#120
+ def default_connection; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#62
+ def default_connection=(_arg0); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#127
+ def default_connection_options; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#134
+ def default_connection_options=(options); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#67
+ def ignore_env_proxy; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#67
+ def ignore_env_proxy=(_arg0); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#46
+ def lib_path; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#46
+ def lib_path=(_arg0); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#96
+ def new(url = T.unsafe(nil), options = T.unsafe(nil), &block); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#107
+ def respond_to_missing?(symbol, include_private = T.unsafe(nil)); end
+
+ # source://faraday/2.7.11/lib/faraday.rb#42
+ def root_path; end
+
+ # source://faraday/2.7.11/lib/faraday.rb#42
+ def root_path=(_arg0); end
+
+ private
+
+ # source://faraday/2.7.11/lib/faraday.rb#143
+ def method_missing(name, *args, &block); end
+ end
+end
+
+# source://faraday-net_http//lib/faraday/adapter/net_http.rb#13
+class Faraday::Adapter
+ # source://faraday/2.7.11/lib/faraday/adapter.rb#28
+ def initialize(_app = T.unsafe(nil), opts = T.unsafe(nil), &block); end
+
+ # source://faraday/2.7.11/lib/faraday/adapter.rb#55
+ def call(env); end
+
+ # source://faraday/2.7.11/lib/faraday/adapter.rb#50
+ def close; end
+
+ # source://faraday/2.7.11/lib/faraday/adapter.rb#41
+ def connection(env); end
+
+ private
+
+ # source://faraday/2.7.11/lib/faraday/adapter.rb#85
+ def request_timeout(type, options); end
+
+ # source://faraday/2.7.11/lib/faraday/adapter.rb#62
+ def save_response(env, status, body, headers = T.unsafe(nil), reason_phrase = T.unsafe(nil), finished: T.unsafe(nil)); end
+end
+
+# source://faraday-net_http//lib/faraday/adapter/net_http.rb#14
+class Faraday::Adapter::NetHttp < ::Faraday::Adapter
+ # @return [NetHttp] a new instance of NetHttp
+ #
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#38
+ def initialize(app = T.unsafe(nil), opts = T.unsafe(nil), &block); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#43
+ def build_connection(env); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#63
+ def call(env); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#51
+ def net_http_connection(env); end
+
+ private
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#152
+ def configure_request(http, req); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#135
+ def configure_ssl(http, ssl); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#79
+ def create_request(env); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#191
+ def encoded_body(http_response); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#95
+ def perform_request(http, env); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#109
+ def request_with_wrapped_block(http, env); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#125
+ def save_http_response(env, http_response); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#172
+ def ssl_cert_store(ssl); end
+
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#181
+ def ssl_verify_mode(ssl); end
+
+ # @return [Boolean]
+ #
+ # source://faraday-net_http//lib/faraday/adapter/net_http.rb#203
+ def verify_hostname_enabled?(http, ssl); end
+end
+
+# source://faraday-net_http//lib/faraday/adapter/net_http.rb#36
+Faraday::Adapter::NetHttp::NET_HTTP_EXCEPTIONS = T.let(T.unsafe(nil), Array)
+
+# source://faraday-net_http//lib/faraday/net_http/version.rb#4
+module Faraday::NetHttp; end
+
+# source://faraday-net_http//lib/faraday/net_http/version.rb#5
+Faraday::NetHttp::VERSION = T.let(T.unsafe(nil), String)