mirror of
https://github.com/LukeHagar/plex-api-spec.git
synced 2025-12-10 12:37:44 +00:00
added test and fixes for get-library-all
corrected get-media-meta-data response
This commit is contained in:
@@ -4,18 +4,6 @@ items:
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- duration
|
||||
- bitrate
|
||||
- width
|
||||
- height
|
||||
- aspectRatio
|
||||
- audioChannels
|
||||
- audioCodec
|
||||
- videoCodec
|
||||
- videoResolution
|
||||
- container
|
||||
- videoFrameRate
|
||||
- videoProfile
|
||||
- hasVoiceActivity
|
||||
- Part
|
||||
properties:
|
||||
@@ -25,20 +13,24 @@ items:
|
||||
example: 387322
|
||||
duration:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Duration of the media in milliseconds."
|
||||
example: 9610350
|
||||
bitrate:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Bitrate in bits per second."
|
||||
example: 25512
|
||||
width:
|
||||
type: integer
|
||||
description: "Video width in pixels."
|
||||
example: 3840
|
||||
format: int32
|
||||
height:
|
||||
type: integer
|
||||
description: "Video height in pixels."
|
||||
example: 1602
|
||||
format: int32
|
||||
aspectRatio:
|
||||
type: number
|
||||
format: float
|
||||
@@ -48,6 +40,11 @@ items:
|
||||
type: integer
|
||||
description: "Number of audio channels."
|
||||
example: 6
|
||||
format: int32
|
||||
displayOffset:
|
||||
type: integer
|
||||
format: int32
|
||||
example: 50
|
||||
audioCodec:
|
||||
type: string
|
||||
description: "Audio codec used."
|
||||
@@ -66,7 +63,8 @@ items:
|
||||
example: "mkv"
|
||||
videoFrameRate:
|
||||
type: string
|
||||
description: "Frame rate of the video (e.g., 24p)."
|
||||
description: |
|
||||
Frame rate of the video. Values found include NTSC, PAL, 24p
|
||||
example: "24p"
|
||||
videoProfile:
|
||||
type: string
|
||||
@@ -76,6 +74,21 @@ items:
|
||||
type: boolean
|
||||
description: "Indicates whether voice activity is detected."
|
||||
example: false
|
||||
audioProfile:
|
||||
type: string
|
||||
description: "The audio profile used for the media (e.g., DTS, Dolby Digital, etc.)."
|
||||
example: "dts"
|
||||
optimizedForStreaming:
|
||||
description: "Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"
|
||||
oneOf:
|
||||
- type: integer
|
||||
format: int32
|
||||
enum: [0, 1]
|
||||
- type: boolean
|
||||
enum: [true, false]
|
||||
has64bitOffsets:
|
||||
type: boolean
|
||||
example: false
|
||||
Part:
|
||||
type: array
|
||||
description: "An array of parts for this media item."
|
||||
@@ -84,12 +97,8 @@ items:
|
||||
required:
|
||||
- id
|
||||
- key
|
||||
- duration
|
||||
- file
|
||||
- size
|
||||
- container
|
||||
- videoProfile
|
||||
- Stream
|
||||
properties:
|
||||
accessible:
|
||||
type: boolean
|
||||
@@ -112,6 +121,7 @@ items:
|
||||
example: "sd"
|
||||
duration:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Duration of the part in milliseconds."
|
||||
example: 9610350
|
||||
file:
|
||||
@@ -119,9 +129,13 @@ items:
|
||||
description: "File path for the part."
|
||||
example: "/mnt/Movies_1/W/Wicked (2024).mkv"
|
||||
size:
|
||||
type: integer
|
||||
description: "File size in bytes."
|
||||
type: integer
|
||||
example: 30649952104
|
||||
packetLength:
|
||||
type: integer
|
||||
format: int32
|
||||
example: 188
|
||||
container:
|
||||
type: string
|
||||
description: "Container format of the part."
|
||||
@@ -130,6 +144,25 @@ items:
|
||||
type: string
|
||||
description: "Video profile for the part."
|
||||
example: "main 10"
|
||||
audioProfile:
|
||||
type: string
|
||||
description: "The audio profile used for the media (e.g., DTS, Dolby Digital, etc.)."
|
||||
example: "dts"
|
||||
has64bitOffsets:
|
||||
type: boolean
|
||||
example: false
|
||||
optimizedForStreaming:
|
||||
description: "Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true"
|
||||
oneOf:
|
||||
- type: integer
|
||||
format: int32
|
||||
enum: [0, 1]
|
||||
- type: boolean
|
||||
enum: [true, false]
|
||||
hasThumbnail:
|
||||
allOf:
|
||||
- description: "Indicates if the part has a thumbnail."
|
||||
- $ref: "../models/common/PlexBooleanString.yaml"
|
||||
Stream:
|
||||
type: array
|
||||
description: "An array of streams for this part."
|
||||
@@ -140,7 +173,6 @@ items:
|
||||
- streamType
|
||||
- codec
|
||||
- index
|
||||
- bitrate
|
||||
- language
|
||||
- languageTag
|
||||
- languageCode
|
||||
@@ -153,6 +185,7 @@ items:
|
||||
example: 1002625
|
||||
streamType:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Stream type (1=video, 2=audio, 3=subtitle)."
|
||||
example: 1
|
||||
default:
|
||||
@@ -165,10 +198,12 @@ items:
|
||||
example: "hevc"
|
||||
index:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Index of the stream."
|
||||
example: 0
|
||||
bitrate:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Bitrate of the stream."
|
||||
example: 24743
|
||||
language:
|
||||
@@ -183,8 +218,13 @@ items:
|
||||
type: string
|
||||
description: "ISO language code."
|
||||
example: "eng"
|
||||
headerCompression:
|
||||
type: boolean
|
||||
description: "Indicates whether header compression is enabled."
|
||||
example: true
|
||||
DOVIBLCompatID:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Dolby Vision BL compatibility ID."
|
||||
example: 1
|
||||
DOVIBLPresent:
|
||||
@@ -197,6 +237,7 @@ items:
|
||||
example: false
|
||||
DOVILevel:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Dolby Vision level."
|
||||
example: 6
|
||||
DOVIPresent:
|
||||
@@ -205,6 +246,7 @@ items:
|
||||
example: true
|
||||
DOVIProfile:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Dolby Vision profile."
|
||||
example: 8
|
||||
DOVIRPUPresent:
|
||||
@@ -217,6 +259,7 @@ items:
|
||||
example: "1.0"
|
||||
bitDepth:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Bit depth of the video stream."
|
||||
example: 10
|
||||
chromaLocation:
|
||||
@@ -229,10 +272,12 @@ items:
|
||||
example: "4:2:0"
|
||||
codedHeight:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Coded video height."
|
||||
example: 1608
|
||||
codedWidth:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Coded video width."
|
||||
example: 3840
|
||||
colorPrimaries:
|
||||
@@ -258,10 +303,12 @@ items:
|
||||
example: 23.976
|
||||
height:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Height of the video stream."
|
||||
example: 1602
|
||||
level:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Video level."
|
||||
example: 150
|
||||
original:
|
||||
@@ -280,10 +327,12 @@ items:
|
||||
example: "progressive"
|
||||
refFrames:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Number of reference frames."
|
||||
example: 1
|
||||
width:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Width of the video stream."
|
||||
example: 3840
|
||||
displayTitle:
|
||||
@@ -303,6 +352,7 @@ items:
|
||||
example: true
|
||||
channels:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Number of audio channels (for audio streams)."
|
||||
example: 6
|
||||
audioChannelLayout:
|
||||
@@ -311,6 +361,7 @@ items:
|
||||
example: "5.1(side)"
|
||||
samplingRate:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Sampling rate for the audio stream."
|
||||
example: 48000
|
||||
canAutoSync:
|
||||
|
||||
@@ -3,7 +3,7 @@ required:
|
||||
- size
|
||||
properties:
|
||||
size:
|
||||
type: number
|
||||
type: integer
|
||||
example: 50
|
||||
offset:
|
||||
type: integer
|
||||
|
||||
@@ -17,7 +17,10 @@ properties:
|
||||
example: "/library/sections/2/all?type=2"
|
||||
type:
|
||||
type: string
|
||||
example: "show"
|
||||
example: filter
|
||||
subtype:
|
||||
type: string
|
||||
example: "clip"
|
||||
title:
|
||||
type: string
|
||||
example: "TV Shows"
|
||||
@@ -50,6 +53,10 @@ properties:
|
||||
type:
|
||||
type: string
|
||||
example: "filter"
|
||||
advanced:
|
||||
type: boolean
|
||||
example: true
|
||||
|
||||
Sort:
|
||||
type: array
|
||||
items:
|
||||
|
||||
8
src/models/collection/tag.yaml
Normal file
8
src/models/collection/tag.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- tag
|
||||
properties:
|
||||
tag:
|
||||
type: string
|
||||
description: The user made collection this media item belongs too
|
||||
example: My Awesome Collection
|
||||
@@ -4,6 +4,8 @@ enum:
|
||||
- show
|
||||
- season
|
||||
- episode
|
||||
- artist
|
||||
- album
|
||||
example: "movie"
|
||||
description: |
|
||||
The type of media content
|
||||
@@ -12,3 +14,5 @@ x-speakeasy-enums:
|
||||
- TV_SHOW
|
||||
- SEASON
|
||||
- EPISODE
|
||||
- ARTIST
|
||||
- ALBUM
|
||||
|
||||
8
src/models/country/tag.yaml
Normal file
8
src/models/country/tag.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- tag
|
||||
properties:
|
||||
tag:
|
||||
type: string
|
||||
description: The country of origin of this media item
|
||||
example: United States of America
|
||||
8
src/models/director/tag.yaml
Normal file
8
src/models/director/tag.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- tag
|
||||
properties:
|
||||
tag:
|
||||
type: string
|
||||
description: The role of Director
|
||||
example: Danny Boyle
|
||||
9
src/models/genre/tag.yaml
Normal file
9
src/models/genre/tag.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- tag
|
||||
properties:
|
||||
tag:
|
||||
type: string
|
||||
description: |
|
||||
The genre name of this media-item
|
||||
example: "Crime"
|
||||
8
src/models/media-container/content.yaml
Normal file
8
src/models/media-container/content.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- content
|
||||
properties:
|
||||
content:
|
||||
type: string
|
||||
description: "The content type or mode."
|
||||
example: "secondary"
|
||||
8
src/models/media-container/offset.yaml
Normal file
8
src/models/media-container/offset.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- offset
|
||||
properties:
|
||||
offset:
|
||||
type: integer
|
||||
description: "Offset value for pagination."
|
||||
example: 0
|
||||
@@ -3,5 +3,7 @@ required:
|
||||
- size
|
||||
properties:
|
||||
size:
|
||||
type: number
|
||||
description: "Number of media items returned in this response."
|
||||
type: integer
|
||||
format: int32
|
||||
example: 50
|
||||
|
||||
9
src/models/media-container/total-size.yaml
Normal file
9
src/models/media-container/total-size.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- totalSize
|
||||
properties:
|
||||
totalSize:
|
||||
description: "Total number of media items in the library."
|
||||
type: integer
|
||||
format: int32
|
||||
example: 50
|
||||
8
src/models/meta-data/added-at.yaml
Normal file
8
src/models/meta-data/added-at.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- addedAt
|
||||
properties:
|
||||
addedAt:
|
||||
allOf:
|
||||
- description: "Unix timestamp when the item was added."
|
||||
- $ref: "../../models/common/PlexDateTime.yaml"
|
||||
8
src/models/meta-data/art.yaml
Normal file
8
src/models/meta-data/art.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- art
|
||||
properties:
|
||||
art:
|
||||
type: string
|
||||
description: "The art image URL for the media item."
|
||||
example: "/library/metadata/58683/art/1703239236"
|
||||
6
src/models/meta-data/audience-rating-image.yaml
Normal file
6
src/models/meta-data/audience-rating-image.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
audienceRatingImage:
|
||||
type: string
|
||||
description: "The URL for the audience rating image."
|
||||
example: "rottentomatoes://image.rating.upright"
|
||||
8
src/models/meta-data/audience-rating.yaml
Normal file
8
src/models/meta-data/audience-rating.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- audienceRating
|
||||
properties:
|
||||
audienceRating:
|
||||
type: number
|
||||
description: "The audience rating for the media item."
|
||||
example: 9.2
|
||||
8
src/models/meta-data/banner.yaml
Normal file
8
src/models/meta-data/banner.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- banner
|
||||
properties:
|
||||
banner:
|
||||
type: string
|
||||
description: "The banner image URL for the media item."
|
||||
example: "/library/metadata/58683/banner/1703239236"
|
||||
6
src/models/meta-data/chapter-source.yaml
Normal file
6
src/models/meta-data/chapter-source.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
chapterSource:
|
||||
type: string
|
||||
description: "The source from which chapter data is derived."
|
||||
example: "media"
|
||||
9
src/models/meta-data/child-count.yaml
Normal file
9
src/models/meta-data/child-count.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- childCount
|
||||
properties:
|
||||
childCount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The number of child items associated with this media item."
|
||||
example: 1
|
||||
6
src/models/meta-data/content-rating.yaml
Normal file
6
src/models/meta-data/content-rating.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
contentRating:
|
||||
type: string
|
||||
description: "The content rating for the media item."
|
||||
example: "PG-13"
|
||||
6
src/models/meta-data/created-at-accuracy.yaml
Normal file
6
src/models/meta-data/created-at-accuracy.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
createdAtAccuracy:
|
||||
type: string
|
||||
description: "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)."
|
||||
example: "epoch,local"
|
||||
6
src/models/meta-data/created-at-tz-offset.yaml
Normal file
6
src/models/meta-data/created-at-tz-offset.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
createdAtTZOffset:
|
||||
type: string
|
||||
description: "The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC."
|
||||
example: "0"
|
||||
9
src/models/meta-data/duration.yaml
Normal file
9
src/models/meta-data/duration.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- duration
|
||||
properties:
|
||||
duration:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The duration of the media item in milliseconds."
|
||||
example: 11558112
|
||||
16
src/models/meta-data/enable-credits-marker-generation.yaml
Normal file
16
src/models/meta-data/enable-credits-marker-generation.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
type: object
|
||||
required:
|
||||
- enableCreditsMarkerGeneration
|
||||
properties:
|
||||
enableCreditsMarkerGeneration:
|
||||
type: string
|
||||
description: >
|
||||
Setting that indicates if credits marker detection is enabled.
|
||||
(-1 = Library default, 0 = Disabled).
|
||||
enum:
|
||||
- "-1"
|
||||
- "0"
|
||||
x-speakeasy-enums:
|
||||
- LIBRARY_DEFAULT
|
||||
- DISABLED
|
||||
example: "-1"
|
||||
18
src/models/meta-data/episode-sort.yaml
Normal file
18
src/models/meta-data/episode-sort.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
type: object
|
||||
required:
|
||||
- episodeSort
|
||||
properties:
|
||||
episodeSort:
|
||||
type: string
|
||||
description: >
|
||||
Setting that indicates how episodes are sorted for the show.
|
||||
(-1 = Library default, 0 = Oldest first, 1 = Newest first).
|
||||
enum:
|
||||
- "-1"
|
||||
- "0"
|
||||
- "1"
|
||||
x-speakeasy-enums:
|
||||
- LIBRARY_DEFAULT
|
||||
- OLDEST_FIRST
|
||||
- NEWEST_FIRST
|
||||
example: "0"
|
||||
18
src/models/meta-data/flatten-seasons.yaml
Normal file
18
src/models/meta-data/flatten-seasons.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
type: object
|
||||
required:
|
||||
- flattenSeasons
|
||||
properties:
|
||||
flattenSeasons:
|
||||
type: string
|
||||
description: >
|
||||
Setting that indicates if seasons are set to hidden for the show.
|
||||
(-1 = Library default, 0 = Hide, 1 = Show).
|
||||
enum:
|
||||
- "-1"
|
||||
- "0"
|
||||
- "1"
|
||||
x-speakeasy-enums:
|
||||
- LIBRARY_DEFAULT
|
||||
- HIDE
|
||||
- SHOW
|
||||
example: "1"
|
||||
6
src/models/meta-data/grandparent-art.yaml
Normal file
6
src/models/meta-data/grandparent-art.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
grandparentArt:
|
||||
type: string
|
||||
description: "The art URL for the grandparent media item."
|
||||
example: "/library/metadata/66/art/1705716261"
|
||||
6
src/models/meta-data/grandparent-guid.yaml
Normal file
6
src/models/meta-data/grandparent-guid.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
grandparentGuid:
|
||||
type: string
|
||||
description: "The GUID of the grandparent media item."
|
||||
example: "plex://show/5d9c081b170e24001f2a7be4"
|
||||
6
src/models/meta-data/grandparent-key.yaml
Normal file
6
src/models/meta-data/grandparent-key.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
grandparentKey:
|
||||
type: string
|
||||
description: "The key of the grandparent media item."
|
||||
example: "/library/metadata/66"
|
||||
6
src/models/meta-data/grandparent-rating-key.yaml
Normal file
6
src/models/meta-data/grandparent-rating-key.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
grandparentRatingKey:
|
||||
type: string
|
||||
description: "The rating key of the grandparent media item."
|
||||
example: "66"
|
||||
6
src/models/meta-data/grandparent-slug.yaml
Normal file
6
src/models/meta-data/grandparent-slug.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
grandparentSlug:
|
||||
type: string
|
||||
description: "The slug for the grandparent media item."
|
||||
example: "alice-in-borderland-2020"
|
||||
6
src/models/meta-data/grandparent-theme.yaml
Normal file
6
src/models/meta-data/grandparent-theme.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
grandparentTheme:
|
||||
type: string
|
||||
description: "The theme URL for the grandparent media item."
|
||||
example: "/library/metadata/66/theme/1705716261"
|
||||
6
src/models/meta-data/grandparent-thumb.yaml
Normal file
6
src/models/meta-data/grandparent-thumb.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
grandparentThumb:
|
||||
type: string
|
||||
description: "The thumbnail URL for the grandparent media item."
|
||||
example: "/library/metadata/66/thumb/1705716261"
|
||||
6
src/models/meta-data/grandparent-title.yaml
Normal file
6
src/models/meta-data/grandparent-title.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
grandparentTitle:
|
||||
type: string
|
||||
description: "The title of the grandparent media item."
|
||||
example: "Caprica"
|
||||
8
src/models/meta-data/guid.yaml
Normal file
8
src/models/meta-data/guid.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- guid
|
||||
properties:
|
||||
guid:
|
||||
type: string
|
||||
description: "The globally unique identifier for the media item."
|
||||
example: "plex://movie/5d7768ba96b655001fdc0408"
|
||||
8
src/models/meta-data/has-premium-extras.yaml
Normal file
8
src/models/meta-data/has-premium-extras.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- hasPremiumExtras
|
||||
properties:
|
||||
hasPremiumExtras:
|
||||
type: string
|
||||
description: "Indicates if premium extras are available (as a string value)."
|
||||
example: "1"
|
||||
8
src/models/meta-data/has-premium-primary-extra.yaml
Normal file
8
src/models/meta-data/has-premium-primary-extra.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- hasPremiumPrimaryExtra
|
||||
properties:
|
||||
hasPremiumPrimaryExtra:
|
||||
type: string
|
||||
description: "Indicates if a premium primary extra is available (as a string value)."
|
||||
example: "1"
|
||||
9
src/models/meta-data/index.yaml
Normal file
9
src/models/meta-data/index.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- index
|
||||
properties:
|
||||
index:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The index position of the media item."
|
||||
example: 1
|
||||
8
src/models/meta-data/key.yaml
Normal file
8
src/models/meta-data/key.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- key
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
description: "The unique key for the media item."
|
||||
example: "/library/metadata/58683"
|
||||
7
src/models/meta-data/last-rated-at.yaml
Normal file
7
src/models/meta-data/last-rated-at.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
lastRatedAt:
|
||||
type: integer
|
||||
format: int64
|
||||
description: "The Unix timestamp representing the last time the item was rated."
|
||||
example: 1721813113
|
||||
7
src/models/meta-data/last-viewed-at.yaml
Normal file
7
src/models/meta-data/last-viewed-at.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
lastViewedAt:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "Unix timestamp for when the media item was last viewed."
|
||||
example: 1682752242
|
||||
7
src/models/meta-data/leaf-count.yaml
Normal file
7
src/models/meta-data/leaf-count.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
leafCount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The number of leaf items (end nodes) under this media item."
|
||||
example: 14
|
||||
8
src/models/meta-data/library-section-id.yaml
Normal file
8
src/models/meta-data/library-section-id.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- librarySectionID
|
||||
properties:
|
||||
librarySectionID:
|
||||
type: integer
|
||||
description: "The identifier for the library section."
|
||||
example: 1
|
||||
8
src/models/meta-data/library-section-key.yaml
Normal file
8
src/models/meta-data/library-section-key.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- librarySectionKey
|
||||
properties:
|
||||
librarySectionKey:
|
||||
type: string
|
||||
description: "The key corresponding to the library section."
|
||||
example: "/library/sections/1"
|
||||
8
src/models/meta-data/library-section-title.yaml
Normal file
8
src/models/meta-data/library-section-title.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- librarySectionTitle
|
||||
properties:
|
||||
librarySectionTitle:
|
||||
type: string
|
||||
description: "The title of the library section."
|
||||
example: "Movies"
|
||||
27
src/models/meta-data/objects/image.yaml
Normal file
27
src/models/meta-data/objects/image.yaml
Normal file
@@ -0,0 +1,27 @@
|
||||
type: object
|
||||
description: |
|
||||
The available images for this media item
|
||||
properties:
|
||||
Image:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
required:
|
||||
- alt
|
||||
- type
|
||||
- url
|
||||
properties:
|
||||
alt:
|
||||
type: string
|
||||
example: "Episode 1"
|
||||
type:
|
||||
type: string
|
||||
enum:
|
||||
- coverPoster
|
||||
- background
|
||||
- snapshot
|
||||
- clearLogo
|
||||
example: "background"
|
||||
url:
|
||||
type: string
|
||||
example: "/library/metadata/45521/thumb/1644710589"
|
||||
24
src/models/meta-data/objects/ultra-blur-colors.yaml
Normal file
24
src/models/meta-data/objects/ultra-blur-colors.yaml
Normal file
@@ -0,0 +1,24 @@
|
||||
type: object
|
||||
description: |
|
||||
Unknown
|
||||
properties:
|
||||
UltraBlurColors:
|
||||
type: object
|
||||
required:
|
||||
- topLeft
|
||||
- topRight
|
||||
- bottomRight
|
||||
- bottomLeft
|
||||
properties:
|
||||
topLeft:
|
||||
type: string
|
||||
example: "11333b"
|
||||
topRight:
|
||||
type: string
|
||||
example: "0a232d"
|
||||
bottomRight:
|
||||
type: string
|
||||
example: "073958"
|
||||
bottomLeft:
|
||||
type: string
|
||||
example: "1f5066"
|
||||
6
src/models/meta-data/original-title.yaml
Normal file
6
src/models/meta-data/original-title.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
originalTitle:
|
||||
type: string
|
||||
description: "The original title of the media item (if different)."
|
||||
example: "映画 ブラッククローバー 魔法帝の剣"
|
||||
9
src/models/meta-data/originally-available-at.yaml
Normal file
9
src/models/meta-data/originally-available-at.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- originallyAvailableAt
|
||||
properties:
|
||||
originallyAvailableAt:
|
||||
type: string
|
||||
format: date
|
||||
description: "The original release date of the media item."
|
||||
example: "2022-12-14"
|
||||
6
src/models/meta-data/parent-guid.yaml
Normal file
6
src/models/meta-data/parent-guid.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
parentGuid:
|
||||
type: string
|
||||
description: "The GUID of the parent media item."
|
||||
example: "plex://show/5d9c081b170e24001f2a7be4"
|
||||
7
src/models/meta-data/parent-index.yaml
Normal file
7
src/models/meta-data/parent-index.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
parentIndex:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The index position of the parent media item."
|
||||
example: 1
|
||||
6
src/models/meta-data/parent-key.yaml
Normal file
6
src/models/meta-data/parent-key.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
parentKey:
|
||||
type: string
|
||||
description: "The key of the parent media item."
|
||||
example: "/library/metadata/66"
|
||||
6
src/models/meta-data/parent-rating-key.yaml
Normal file
6
src/models/meta-data/parent-rating-key.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
parentRatingKey:
|
||||
type: string
|
||||
description: "The rating key of the parent media item."
|
||||
example: "66"
|
||||
8
src/models/meta-data/parent-slug.yaml
Normal file
8
src/models/meta-data/parent-slug.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- parentSlug
|
||||
properties:
|
||||
parentSlug:
|
||||
type: string
|
||||
description: "The slug for the parent media item."
|
||||
example: "alice-in-borderland-2020"
|
||||
8
src/models/meta-data/parent-studio.yaml
Normal file
8
src/models/meta-data/parent-studio.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- parentStudio
|
||||
properties:
|
||||
parentStudio:
|
||||
type: string
|
||||
description: "The studio of the parent media item."
|
||||
example: "UCP"
|
||||
8
src/models/meta-data/parent-theme.yaml
Normal file
8
src/models/meta-data/parent-theme.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- parentTheme
|
||||
properties:
|
||||
parentTheme:
|
||||
type: string
|
||||
description: "The theme URL for the parent media item."
|
||||
example: "/library/metadata/66/theme/1705716261"
|
||||
6
src/models/meta-data/parent-thumb.yaml
Normal file
6
src/models/meta-data/parent-thumb.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
parentThumb:
|
||||
type: string
|
||||
description: "The thumbnail URL for the parent media item."
|
||||
example: "/library/metadata/66/thumb/1705716261"
|
||||
6
src/models/meta-data/parent-title.yaml
Normal file
6
src/models/meta-data/parent-title.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
parentTitle:
|
||||
type: string
|
||||
description: "The title of the parent media item."
|
||||
example: "Caprica"
|
||||
9
src/models/meta-data/parent-year.yaml
Normal file
9
src/models/meta-data/parent-year.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- parentYear
|
||||
properties:
|
||||
parentYear:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The release year of the parent media item."
|
||||
example: 2010
|
||||
6
src/models/meta-data/primary-extra-key.yaml
Normal file
6
src/models/meta-data/primary-extra-key.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
primaryExtraKey:
|
||||
type: string
|
||||
description: "The primary extra key associated with this media item."
|
||||
example: "/library/metadata/58684"
|
||||
6
src/models/meta-data/rating-image.yaml
Normal file
6
src/models/meta-data/rating-image.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
ratingImage:
|
||||
type: string
|
||||
description: "The URL for the rating image."
|
||||
example: "rottentomatoes://image.rating.ripe"
|
||||
8
src/models/meta-data/rating-key.yaml
Normal file
8
src/models/meta-data/rating-key.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- ratingKey
|
||||
properties:
|
||||
ratingKey:
|
||||
type: string
|
||||
description: "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."
|
||||
example: "58683"
|
||||
9
src/models/meta-data/rating.yaml
Normal file
9
src/models/meta-data/rating.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- rating
|
||||
properties:
|
||||
rating:
|
||||
type: number
|
||||
format: float
|
||||
description: "The critic rating for the media item."
|
||||
example: 7.6
|
||||
9
src/models/meta-data/season-count.yaml
Normal file
9
src/models/meta-data/season-count.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- seasonCount
|
||||
properties:
|
||||
seasonCount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The total number of seasons (for TV shows)."
|
||||
example: 2022
|
||||
27
src/models/meta-data/show-ordering.yaml
Normal file
27
src/models/meta-data/show-ordering.yaml
Normal file
@@ -0,0 +1,27 @@
|
||||
type: object
|
||||
required:
|
||||
- showOrdering
|
||||
properties:
|
||||
showOrdering:
|
||||
type: string
|
||||
description: |
|
||||
Setting that indicates the episode ordering for the show.
|
||||
Options:
|
||||
- None = Library default
|
||||
- tmdbAiring = The Movie Database (Aired)
|
||||
- aired = TheTVDB (Aired)
|
||||
- dvd = TheTVDB (DVD)
|
||||
- absolute = TheTVDB (Absolute)
|
||||
enum:
|
||||
- None
|
||||
- tmdbAiring
|
||||
- aired
|
||||
- dvd
|
||||
- absolute
|
||||
x-speakeasy-enums:
|
||||
- NONE
|
||||
- TMDB_AIRING
|
||||
- TVDB_AIRED
|
||||
- TVDB_DVD
|
||||
- TVDB_ABSOLUTE
|
||||
example: "absolute"
|
||||
8
src/models/meta-data/skip-children.yaml
Normal file
8
src/models/meta-data/skip-children.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- skipChildren
|
||||
properties:
|
||||
skipChildren:
|
||||
type: boolean
|
||||
description: "Indicates whether child items should be skipped."
|
||||
example: false
|
||||
7
src/models/meta-data/skip-count.yaml
Normal file
7
src/models/meta-data/skip-count.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
skipCount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The number of times this media item has been skipped."
|
||||
example: 1
|
||||
8
src/models/meta-data/slug.yaml
Normal file
8
src/models/meta-data/slug.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- slug
|
||||
properties:
|
||||
slug:
|
||||
type: string
|
||||
description: "A URL‐friendly version of the media title."
|
||||
example: "4-for-texas"
|
||||
6
src/models/meta-data/studio.yaml
Normal file
6
src/models/meta-data/studio.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
studio:
|
||||
type: string
|
||||
description: "The studio that produced the media item."
|
||||
example: "20th Century Studios"
|
||||
6
src/models/meta-data/subtype.yaml
Normal file
6
src/models/meta-data/subtype.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
subtype:
|
||||
type: string
|
||||
description: "A classification that further describes the type of media item. For example, 'clip' indicates that the item is a short video clip."
|
||||
example: "clip"
|
||||
11
src/models/meta-data/summary.yaml
Normal file
11
src/models/meta-data/summary.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
type: object
|
||||
required:
|
||||
- summary
|
||||
properties:
|
||||
summary:
|
||||
type: string
|
||||
description: "A synopsis of the media item."
|
||||
example: |
|
||||
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.
|
||||
8
src/models/meta-data/tagline.yaml
Normal file
8
src/models/meta-data/tagline.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- tagline
|
||||
properties:
|
||||
tagline:
|
||||
type: string
|
||||
description: "A brief tagline for the media item."
|
||||
example: "Return to Pandora."
|
||||
8
src/models/meta-data/theme.yaml
Normal file
8
src/models/meta-data/theme.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- theme
|
||||
properties:
|
||||
theme:
|
||||
type: string
|
||||
description: "The theme URL for the media item."
|
||||
example: "/library/metadata/1/theme/1705636920"
|
||||
8
src/models/meta-data/thumb.yaml
Normal file
8
src/models/meta-data/thumb.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- thumb
|
||||
properties:
|
||||
thumb:
|
||||
type: string
|
||||
description: "The thumbnail image URL for the media item."
|
||||
example: "/library/metadata/58683/thumb/1703239236"
|
||||
8
src/models/meta-data/title-sort.yaml
Normal file
8
src/models/meta-data/title-sort.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- titleSort
|
||||
properties:
|
||||
titleSort:
|
||||
type: string
|
||||
description: "The sort title used for ordering media items."
|
||||
example: "Whale"
|
||||
8
src/models/meta-data/title.yaml
Normal file
8
src/models/meta-data/title.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- title
|
||||
properties:
|
||||
title:
|
||||
type: string
|
||||
description: "The title of the media item."
|
||||
example: "Avatar: The Way of Water"
|
||||
7
src/models/meta-data/type.yaml
Normal file
7
src/models/meta-data/type.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
required:
|
||||
- type
|
||||
properties:
|
||||
type:
|
||||
allOf:
|
||||
- $ref: "../common/PlexMediaTypeString.yaml"
|
||||
4
src/models/meta-data/updated-at.yaml
Normal file
4
src/models/meta-data/updated-at.yaml
Normal file
@@ -0,0 +1,4 @@
|
||||
type: object
|
||||
properties:
|
||||
updatedAt:
|
||||
$ref: "../../models/common/PlexDateTime.yaml"
|
||||
7
src/models/meta-data/user-rating.yaml
Normal file
7
src/models/meta-data/user-rating.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
userRating:
|
||||
type: number
|
||||
format: float
|
||||
description: "The rating provided by a user for the item. This value is expressed as a decimal number."
|
||||
example: 10.0
|
||||
7
src/models/meta-data/view-count.yaml
Normal file
7
src/models/meta-data/view-count.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
viewCount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The number of times this media item has been viewed."
|
||||
example: 1
|
||||
7
src/models/meta-data/view-offset.yaml
Normal file
7
src/models/meta-data/view-offset.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
viewOffset:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The current playback offset (in milliseconds)."
|
||||
example: 5222500
|
||||
7
src/models/meta-data/viewed-leaf-count.yaml
Normal file
7
src/models/meta-data/viewed-leaf-count.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
viewedLeafCount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The number of leaf items that have been viewed."
|
||||
example: 0
|
||||
9
src/models/meta-data/year.yaml
Normal file
9
src/models/meta-data/year.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
type: object
|
||||
required:
|
||||
- year
|
||||
properties:
|
||||
year:
|
||||
type: integer
|
||||
format: int32
|
||||
description: "The release year of the media item."
|
||||
example: 2022
|
||||
8
src/models/role/tag.yaml
Normal file
8
src/models/role/tag.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- tag
|
||||
properties:
|
||||
tag:
|
||||
type: string
|
||||
description: The name of the actor for this role
|
||||
example: Danny Boyle
|
||||
8
src/models/writer/tag.yaml
Normal file
8
src/models/writer/tag.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- tag
|
||||
properties:
|
||||
tag:
|
||||
type: string
|
||||
description: The role of Writer
|
||||
example: Danny Boyle
|
||||
4
src/parameters/include-advanced.yaml
Normal file
4
src/parameters/include-advanced.yaml
Normal file
@@ -0,0 +1,4 @@
|
||||
name: includeAdvanced
|
||||
in: query
|
||||
schema:
|
||||
$ref: "../models/common/PlexBoolean.yaml"
|
||||
4
src/parameters/include-collections.yaml
Normal file
4
src/parameters/include-collections.yaml
Normal file
@@ -0,0 +1,4 @@
|
||||
name: includeCollections
|
||||
in: query
|
||||
schema:
|
||||
$ref: "../models/common/PlexBoolean.yaml"
|
||||
4
src/parameters/include-external-media.yaml
Normal file
4
src/parameters/include-external-media.yaml
Normal file
@@ -0,0 +1,4 @@
|
||||
name: includeExternalMedia
|
||||
in: query
|
||||
schema:
|
||||
$ref: "../models/common/PlexBoolean.yaml"
|
||||
6
src/parameters/include-guids.yaml
Normal file
6
src/parameters/include-guids.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
name: includeGuids
|
||||
in: query
|
||||
description: |
|
||||
Adds the Guid object to the response
|
||||
schema:
|
||||
$ref: "../models/common/PlexBoolean.yaml"
|
||||
6
src/parameters/unwatched-leaves.yaml
Normal file
6
src/parameters/unwatched-leaves.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
name: unwatchedLeaves
|
||||
in: query
|
||||
description: |
|
||||
Adds the Meta object to the response
|
||||
schema:
|
||||
$ref: "../models/common/PlexBoolean.yaml"
|
||||
164
src/paths/library/[sectionKey]/get-library-all.yaml
Normal file
164
src/paths/library/[sectionKey]/get-library-all.yaml
Normal file
@@ -0,0 +1,164 @@
|
||||
get:
|
||||
tags:
|
||||
- Library
|
||||
summary: Get all media of library
|
||||
operationId: get-all-media-library
|
||||
description: |
|
||||
Retrieves a list of all general media data for this library.
|
||||
parameters:
|
||||
- $ref: "../../../parameters/library/section-key.yaml"
|
||||
- $ref: "../../../parameters/type.yaml"
|
||||
- $ref: "../../../parameters/include-meta.yaml"
|
||||
- $ref: "../../../parameters/include-guids.yaml"
|
||||
- $ref: "../../../parameters/include-advanced.yaml"
|
||||
- $ref: "../../../parameters/include-collections.yaml"
|
||||
- $ref: "../../../parameters/include-external-media.yaml"
|
||||
- $ref: "../../../parameters/container-start.yaml"
|
||||
- $ref: "../../../parameters/container-size.yaml"
|
||||
- $ref: "../../../parameters/accept-application-json.yaml"
|
||||
responses:
|
||||
"200":
|
||||
description: Successful response containing media container data.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
MediaContainer:
|
||||
allOf:
|
||||
- $ref: "../../../models/media-container/size.yaml"
|
||||
- $ref: "../../../models/media-container/total-size.yaml"
|
||||
- $ref: "../../../models/media-container/offset.yaml"
|
||||
- $ref: "../../../models/media-container/allow-sync.yaml"
|
||||
- $ref: "../../../models/media-container/art.yaml"
|
||||
- $ref: "../../../models/media-container/content.yaml"
|
||||
- $ref: "../../../models/media-container/identifier.yaml"
|
||||
- $ref: "../../../models/media-container/library-section-id.yaml"
|
||||
- $ref: "../../../models/media-container/library-section-title.yaml"
|
||||
- $ref: "../../../models/media-container/library-section-uuid.yaml"
|
||||
- $ref: "../../../models/media-container/media-tag-prefix.yaml"
|
||||
- $ref: "../../../models/media-container/media-tag-version.yaml"
|
||||
- $ref: "../../../models/media-container/thumb.yaml"
|
||||
- $ref: "../../../models/media-container/nocache.yaml"
|
||||
- $ref: "../../../models/media-container/title1.yaml"
|
||||
- $ref: "../../../models/media-container/title2.yaml"
|
||||
- $ref: "../../../models/media-container/view-group.yaml"
|
||||
- type: object
|
||||
properties:
|
||||
Meta:
|
||||
$ref: "../../../models/Meta.yaml"
|
||||
Metadata:
|
||||
type: array
|
||||
description: "An array of metadata items."
|
||||
items:
|
||||
required:
|
||||
- type
|
||||
allOf:
|
||||
- $ref: "../../../models/meta-data/rating-key.yaml"
|
||||
- $ref: "../../../models/meta-data/key.yaml"
|
||||
- $ref: "../../../models/meta-data/guid.yaml"
|
||||
- $ref: "../../../models/meta-data/slug.yaml"
|
||||
- $ref: "../../../models/meta-data/studio.yaml"
|
||||
- $ref: "../../../models/meta-data/type.yaml"
|
||||
- $ref: "../../../models/meta-data/title.yaml"
|
||||
- $ref: "../../../models/meta-data/title-sort.yaml"
|
||||
- $ref: "../../../models/meta-data/content-rating.yaml"
|
||||
- $ref: "../../../models/meta-data/summary.yaml"
|
||||
- $ref: "../../../models/meta-data/rating.yaml"
|
||||
- $ref: "../../../models/meta-data/audience-rating.yaml"
|
||||
- $ref: "../../../models/meta-data/year.yaml"
|
||||
- $ref: "../../../models/meta-data/tagline.yaml"
|
||||
- $ref: "../../../models/meta-data/thumb.yaml"
|
||||
- $ref: "../../../models/meta-data/art.yaml"
|
||||
- $ref: "../../../models/meta-data/theme.yaml"
|
||||
- $ref: "../../../models/meta-data/index.yaml"
|
||||
- $ref: "../../../models/meta-data/leaf-count.yaml"
|
||||
- $ref: "../../../models/meta-data/viewed-leaf-count.yaml"
|
||||
- $ref: "../../../models/meta-data/child-count.yaml"
|
||||
- $ref: "../../../models/meta-data/season-count.yaml"
|
||||
- $ref: "../../../models/meta-data/duration.yaml"
|
||||
- $ref: "../../../models/meta-data/originally-available-at.yaml"
|
||||
- $ref: "../../../models/meta-data/added-at.yaml"
|
||||
- $ref: "../../../models/meta-data/updated-at.yaml"
|
||||
- $ref: "../../../models/meta-data/audience-rating-image.yaml"
|
||||
- $ref: "../../../models/meta-data/chapter-source.yaml"
|
||||
- $ref: "../../../models/meta-data/primary-extra-key.yaml"
|
||||
- $ref: "../../../models/meta-data/original-title.yaml"
|
||||
- $ref: "../../../models/meta-data/parent-rating-key.yaml"
|
||||
- $ref: "../../../models/meta-data/grandparent-rating-key.yaml"
|
||||
- $ref: "../../../models/meta-data/parent-guid.yaml"
|
||||
- $ref: "../../../models/meta-data/grandparent-guid.yaml"
|
||||
- $ref: "../../../models/meta-data/grandparent-slug.yaml"
|
||||
- $ref: "../../../models/meta-data/grandparent-key.yaml"
|
||||
- $ref: "../../../models/meta-data/parent-key.yaml"
|
||||
- $ref: "../../../models/meta-data/grandparent-title.yaml"
|
||||
- $ref: "../../../models/meta-data/grandparent-thumb.yaml"
|
||||
- $ref: "../../../models/meta-data/grandparent-theme.yaml"
|
||||
- $ref: "../../../models/meta-data/grandparent-art.yaml"
|
||||
- $ref: "../../../models/meta-data/parent-title.yaml"
|
||||
- $ref: "../../../models/meta-data/parent-index.yaml"
|
||||
- $ref: "../../../models/meta-data/parent-thumb.yaml"
|
||||
- $ref: "../../../models/meta-data/rating-image.yaml"
|
||||
- $ref: "../../../models/meta-data/view-count.yaml"
|
||||
- $ref: "../../../models/meta-data/view-offset.yaml"
|
||||
- $ref: "../../../models/meta-data/skip-count.yaml"
|
||||
- $ref: "../../../models/meta-data/subtype.yaml"
|
||||
- $ref: "../../../models/meta-data/last-rated-at.yaml"
|
||||
- $ref: "../../../models/meta-data/created-at-accuracy.yaml"
|
||||
- $ref: "../../../models/meta-data/created-at-tz-offset.yaml"
|
||||
- $ref: "../../../models/meta-data/last-viewed-at.yaml"
|
||||
- $ref: "../../../models/meta-data/user-rating.yaml"
|
||||
- $ref: "../../../models/meta-data/objects/image.yaml"
|
||||
- $ref: "../../../models/meta-data/objects/ultra-blur-colors.yaml"
|
||||
- type: object
|
||||
properties:
|
||||
Media:
|
||||
allOf:
|
||||
- $ref: "../../../models/Media-data.yaml"
|
||||
Genre:
|
||||
type: array
|
||||
items:
|
||||
allOf:
|
||||
- $ref: "../../../models/country/tag.yaml"
|
||||
Country:
|
||||
type: array
|
||||
items:
|
||||
allOf:
|
||||
- $ref: "../../../models/country/tag.yaml"
|
||||
Director:
|
||||
type: array
|
||||
items:
|
||||
allOf:
|
||||
- $ref: "../../../models/director/tag.yaml"
|
||||
Writer:
|
||||
type: array
|
||||
items:
|
||||
allOf:
|
||||
- $ref: "../../../models/writer/tag.yaml"
|
||||
Role:
|
||||
type: array
|
||||
items:
|
||||
allOf:
|
||||
- $ref: "../../../models/role/tag.yaml"
|
||||
Guid:
|
||||
x-speakeasy-name-override: guids
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
description: |
|
||||
The unique identifier for the Guid. Can be imdb://tt0286347, tmdb://1763, tvdb://2337
|
||||
example: tvdb://2337
|
||||
Collection:
|
||||
type: array
|
||||
items:
|
||||
allOf:
|
||||
- $ref: "../../../models/collection/tag.yaml"
|
||||
"400":
|
||||
$ref: "../../../responses/400.yaml"
|
||||
"401":
|
||||
$ref: "../../../responses/401.yaml"
|
||||
"404":
|
||||
$ref: "../../../responses/404-html.yaml"
|
||||
@@ -19,49 +19,20 @@ get:
|
||||
properties:
|
||||
MediaContainer:
|
||||
allOf:
|
||||
- $ref: "../../../models/MediaContainer.yaml"
|
||||
- $ref: "../../../models/media-container/size.yaml"
|
||||
- $ref: "../../../models/media-container/allow-sync.yaml"
|
||||
- $ref: "../../../models/media-container/art.yaml"
|
||||
- $ref: "../../../models/media-container/content.yaml"
|
||||
- $ref: "../../../models/media-container/identifier.yaml"
|
||||
- $ref: "../../../models/media-container/media-tag-prefix.yaml"
|
||||
- $ref: "../../../models/media-container/media-tag-version.yaml"
|
||||
- $ref: "../../../models/media-container/nocache.yaml"
|
||||
- $ref: "../../../models/media-container/thumb.yaml"
|
||||
- $ref: "../../../models/media-container/title1.yaml"
|
||||
- $ref: "../../../models/media-container/title2.yaml"
|
||||
- $ref: "../../../models/media-container/view-group.yaml"
|
||||
- type: object
|
||||
required:
|
||||
- size
|
||||
- allowSync
|
||||
- art
|
||||
- content
|
||||
- identifier
|
||||
- mediaTagPrefix
|
||||
- mediaTagVersion
|
||||
- nocache
|
||||
- thumb
|
||||
- title1
|
||||
- title2
|
||||
- viewGroup
|
||||
properties:
|
||||
art:
|
||||
type: string
|
||||
example: "/:/resources/show-fanart.jpg"
|
||||
content:
|
||||
type: string
|
||||
example: "secondary"
|
||||
mediaTagPrefix:
|
||||
type: string
|
||||
example: "/system/bundle/media/flags/"
|
||||
mediaTagVersion:
|
||||
type: integer
|
||||
example: 1734362201
|
||||
nocache:
|
||||
type: boolean
|
||||
example: true
|
||||
thumb:
|
||||
type: string
|
||||
example: "/:/resources/show.png"
|
||||
title1:
|
||||
type: string
|
||||
example: "TV Series"
|
||||
title2:
|
||||
type: string
|
||||
example: "By Country"
|
||||
viewGroup:
|
||||
type: string
|
||||
example: "secondary"
|
||||
Directory:
|
||||
type: array
|
||||
items:
|
||||
|
||||
@@ -19,49 +19,20 @@ get:
|
||||
properties:
|
||||
MediaContainer:
|
||||
allOf:
|
||||
- $ref: "../../../models/MediaContainer.yaml"
|
||||
- $ref: "../../../models/media-container/size.yaml"
|
||||
- $ref: "../../../models/media-container/allow-sync.yaml"
|
||||
- $ref: "../../../models/media-container/art.yaml"
|
||||
- $ref: "../../../models/media-container/content.yaml"
|
||||
- $ref: "../../../models/media-container/identifier.yaml"
|
||||
- $ref: "../../../models/media-container/media-tag-prefix.yaml"
|
||||
- $ref: "../../../models/media-container/media-tag-version.yaml"
|
||||
- $ref: "../../../models/media-container/nocache.yaml"
|
||||
- $ref: "../../../models/media-container/thumb.yaml"
|
||||
- $ref: "../../../models/media-container/title1.yaml"
|
||||
- $ref: "../../../models/media-container/title2.yaml"
|
||||
- $ref: "../../../models/media-container/view-group.yaml"
|
||||
- type: object
|
||||
required:
|
||||
- size
|
||||
- allowSync
|
||||
- art
|
||||
- content
|
||||
- identifier
|
||||
- mediaTagPrefix
|
||||
- mediaTagVersion
|
||||
- nocache
|
||||
- thumb
|
||||
- title1
|
||||
- title2
|
||||
- viewGroup
|
||||
properties:
|
||||
art:
|
||||
type: string
|
||||
example: "/:/resources/show-fanart.jpg"
|
||||
content:
|
||||
type: string
|
||||
example: "secondary"
|
||||
mediaTagPrefix:
|
||||
type: string
|
||||
example: "/system/bundle/media/flags/"
|
||||
mediaTagVersion:
|
||||
type: integer
|
||||
example: 1734362201
|
||||
nocache:
|
||||
type: boolean
|
||||
example: true
|
||||
thumb:
|
||||
type: string
|
||||
example: "/:/resources/show.png"
|
||||
title1:
|
||||
type: string
|
||||
example: "TV Shows (Reality)"
|
||||
title2:
|
||||
type: string
|
||||
example: "By Genre"
|
||||
viewGroup:
|
||||
type: string
|
||||
example: "secondary"
|
||||
Directory:
|
||||
type: array
|
||||
items:
|
||||
|
||||
@@ -33,7 +33,6 @@ get:
|
||||
schema:
|
||||
type: string
|
||||
enum:
|
||||
- all
|
||||
- unwatched
|
||||
- newest
|
||||
- recentlyAdded
|
||||
@@ -41,12 +40,9 @@ get:
|
||||
- onDeck
|
||||
- collection
|
||||
- edition
|
||||
- genre
|
||||
- year
|
||||
- decade
|
||||
- director
|
||||
- actor
|
||||
- country
|
||||
- contentRating
|
||||
- rating
|
||||
- resolution
|
||||
|
||||
@@ -140,21 +140,15 @@ get:
|
||||
- librarySectionTitle
|
||||
- librarySectionID
|
||||
- librarySectionKey
|
||||
- contentRating
|
||||
- summary
|
||||
- audienceRating
|
||||
- year
|
||||
- thumb
|
||||
- art
|
||||
- duration
|
||||
- originallyAvailableAt
|
||||
- addedAt
|
||||
- updatedAt
|
||||
- audienceRatingImage
|
||||
- Image
|
||||
- UltraBlurColors
|
||||
- Guid
|
||||
- Rating
|
||||
properties:
|
||||
ratingKey:
|
||||
type: string
|
||||
@@ -268,7 +262,17 @@ get:
|
||||
year:
|
||||
type: integer
|
||||
description: "The release year."
|
||||
format: int32
|
||||
example: 2015
|
||||
rating:
|
||||
type: number
|
||||
format: float
|
||||
description: "The general rating"
|
||||
example: 6.0
|
||||
ratingImage:
|
||||
type: string
|
||||
description: "The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image)."
|
||||
example: "rottentomatoes://image.rating.ripe"
|
||||
tagline:
|
||||
type: string
|
||||
description: "The tagline of the content."
|
||||
@@ -295,6 +299,7 @@ get:
|
||||
type: integer
|
||||
description: "Duration of the content in milliseconds."
|
||||
example: 2700000
|
||||
format: int32
|
||||
originallyAvailableAt:
|
||||
type: string
|
||||
format: date
|
||||
@@ -311,15 +316,16 @@ get:
|
||||
childCount:
|
||||
type: integer
|
||||
description: "The number of child items."
|
||||
format: int32
|
||||
example: 6
|
||||
addedAt:
|
||||
type: integer
|
||||
description: "Unix timestamp when the item was added."
|
||||
example: 1625505101
|
||||
allOf:
|
||||
- description: "Unix timestamp when the item was added."
|
||||
- $ref: "../../../../models/common/PlexDateTime.yaml"
|
||||
updatedAt:
|
||||
type: integer
|
||||
description: "Unix timestamp when the item was last updated."
|
||||
example: 1736487993
|
||||
allOf:
|
||||
- description: "Unix timestamp when the item was last updated."
|
||||
- $ref: "../../../../models/common/PlexDateTime.yaml"
|
||||
audienceRatingImage:
|
||||
type: string
|
||||
description: "The URL for the audience rating image."
|
||||
@@ -424,6 +430,7 @@ get:
|
||||
id:
|
||||
type: integer
|
||||
description: "The unique country identifier."
|
||||
format: int32
|
||||
example: 58591
|
||||
filter:
|
||||
type: string
|
||||
@@ -447,6 +454,7 @@ get:
|
||||
description: "The GUID value."
|
||||
example: "imdb://tt3032476"
|
||||
Rating:
|
||||
x-speakeasy-name-override: Ratings
|
||||
type: array
|
||||
description: "An array of rating objects."
|
||||
items:
|
||||
|
||||
@@ -165,6 +165,8 @@ paths:
|
||||
|
||||
/library/sections/{sectionKey}/{tag}:
|
||||
$ref: "./paths/library/[sectionKey]/get-library-items.yaml"
|
||||
/library/sections/{sectionKey}/all:
|
||||
$ref: "./paths/library/[sectionKey]/get-library-all.yaml"
|
||||
/library/sections/{sectionKey}/refresh:
|
||||
$ref: "./paths/library/[sectionKey]/refresh/get-refresh-library-metadata.yaml"
|
||||
/library/sections/{sectionKey}/search:
|
||||
|
||||
78247
tests/paths/library/[sectionKey]/get-library-all.spec.ts
Normal file
78247
tests/paths/library/[sectionKey]/get-library-all.spec.ts
Normal file
File diff suppressed because it is too large
Load Diff
@@ -4488,4 +4488,900 @@ describe("GET /library/metadata/[RatingKey]/", () => {
|
||||
|
||||
validateResponseSpec("/library/metadata/{ratingKey}", "get", 200, response)
|
||||
})
|
||||
|
||||
it("should validate the 200 response when the response is from Episode", () => {
|
||||
const response = {
|
||||
MediaContainer: {
|
||||
size: 1,
|
||||
allowSync: true,
|
||||
identifier: "com.plexapp.plugins.library",
|
||||
librarySectionID: 1,
|
||||
librarySectionTitle: "Movies",
|
||||
librarySectionUUID: "0e71027d-88bc-4413-9927-5aad992d3d19",
|
||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
||||
mediaTagVersion: 1734362201,
|
||||
Metadata: [
|
||||
{
|
||||
ratingKey: "9881",
|
||||
key: "/library/metadata/9881",
|
||||
guid: "plex://movie/5d776834961905001eb939ac",
|
||||
slug: "91-2-weeks",
|
||||
studio: "Jonesfilm",
|
||||
type: "movie",
|
||||
title: "9½ Weeks",
|
||||
librarySectionTitle: "Movies",
|
||||
librarySectionID: 1,
|
||||
librarySectionKey: "/library/sections/1",
|
||||
originalTitle: "Nine 1/2 Weeks",
|
||||
contentRating: "nl/12",
|
||||
summary:
|
||||
"An erotic story about a woman, the assistant of an art gallery, who gets involved in an impersonal affair with a man. She barely knows about his life, only about the sex games they play, so the relationship begins to get complicated.",
|
||||
rating: 6.0,
|
||||
audienceRating: 5.5,
|
||||
year: 1986,
|
||||
tagline: "They Broke Every Rule.",
|
||||
thumb: "/library/metadata/9881/thumb/1732511607",
|
||||
art: "/library/metadata/9881/art/1732511607",
|
||||
duration: 7011007,
|
||||
originallyAvailableAt: "1986-02-09",
|
||||
addedAt: 1560801795,
|
||||
updatedAt: 1732511607,
|
||||
audienceRatingImage: "rottentomatoes://image.rating.spilled",
|
||||
chapterSource: "media",
|
||||
ratingImage: "rottentomatoes://image.rating.ripe",
|
||||
Media: [
|
||||
{
|
||||
id: 12306,
|
||||
duration: 7011007,
|
||||
bitrate: 13003,
|
||||
width: 1920,
|
||||
height: 1080,
|
||||
aspectRatio: 1.78,
|
||||
audioChannels: 6,
|
||||
audioCodec: "dca",
|
||||
videoCodec: "h264",
|
||||
videoResolution: "1080",
|
||||
container: "mkv",
|
||||
videoFrameRate: "24p",
|
||||
audioProfile: "dts",
|
||||
videoProfile: "high",
|
||||
hasVoiceActivity: false,
|
||||
Part: [
|
||||
{
|
||||
id: 41930,
|
||||
key: "/library/parts/41930/1501053187/file.mkv",
|
||||
duration: 7011007,
|
||||
file: "/Movies/Nine 1+2 Weeks (1986)/Nine.and.a.Half.Weeks.1986.1080p.BluRay.DTS.x264-HDMaNiAcS.mkv",
|
||||
size: 11394952434,
|
||||
audioProfile: "dts",
|
||||
container: "mkv",
|
||||
indexes: "sd",
|
||||
videoProfile: "high",
|
||||
Stream: [
|
||||
{
|
||||
id: 100031,
|
||||
streamType: 1,
|
||||
default: true,
|
||||
codec: "h264",
|
||||
index: 0,
|
||||
bitrate: 11494,
|
||||
language: "English",
|
||||
languageTag: "en",
|
||||
languageCode: "eng",
|
||||
bitDepth: 8,
|
||||
chromaLocation: "left",
|
||||
chromaSubsampling: "4:2:0",
|
||||
codedHeight: 1088,
|
||||
codedWidth: 1920,
|
||||
frameRate: 23.976,
|
||||
hasScalingMatrix: false,
|
||||
headerCompression: true,
|
||||
height: 1080,
|
||||
level: 41,
|
||||
profile: "high",
|
||||
refFrames: 4,
|
||||
scanType: "progressive",
|
||||
title:
|
||||
"Nine.Half.Weeks.1986.1080p.BluRay.DTS.x264-HDMaNiAcS",
|
||||
width: 1920,
|
||||
displayTitle: "1080p",
|
||||
extendedDisplayTitle:
|
||||
"Nine.Half.Weeks.1986.1080p.BluRay.DTS.x264-HDMaNiAcS (1080p H.264)"
|
||||
},
|
||||
{
|
||||
id: 100032,
|
||||
streamType: 2,
|
||||
selected: true,
|
||||
default: true,
|
||||
codec: "dca",
|
||||
index: 1,
|
||||
channels: 6,
|
||||
bitrate: 1509,
|
||||
language: "English",
|
||||
languageTag: "en",
|
||||
languageCode: "eng",
|
||||
audioChannelLayout: "5.1(side)",
|
||||
bitDepth: 24,
|
||||
headerCompression: true,
|
||||
profile: "dts",
|
||||
samplingRate: 48000,
|
||||
displayTitle: "English (DTS 5.1)",
|
||||
extendedDisplayTitle: "English (DTS 5.1)"
|
||||
},
|
||||
{
|
||||
id: 100033,
|
||||
streamType: 3,
|
||||
canAutoSync: false,
|
||||
default: true,
|
||||
codec: "srt",
|
||||
index: 2,
|
||||
bitrate: 0,
|
||||
language: "English",
|
||||
languageTag: "en",
|
||||
languageCode: "eng",
|
||||
displayTitle: "English",
|
||||
extendedDisplayTitle: "English (SRT)"
|
||||
},
|
||||
{
|
||||
id: 100034,
|
||||
streamType: 3,
|
||||
canAutoSync: false,
|
||||
codec: "srt",
|
||||
index: 3,
|
||||
bitrate: 0,
|
||||
language: "Greek",
|
||||
languageTag: "el",
|
||||
languageCode: "ell",
|
||||
displayTitle: "Greek",
|
||||
extendedDisplayTitle: "Greek (SRT)"
|
||||
},
|
||||
{
|
||||
id: 100035,
|
||||
streamType: 3,
|
||||
canAutoSync: false,
|
||||
codec: "srt",
|
||||
index: 4,
|
||||
bitrate: 0,
|
||||
language: "Dutch",
|
||||
languageTag: "nl",
|
||||
languageCode: "nld",
|
||||
displayTitle: "Dutch",
|
||||
extendedDisplayTitle: "Dutch (SRT)"
|
||||
},
|
||||
{
|
||||
id: 100036,
|
||||
streamType: 3,
|
||||
canAutoSync: false,
|
||||
codec: "srt",
|
||||
index: 5,
|
||||
bitrate: 0,
|
||||
language: "French",
|
||||
languageTag: "fr",
|
||||
languageCode: "fra",
|
||||
displayTitle: "French",
|
||||
extendedDisplayTitle: "French (SRT)"
|
||||
},
|
||||
{
|
||||
id: 100037,
|
||||
streamType: 3,
|
||||
canAutoSync: false,
|
||||
codec: "srt",
|
||||
index: 6,
|
||||
bitrate: 0,
|
||||
language: "Spanish",
|
||||
languageTag: "es",
|
||||
languageCode: "spa",
|
||||
displayTitle: "Spanish",
|
||||
extendedDisplayTitle: "Spanish (SRT)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
Image: [
|
||||
{
|
||||
alt: "9½ Weeks",
|
||||
type: "coverPoster",
|
||||
url: "/library/metadata/9881/thumb/1732511607"
|
||||
},
|
||||
{
|
||||
alt: "9½ Weeks",
|
||||
type: "background",
|
||||
url: "/library/metadata/9881/art/1732511607"
|
||||
},
|
||||
{
|
||||
alt: "9½ Weeks",
|
||||
type: "clearLogo",
|
||||
url: "/library/metadata/9881/clearLogo/1732511607"
|
||||
}
|
||||
],
|
||||
UltraBlurColors: {
|
||||
topLeft: "452410",
|
||||
topRight: "0d0202",
|
||||
bottomRight: "0d0202",
|
||||
bottomLeft: "272223"
|
||||
},
|
||||
Genre: [
|
||||
{ id: 91, filter: "genre=91", tag: "Drama" },
|
||||
{ id: 2313, filter: "genre=2313", tag: "Romance" }
|
||||
],
|
||||
Country: [
|
||||
{
|
||||
id: 58591,
|
||||
filter: "country=58591",
|
||||
tag: "United States of America"
|
||||
}
|
||||
],
|
||||
Guid: [
|
||||
{ id: "imdb://tt0091635" },
|
||||
{ id: "tmdb://10068" },
|
||||
{ id: "tvdb://1165" }
|
||||
],
|
||||
Rating: [
|
||||
{ image: "imdb://image.rating", value: 5.9, type: "audience" },
|
||||
{
|
||||
image: "rottentomatoes://image.rating.ripe",
|
||||
value: 6.0,
|
||||
type: "critic"
|
||||
},
|
||||
{
|
||||
image: "rottentomatoes://image.rating.spilled",
|
||||
value: 5.5,
|
||||
type: "audience"
|
||||
},
|
||||
{
|
||||
image: "themoviedb://image.rating",
|
||||
value: 6.1,
|
||||
type: "audience"
|
||||
}
|
||||
],
|
||||
Director: [
|
||||
{
|
||||
id: 115243,
|
||||
filter: "director=115243",
|
||||
tag: "Adrian Lyne",
|
||||
tagKey: "5d776827151a60001f24aac6",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/6/people/6f6d8e5aefcae45e3ccb7843de68c905.jpg"
|
||||
}
|
||||
],
|
||||
Writer: [
|
||||
{
|
||||
id: 119473,
|
||||
filter: "writer=119473",
|
||||
tag: "Sarah Kernochan",
|
||||
tagKey: "5d776829eb5d26001f1ddfcd",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/9/people/96dfb2020c32ddae0345c4a0aee59414.jpg"
|
||||
},
|
||||
{
|
||||
id: 119474,
|
||||
filter: "writer=119474",
|
||||
tag: "Zalman King",
|
||||
tagKey: "5d77682ff54112001f5bcc2e",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/5/people/57a351f9a4343dca762ee432544bf34e.jpg"
|
||||
},
|
||||
{
|
||||
id: 119475,
|
||||
filter: "writer=119475",
|
||||
tag: "Patricia Louisianna Knop",
|
||||
tagKey: "5d77682ff54112001f5bcc3f",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/4/people/46956d0e94d2446fb7c1e46d247d645a.jpg"
|
||||
},
|
||||
{
|
||||
id: 119476,
|
||||
filter: "writer=119476",
|
||||
tag: "Elizabeth McNeill",
|
||||
tagKey: "5dcd37dc27f42b001fe2a264"
|
||||
}
|
||||
],
|
||||
Role: [
|
||||
{
|
||||
id: 112471,
|
||||
filter: "actor=112471",
|
||||
tag: "Mickey Rourke",
|
||||
tagKey: "5d7768254de0ee001fcc8142",
|
||||
role: "John",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/9/people/957b644e5f8a141ae9715d7208ed11c7.jpg"
|
||||
},
|
||||
{
|
||||
id: 114907,
|
||||
filter: "actor=114907",
|
||||
tag: "Kim Basinger",
|
||||
tagKey: "5d776826e6d55c002040af92",
|
||||
role: "Elizabeth",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/4/people/4b7cdc723474d2effa3e53e37db88f0b.jpg"
|
||||
},
|
||||
{
|
||||
id: 119477,
|
||||
filter: "actor=119477",
|
||||
tag: "Margaret Whitton",
|
||||
tagKey: "5d77683454f42c001f8c42c9",
|
||||
role: "Molly",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/b/people/ba5f44eec74e0c12e4cb8924e88bb688.jpg"
|
||||
},
|
||||
{
|
||||
id: 119478,
|
||||
filter: "actor=119478",
|
||||
tag: "David Margulies",
|
||||
tagKey: "5d7768273c3c2a001fbcb1ca",
|
||||
role: "Harvey",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/people/5d7768273c3c2a001fbcb1ca.jpg"
|
||||
},
|
||||
{
|
||||
id: 118305,
|
||||
filter: "actor=118305",
|
||||
tag: "Christine Baranski",
|
||||
tagKey: "5d776828151a60001f24af12",
|
||||
role: "Thea",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/f/people/f9f3e932357029ab6ec4bf0c128c2cb4.jpg"
|
||||
},
|
||||
{
|
||||
id: 119479,
|
||||
filter: "actor=119479",
|
||||
tag: "Karen Young",
|
||||
tagKey: "5d77682754f42c001f8c2a3c",
|
||||
role: "Sue",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/3/people/36d0e412b0d58d6939d1976d306c10c4.jpg"
|
||||
},
|
||||
{
|
||||
id: 119480,
|
||||
filter: "actor=119480",
|
||||
tag: "Dwight Weist",
|
||||
tagKey: "5d776835961905001eb93cd7",
|
||||
role: "Farnsworth",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/4/people/4cf65442c74948fcd6758c6b77165019.jpg"
|
||||
},
|
||||
{
|
||||
id: 119481,
|
||||
filter: "actor=119481",
|
||||
tag: "Roderick Cook",
|
||||
tagKey: "5d776825151a60001f24a6d2",
|
||||
role: "Sinclair - the Critic",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/people/5d776825151a60001f24a6d2.jpg"
|
||||
},
|
||||
{
|
||||
id: 119482,
|
||||
filter: "actor=119482",
|
||||
tag: "Victor Truro",
|
||||
tagKey: "5d7768278718ba001e311e97",
|
||||
role: "Gallery Client",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/a/people/ac35e61b7f92d7e71f676c5742972a6f.jpg"
|
||||
},
|
||||
{
|
||||
id: 119483,
|
||||
filter: "actor=119483",
|
||||
tag: "Justine Johnston",
|
||||
tagKey: "5d776835961905001eb93cd8",
|
||||
role: "Bedding Saleswoman",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/people/5d776835961905001eb93cd8.jpg"
|
||||
},
|
||||
{
|
||||
id: 119484,
|
||||
filter: "actor=119484",
|
||||
tag: "Julian Beck",
|
||||
tagKey: "5d776835961905001eb93cd9",
|
||||
role: "Dinner Guest",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/people/5d776835961905001eb93cd9.jpg"
|
||||
},
|
||||
{
|
||||
id: 203253,
|
||||
filter: "actor=203253",
|
||||
tag: "Michael Margotta",
|
||||
tagKey: "5d776835961905001eb93cda",
|
||||
role: "Michael",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/people/5d776835961905001eb93cda.jpg"
|
||||
},
|
||||
{
|
||||
id: 203254,
|
||||
filter: "actor=203254",
|
||||
tag: "Petina Cole",
|
||||
tagKey: "5dd2c65235afd6001e030cf2",
|
||||
role: "Woman on Stage at Porno House",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/f/people/f9ab0a292d3d5d2a59a99bd80341a11d.jpg"
|
||||
},
|
||||
{
|
||||
id: 119487,
|
||||
filter: "actor=119487",
|
||||
tag: "Joey Silvera",
|
||||
tagKey: "5d776835961905001eb93cdc",
|
||||
role: "Man on Stage at Porno House",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/8/people/8c4772b1fb3490c51e723d7aa8a1ed27.jpg"
|
||||
},
|
||||
{
|
||||
id: 119488,
|
||||
filter: "actor=119488",
|
||||
tag: "Sarah Kernochan",
|
||||
tagKey: "5d776829eb5d26001f1ddfcd",
|
||||
role: "Gallery Guest",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/9/people/96dfb2020c32ddae0345c4a0aee59414.jpg"
|
||||
},
|
||||
{
|
||||
id: 113440,
|
||||
filter: "actor=113440",
|
||||
tag: "Helen Hanft",
|
||||
tagKey: "5d7768278718ba001e311e99",
|
||||
role: "Flea Market Shawl Seller",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/5/people/5f0b6b7603e7201abc7ae7a178dd7a3b.jpg"
|
||||
},
|
||||
{
|
||||
id: 203255,
|
||||
filter: "actor=203255",
|
||||
tag: "William De Acutis",
|
||||
tagKey: "5d77683185719b001f3a2bb3",
|
||||
role: "Ted",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/e/people/ebf48881699b18061c49cea38d8a8768.jpg"
|
||||
},
|
||||
{
|
||||
id: 203256,
|
||||
filter: "actor=203256",
|
||||
tag: "Cintia Cruz",
|
||||
tagKey: "5d776835961905001eb93cdd",
|
||||
role: "Whore"
|
||||
},
|
||||
{
|
||||
id: 119491,
|
||||
filter: "actor=119491",
|
||||
tag: "Kim Chan",
|
||||
tagKey: "5d776824103a2d001f563ad5",
|
||||
role: "Chinatown Butcher",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/people/5d776824103a2d001f563ad5.jpg"
|
||||
},
|
||||
{
|
||||
id: 181883,
|
||||
filter: "actor=181883",
|
||||
tag: "Lee Lai Sing",
|
||||
tagKey: "632092957b6301b7f349c8d4",
|
||||
role: "Angry Chinese Customer"
|
||||
},
|
||||
{
|
||||
id: 119493,
|
||||
filter: "actor=119493",
|
||||
tag: "Rudolph Willrich",
|
||||
tagKey: "5d776835961905001eb93cdf",
|
||||
role: "Chinatown Shopper",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/8/people/82fa468de3861338bfe4959523a8cb0a.jpg"
|
||||
},
|
||||
{
|
||||
id: 119494,
|
||||
filter: "actor=119494",
|
||||
tag: "Michael P. Moran",
|
||||
tagKey: "5d7768262e80df001ebdce0b",
|
||||
role: "Flea Market Chicken Seller",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/f/people/fd5f72c277bcd9935d3e29241e220714.jpg"
|
||||
},
|
||||
{
|
||||
id: 118024,
|
||||
filter: "actor=118024",
|
||||
tag: "Raynor Scheine",
|
||||
tagKey: "5d776827880197001ec90a05",
|
||||
role: "Flower Delivery Boy",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/5/people/58ba341047a2498f2eb90ffef11c29b4.jpg"
|
||||
},
|
||||
{
|
||||
id: 119495,
|
||||
filter: "actor=119495",
|
||||
tag: "Olek Krupa",
|
||||
tagKey: "5d7768265af944001f1f6658",
|
||||
role: "Bruce",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/d/people/db7a5a43bba485d18322846dc2f37bf4.jpg"
|
||||
},
|
||||
{
|
||||
id: 119496,
|
||||
filter: "actor=119496",
|
||||
tag: "John P. Connolly",
|
||||
tagKey: "5d776835961905001eb93ce0",
|
||||
role: "Dinner Guest"
|
||||
},
|
||||
{
|
||||
id: 119497,
|
||||
filter: "actor=119497",
|
||||
tag: "Cassandra Danz",
|
||||
tagKey: "5d776835961905001eb93ce1",
|
||||
role: "Dinner Guest"
|
||||
},
|
||||
{
|
||||
id: 119498,
|
||||
filter: "actor=119498",
|
||||
tag: "Beata Jachulski",
|
||||
tagKey: "5d776835961905001eb93ce2",
|
||||
role: "Dinner Guest"
|
||||
},
|
||||
{
|
||||
id: 119499,
|
||||
filter: "actor=119499",
|
||||
tag: "Peter Pagan",
|
||||
tagKey: "5d776835961905001eb93ce3",
|
||||
role: "Riding Crop Salesman"
|
||||
},
|
||||
{
|
||||
id: 119500,
|
||||
filter: "actor=119500",
|
||||
tag: "Terri Perri",
|
||||
tagKey: "5d776826a091de001f2e61f9",
|
||||
role: "Italian Singer"
|
||||
},
|
||||
{
|
||||
id: 119501,
|
||||
filter: "actor=119501",
|
||||
tag: "Charles Malota",
|
||||
tagKey: "5d776835961905001eb93ce4",
|
||||
role: "Coney Island Boy"
|
||||
},
|
||||
{
|
||||
id: 119502,
|
||||
filter: "actor=119502",
|
||||
tag: "Daniel E. Amrich",
|
||||
tagKey: "5d776835961905001eb93ce5",
|
||||
role: "Coney Island Boy"
|
||||
},
|
||||
{
|
||||
id: 119503,
|
||||
filter: "actor=119503",
|
||||
tag: "Salvatore Sciangula",
|
||||
tagKey: "5d776835961905001eb93ce6",
|
||||
role: "Coney Island Boy"
|
||||
},
|
||||
{
|
||||
id: 119504,
|
||||
filter: "actor=119504",
|
||||
tag: "Kim Michel",
|
||||
tagKey: "5d776835961905001eb93ce7",
|
||||
role: "Soap Opera Woman"
|
||||
},
|
||||
{
|
||||
id: 119505,
|
||||
filter: "actor=119505",
|
||||
tag: "Jeff Severson",
|
||||
tagKey: "5d776835961905001eb93ce8",
|
||||
role: "Soap Opera Man"
|
||||
},
|
||||
{
|
||||
id: 119506,
|
||||
filter: "actor=119506",
|
||||
tag: "Dan Lauria",
|
||||
tagKey: "5d77682cf59e580021897bee",
|
||||
role: "Janitor",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/d/people/d222064496a31fbcaa8992db0d2283dc.jpg"
|
||||
},
|
||||
{
|
||||
id: 119507,
|
||||
filter: "actor=119507",
|
||||
tag: "Corey Parker",
|
||||
tagKey: "5d776835961905001eb93ce9",
|
||||
role: "Janitor",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/3/people/3f539205130ec7b6729a7b4af0de2db9.jpg"
|
||||
},
|
||||
{
|
||||
id: 119508,
|
||||
filter: "actor=119508",
|
||||
tag: "Joe Maruzzo",
|
||||
tagKey: "5d776835961905001eb93cea",
|
||||
role: "Garbageman",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/people/5d776835961905001eb93cea.jpg"
|
||||
},
|
||||
{
|
||||
id: 119509,
|
||||
filter: "actor=119509",
|
||||
tag: "Tom Traino",
|
||||
tagKey: "5d776835961905001eb93ceb",
|
||||
role: "Garbageman"
|
||||
},
|
||||
{
|
||||
id: 119510,
|
||||
filter: "actor=119510",
|
||||
tag: "Corvova Choy Lee",
|
||||
tagKey: "5d776835961905001eb93cec",
|
||||
role: "Clothing Saleswoman"
|
||||
},
|
||||
{
|
||||
id: 119511,
|
||||
filter: "actor=119511",
|
||||
tag: "Ellen Barber",
|
||||
tagKey: "5d776835961905001eb93ced",
|
||||
role: "John's Secretary",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/8/people/8c94f4c0c043cdcbfb1ebdfdd5c3b7cc.jpg"
|
||||
},
|
||||
{
|
||||
id: 119512,
|
||||
filter: "actor=119512",
|
||||
tag: "Ethel Ayler",
|
||||
tagKey: "5d7768276f4521001ea99134",
|
||||
role: "Jewelry Saleswoman",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/6/people/6455789c1c3f3e7225a1274637a2d279.jpg"
|
||||
},
|
||||
{
|
||||
id: 119513,
|
||||
filter: "actor=119513",
|
||||
tag: "Elisabeth Senn",
|
||||
tagKey: "5d776835961905001eb93cee",
|
||||
role: "Perfume Lady"
|
||||
},
|
||||
{
|
||||
id: 119514,
|
||||
filter: "actor=119514",
|
||||
tag: "Gittan Goding",
|
||||
tagKey: "5d776835961905001eb93cef",
|
||||
role: "Dancer at Porno House"
|
||||
},
|
||||
{
|
||||
id: 119515,
|
||||
filter: "actor=119515",
|
||||
tag: "David M. Everard",
|
||||
tagKey: "5d776835961905001eb93cf0",
|
||||
role: "Bearded Man at Porno House"
|
||||
},
|
||||
{
|
||||
id: 119516,
|
||||
filter: "actor=119516",
|
||||
tag: "Luther Rucker",
|
||||
tagKey: "5d776835961905001eb93cf1",
|
||||
role: "Barker at Porno House"
|
||||
},
|
||||
{
|
||||
id: 119517,
|
||||
filter: "actor=119517",
|
||||
tag: "Merry Clayton",
|
||||
tagKey: "5d77682b999c64001ec2d6c9",
|
||||
role: "Background Vocal at Porno House",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/1/people/1a4a170d5cf2ba3eecacb9e54002e5c0.jpg"
|
||||
},
|
||||
{
|
||||
id: 119518,
|
||||
filter: "actor=119518",
|
||||
tag: "Kim Isaacson",
|
||||
tagKey: "5d776835961905001eb93cf2",
|
||||
role: "Gallery Guest"
|
||||
},
|
||||
{
|
||||
id: 255665,
|
||||
filter: "actor=255665",
|
||||
tag: "David Tabor",
|
||||
tagKey: "5d776835961905001eb93cf3",
|
||||
role: "Leon Berger"
|
||||
}
|
||||
],
|
||||
Producer: [
|
||||
{
|
||||
id: 203257,
|
||||
filter: "producer=203257",
|
||||
tag: "Alan M. Harris",
|
||||
tagKey: "5d77682f151a60001f24c92f",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/c/people/cb6864282bb169e153b82f642af74010.jpg"
|
||||
},
|
||||
{
|
||||
id: 119521,
|
||||
filter: "producer=119521",
|
||||
tag: "Sidney Kimmel",
|
||||
tagKey: "5d776831103a2d001f566d79",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/5/people/533a50f9436f9ba20ecd5b0d164c374c.jpg"
|
||||
},
|
||||
{
|
||||
id: 119522,
|
||||
filter: "producer=119522",
|
||||
tag: "Zalman King",
|
||||
tagKey: "5d77682ff54112001f5bcc2e",
|
||||
thumb:
|
||||
"https://metadata-static.plex.tv/5/people/57a351f9a4343dca762ee432544bf34e.jpg"
|
||||
},
|
||||
{
|
||||
id: 119523,
|
||||
filter: "producer=119523",
|
||||
tag: "Antony Rufus-Isaacs",
|
||||
tagKey: "5d776835961905001eb93cd6"
|
||||
}
|
||||
],
|
||||
Similar: [
|
||||
{ id: 16619, filter: "similar=16619", tag: "Wild Orchid" },
|
||||
{ id: 16521, filter: "similar=16521", tag: "Fatal Attraction" },
|
||||
{ id: 16522, filter: "similar=16522", tag: "Indecent Proposal" },
|
||||
{ id: 16485, filter: "similar=16485", tag: "Striptease" },
|
||||
{ id: 5014, filter: "similar=5014", tag: "Disclosure" },
|
||||
{ id: 16434, filter: "similar=16434", tag: "Tequila Sunrise" },
|
||||
{ id: 16614, filter: "similar=16614", tag: "No Way Out" },
|
||||
{
|
||||
id: 5641,
|
||||
filter: "similar=5641",
|
||||
tag: "The Jewel of the Nile"
|
||||
},
|
||||
{
|
||||
id: 16617,
|
||||
filter: "similar=16617",
|
||||
tag: "The Witches of Eastwick"
|
||||
},
|
||||
{
|
||||
id: 16616,
|
||||
filter: "similar=16616",
|
||||
tag: "The Bonfire of the Vanities"
|
||||
},
|
||||
{ id: 16436, filter: "similar=16436", tag: "The Getaway" },
|
||||
{ id: 16610, filter: "similar=16610", tag: "Cocktail" },
|
||||
{ id: 12196, filter: "similar=12196", tag: "Working Girl" },
|
||||
{ id: 16609, filter: "similar=16609", tag: "Blind Date" },
|
||||
{
|
||||
id: 46198,
|
||||
filter: "similar=46198",
|
||||
tag: "The War of the Roses"
|
||||
},
|
||||
{ id: 16484, filter: "similar=16484", tag: "Sliver" },
|
||||
{
|
||||
id: 46199,
|
||||
filter: "similar=46199",
|
||||
tag: "The Postman Always Rings Twice"
|
||||
},
|
||||
{ id: 5639, filter: "similar=5639", tag: "Romancing the Stone" },
|
||||
{ id: 16615, filter: "similar=16615", tag: "Sea of Love" },
|
||||
{ id: 16611, filter: "similar=16611", tag: "Frankie and Johnny" }
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
validateResponseSpec("/library/metadata/{ratingKey}", "get", 200, response)
|
||||
})
|
||||
it("should validate the 200 response when the response is from Episode", () => {
|
||||
const response = {
|
||||
MediaContainer: {
|
||||
size: 1,
|
||||
allowSync: true,
|
||||
identifier: "com.plexapp.plugins.library",
|
||||
librarySectionID: 6,
|
||||
librarySectionTitle: "Movies (Documentaries)",
|
||||
librarySectionUUID: "d6a09f3a-3027-4a2f-bb0d-14d6d2b93533",
|
||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
||||
mediaTagVersion: 1734362201,
|
||||
Metadata: [
|
||||
{
|
||||
ratingKey: "56939",
|
||||
key: "/library/metadata/56939",
|
||||
guid: "local://56939",
|
||||
type: "movie",
|
||||
title: "Boiling Point",
|
||||
librarySectionTitle: "Movies (Documentaries)",
|
||||
librarySectionID: 6,
|
||||
librarySectionKey: "/library/sections/6",
|
||||
summary: "",
|
||||
year: 1999,
|
||||
thumb: "/library/metadata/56939/thumb/1737312638",
|
||||
art: "/library/metadata/56939/art/1737312638",
|
||||
duration: 8109499,
|
||||
addedAt: 1622054437,
|
||||
updatedAt: 1737312638,
|
||||
Media: [
|
||||
{
|
||||
id: 60981,
|
||||
duration: 8109499,
|
||||
bitrate: 11710,
|
||||
width: 2880,
|
||||
height: 2160,
|
||||
aspectRatio: 1.33,
|
||||
audioChannels: 2,
|
||||
audioCodec: "aac",
|
||||
videoCodec: "vp9",
|
||||
videoResolution: "4k",
|
||||
container: "mkv",
|
||||
videoFrameRate: "PAL",
|
||||
audioProfile: "lc",
|
||||
videoProfile: "profile 0",
|
||||
hasVoiceActivity: false,
|
||||
Part: [
|
||||
{
|
||||
id: 92023,
|
||||
key: "/library/parts/92023/1602116112/file.mkv",
|
||||
duration: 8109499,
|
||||
file: "/Movies (Documentaries)/Boiling Point (1999)/Boiling Point (1999) WEBDL-2160p.mkv",
|
||||
size: 11874057616,
|
||||
audioProfile: "lc",
|
||||
container: "mkv",
|
||||
indexes: "sd",
|
||||
videoProfile: "profile 0",
|
||||
Stream: [
|
||||
{
|
||||
id: 304223,
|
||||
streamType: 1,
|
||||
default: true,
|
||||
codec: "vp9",
|
||||
index: 0,
|
||||
bitrate: 11582,
|
||||
language: "English",
|
||||
languageTag: "en",
|
||||
languageCode: "eng",
|
||||
bitDepth: 8,
|
||||
chromaSubsampling: "4:2:0",
|
||||
codedHeight: 2160,
|
||||
codedWidth: 2880,
|
||||
colorPrimaries: "bt709",
|
||||
colorRange: "tv",
|
||||
colorSpace: "bt709",
|
||||
colorTrc: "bt709",
|
||||
frameRate: 25.0,
|
||||
height: 2160,
|
||||
profile: "profile 0",
|
||||
refFrames: 1,
|
||||
width: 2880,
|
||||
displayTitle: "4K",
|
||||
extendedDisplayTitle: "4K (VP9)"
|
||||
},
|
||||
{
|
||||
id: 304224,
|
||||
streamType: 2,
|
||||
selected: true,
|
||||
default: true,
|
||||
codec: "aac",
|
||||
index: 1,
|
||||
channels: 2,
|
||||
bitrate: 128,
|
||||
language: "English",
|
||||
languageTag: "en",
|
||||
languageCode: "eng",
|
||||
audioChannelLayout: "stereo",
|
||||
profile: "lc",
|
||||
samplingRate: 44100,
|
||||
displayTitle: "English (AAC Stereo)",
|
||||
extendedDisplayTitle: "English (AAC Stereo)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
Image: [
|
||||
{
|
||||
alt: "Boiling Point",
|
||||
type: "coverPoster",
|
||||
url: "/library/metadata/56939/thumb/1737312638"
|
||||
},
|
||||
{
|
||||
alt: "Boiling Point",
|
||||
type: "background",
|
||||
url: "/library/metadata/56939/art/1737312638"
|
||||
}
|
||||
],
|
||||
UltraBlurColors: {
|
||||
topLeft: "421b15",
|
||||
topRight: "170405",
|
||||
bottomRight: "2a174e",
|
||||
bottomLeft: "6f5b24"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
validateResponseSpec("/library/metadata/{ratingKey}", "get", 200, response)
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user