corrections

This commit is contained in:
JasonLandbridge
2024-09-24 11:24:27 +02:00
parent d071743018
commit 43f599b6d8
10 changed files with 4698 additions and 859 deletions

View File

@@ -0,0 +1,19 @@
title: MediaContainer
type: object
required:
- size
properties:
size:
type: number
example: 50
offset:
type: integer
format: int32
totalSize:
type: integer
format: int32
identifier:
type: string
example: "com.plexapp.plugins.library"
allowSync:
type: boolean

129
src/models/Meta.yaml Normal file
View File

@@ -0,0 +1,129 @@
description: |
The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
type: object
properties:
Type:
type: array
items:
type: object
required:
- key
- type
- title
- active
properties:
key:
type: string
example: "/library/sections/2/all?type=2"
type:
type: string
example: "show"
title:
type: string
example: "TV Shows"
active:
type: boolean
example: false
Filter:
type: array
items:
type: object
required:
- filter
- filterType
- key
- title
- type
properties:
filter:
type: string
example: "genre"
filterType:
type: string
example: "string"
key:
type: string
example: "/library/sections/2/genre?type=2"
title:
type: string
example: "Genre"
type:
type: string
example: "filter"
Sort:
type: array
items:
type: object
required:
- key
- title
- defaultDirection
properties:
default:
type: string
example: "asc"
active:
type: boolean
example: false
activeDirection:
$ref: "../models/common/PlexSortDirection.yaml"
defaultDirection:
$ref: "../models/common/PlexSortDirection.yaml"
descKey:
type: string
example: "titleSort:desc"
firstCharacterKey:
type: string
example: "/library/sections/2/firstCharacter"
key:
type: string
example: "titleSort"
title:
type: string
example: "Title"
Field:
type: array
items:
type: object
required:
- key
- title
- type
properties:
key:
type: string
example: "show.title"
title:
type: string
example: "Show Title"
type:
type: string
example: "string"
subType:
type: string
example: "rating"
FieldType:
type: array
items:
type: object
required:
- type
- Operator
properties:
type:
type: string
example: "tag"
Operator:
type: array
items:
type: object
required:
- key
- title
properties:
key:
type: string
example: "="
title:
type: string
example: "is"

View File

@@ -0,0 +1,6 @@
name: includeMeta
in: query
description: |
Adds the Meta object to the response
schema:
$ref: "../models/common/PlexBoolean.yaml"

View File

@@ -0,0 +1,7 @@
name: sectionID
in: query
required: false
description: The library section ID for filtering content.
schema:
type: integer
example: 2

View File

@@ -0,0 +1,42 @@
get:
tags:
- Hubs
summary: Get Recently Added
description: |
This endpoint will return the recently added content.
operationId: get-recently-added
parameters:
- name: contentDirectoryID
in: query
required: true
schema:
type: integer
description: The content directory ID.
- name: pinnedContentDirectoryID
in: query
required: false
schema:
type: string
description: Comma-separated list of pinned content directory IDs.
- $ref: "../../../parameters/section-id.yaml"
- $ref: "../../../parameters/type.yaml"
- $ref: "../../../parameters/include-meta.yaml"
- $ref: "../../../parameters/container-start.yaml"
- $ref: "../../../parameters/container-size.yaml"
responses:
"200":
description: A successful response with recently added content.
content:
application/json:
schema:
type: object
properties:
MediaContainer:
allOf:
- $ref: "../../../models/MediaContainer.yaml"
- $ref: "../../../models/Meta.yaml"
"401":
description: Unauthorized, invalid Plex token.
"400":
description: Bad request, invalid parameters.

File diff suppressed because it is too large Load Diff

View File

@@ -117,9 +117,7 @@ get:
type: boolean type: boolean
example: true example: true
contentChangedAt: contentChangedAt:
type: integer $ref: "../../models/common/PlexDateTime.yaml"
format: int32
example: 3192854
hidden: hidden:
type: integer type: integer
format: int32 format: int32

View File

@@ -6,6 +6,23 @@ get:
This endpoint will return the recently added content. This endpoint will return the recently added content.
operationId: getRecentlyAdded operationId: getRecentlyAdded
parameters: parameters:
- name: contentDirectoryID
in: query
required: false
schema:
type: integer
example: 2
- name: pinnedContentDirectoryID
in: query
required: false
schema:
type: array
items:
type: integer
example: [3, 5, 7, 13, 12, 1, 6, 14, 2, 10, 16, 17]
- $ref: "../../parameters/section-id.yaml"
- $ref: "../../parameters/type.yaml"
- $ref: "../../parameters/include-meta.yaml"
- $ref: "../../parameters/container-start.yaml" - $ref: "../../parameters/container-start.yaml"
- $ref: "../../parameters/container-size.yaml" - $ref: "../../parameters/container-size.yaml"
responses: responses:
@@ -17,229 +34,231 @@ get:
type: object type: object
properties: properties:
MediaContainer: MediaContainer:
type: object allOf:
properties: - $ref: "../../models/Meta.yaml"
size: - type: object
type: number properties:
example: 50 size:
allowSync: type: number
type: boolean example: 50
identifier: allowSync:
type: string type: boolean
example: com.plexapp.plugins.library identifier:
mediaTagPrefix: type: string
type: string example: com.plexapp.plugins.library
example: /system/bundle/media/flags/ mediaTagPrefix:
mediaTagVersion: type: string
type: number example: /system/bundle/media/flags/
example: 1680021154 mediaTagVersion:
mixedParents: type: number
type: boolean example: 1680021154
Metadata: mixedParents:
type: array type: boolean
items: Metadata:
type: object type: array
properties: items:
allowSync: type: object
type: boolean properties:
librarySectionID: allowSync:
type: number type: boolean
example: 1 librarySectionID:
librarySectionTitle: type: number
type: string example: 1
example: Movies librarySectionTitle:
librarySectionUUID: type: string
type: string example: Movies
example: 322a231a-b7f7-49f5-920f-14c61199cd30 librarySectionUUID:
ratingKey: type: string
type: number example: 322a231a-b7f7-49f5-920f-14c61199cd30
example: 59398 ratingKey:
key: type: number
type: string example: 59398
example: /library/metadata/59398 key:
guid: type: string
type: string example: /library/metadata/59398
example: plex://movie/5e161a83bea6ac004126e148 guid:
studio: type: string
type: string example: plex://movie/5e161a83bea6ac004126e148
example: Marvel Studios studio:
type: type: string
type: string example: Marvel Studios
example: movie type:
title: type: string
type: string example: movie
example: "Ant-Man and the Wasp: Quantumania" title:
contentRating: type: string
type: string example: "Ant-Man and the Wasp: Quantumania"
example: PG-13 contentRating:
summary: type: string
type: string example: PG-13
example: Scott Lang and Hope Van Dyne along with Hank Pym and Janet Van Dyne explore the Quantum Realm where they interact with strange creatures and embark on an adventure that goes beyond the limits of what they thought was possible. summary:
rating: type: string
type: number example: Scott Lang and Hope Van Dyne along with Hank Pym and Janet Van Dyne explore the Quantum Realm where they interact with strange creatures and embark on an adventure that goes beyond the limits of what they thought was possible.
example: 4.7 rating:
audienceRating: type: number
type: number example: 4.7
example: 8.3 audienceRating:
year: type: number
type: number example: 8.3
example: 2023 year:
tagline: type: number
type: string example: 2023
example: Witness the beginning of a new dynasty. tagline:
thumb: type: string
type: string example: Witness the beginning of a new dynasty.
example: /library/metadata/59398/thumb/1681888010 thumb:
art: type: string
type: string example: /library/metadata/59398/thumb/1681888010
example: /library/metadata/59398/art/1681888010 art:
duration: type: string
type: number example: /library/metadata/59398/art/1681888010
example: 7474422 duration:
originallyAvailableAt: type: number
type: string example: 7474422
format: date-time originallyAvailableAt:
example: 2023-02-15 type: string
addedAt: format: date-time
type: number example: 2023-02-15
example: 1681803215 addedAt:
updatedAt: type: number
type: number example: 1681803215
example: 1681888010 updatedAt:
audienceRatingImage: type: number
type: string example: 1681888010
example: rottentomatoes://image.rating.upright audienceRatingImage:
chapterSource: type: string
type: string example: rottentomatoes://image.rating.upright
example: media chapterSource:
primaryExtraKey: type: string
type: string example: media
example: /library/metadata/59399 primaryExtraKey:
ratingImage: type: string
type: string example: /library/metadata/59399
example: rottentomatoes://image.rating.rotten ratingImage:
Media: type: string
type: array example: rottentomatoes://image.rating.rotten
items: Media:
type: object type: array
properties: items:
id: type: object
type: number properties:
example: 120345 id:
duration: type: number
type: number example: 120345
example: 7474422 duration:
bitrate: type: number
type: number example: 7474422
example: 3623 bitrate:
width: type: number
type: number example: 3623
example: 1920 width:
height: type: number
type: number example: 1920
example: 804 height:
aspectRatio: type: number
type: number example: 804
example: 2.35 aspectRatio:
audioChannels: type: number
type: number example: 2.35
example: 6 audioChannels:
audioCodec: type: number
type: string example: 6
example: ac3 audioCodec:
videoCodec: type: string
type: string example: ac3
example: h264 videoCodec:
videoResolution: type: string
type: number example: h264
example: 1080 videoResolution:
container: type: number
type: string example: 1080
example: mp4 container:
videoFrameRate: type: string
type: string example: mp4
example: 24p videoFrameRate:
optimizedForStreaming: type: string
type: number example: 24p
example: 0 optimizedForStreaming:
has64bitOffsets: type: number
type: boolean example: 0
videoProfile: has64bitOffsets:
type: string type: boolean
example: high videoProfile:
Part: type: string
type: array example: high
items: Part:
type: object type: array
properties: items:
id: type: object
type: number properties:
example: 120353 id:
key: type: number
type: string example: 120353
example: /library/parts/120353/1681803203/file.mp4 key:
duration: type: string
type: number example: /library/parts/120353/1681803203/file.mp4
example: 7474422 duration:
file: type: number
type: string example: 7474422
example: /movies/Ant-Man and the Wasp Quantumania (2023)/Ant-Man.and.the.Wasp.Quantumania.2023.1080p.mp4 file:
size: type: string
type: number example: /movies/Ant-Man and the Wasp Quantumania (2023)/Ant-Man.and.the.Wasp.Quantumania.2023.1080p.mp4
example: 3395307162 size:
container: type: number
type: string example: 3395307162
example: mp4 container:
has64bitOffsets: type: string
type: boolean example: mp4
hasThumbnail: has64bitOffsets:
type: number type: boolean
example: 1 hasThumbnail:
optimizedForStreaming: type: number
type: boolean example: 1
videoProfile: optimizedForStreaming:
type: string type: boolean
example: high videoProfile:
Genre: type: string
type: array example: high
items: Genre:
type: object type: array
properties: items:
tag: type: object
type: string properties:
example: Comedy tag:
Director: type: string
type: array example: Comedy
items: Director:
type: object type: array
properties: items:
tag: type: object
type: string properties:
example: Peyton Reed tag:
Writer: type: string
type: array example: Peyton Reed
items: Writer:
type: object type: array
properties: items:
tag: type: object
type: string properties:
example: Jeff Loveness tag:
Country: type: string
type: array example: Jeff Loveness
items: Country:
type: object type: array
properties: items:
tag: type: object
type: string properties:
example: United States of America tag:
Role: type: string
type: array example: United States of America
items: Role:
type: object type: array
properties: items:
tag: type: object
type: string properties:
example: Paul Rudd tag:
type: string
example: Paul Rudd
"400": "400":
$ref: "../../responses/400.yaml" $ref: "../../responses/400.yaml"
"401": "401":

View File

@@ -108,6 +108,8 @@ paths:
# Folder: pms/paths/hubs # Folder: pms/paths/hubs
/hubs: /hubs:
$ref: "./paths/hubs/hubs.yaml" $ref: "./paths/hubs/hubs.yaml"
/hubs/home/recentlyAdded:
$ref: "./paths/hubs/home/get-recently-added.yaml"
/hubs/search: /hubs/search:
$ref: "./paths/hubs/search.yaml" $ref: "./paths/hubs/search.yaml"
/hubs/search/voice: /hubs/search/voice:

File diff suppressed because it is too large Load Diff