diff --git a/static/plex-media-server-spec-dereferenced.yaml b/static/plex-media-server-spec-dereferenced.yaml index 64eb620..88571f1 100644 --- a/static/plex-media-server-spec-dereferenced.yaml +++ b/static/plex-media-server-spec-dereferenced.yaml @@ -458,6 +458,114 @@ paths: status: type: number example: 401 + '/:/timeline': + get: + tags: + - Video + summary: Get the timeline for a media item + description: Get the timeline for a media item + operationId: getTimeline + parameters: + - name: ratingKey + description: The rating key of the media item + required: true + in: query + schema: + type: number + example: 23409 + - name: key + description: The key of the media item to get the timeline for + required: true + in: query + schema: + type: string + example: /library/metadata/23409 + - name: state + description: The state of the media item + required: true + in: query + schema: + type: string + enum: + - playing + - paused + - stopped + example: playing + - name: hasMDE + description: Whether the media item has MDE + required: true + in: query + schema: + type: number + example: 1 + - name: time + description: The time of the media item + required: true + in: query + schema: + type: number + example: 2000 + - name: duration + description: The duration of the media item + required: true + in: query + schema: + type: number + example: 10000 + - name: context + description: The context of the media item + required: true + in: query + schema: + type: string + example: 'home:hub.continueWatching' + - name: playQueueItemID + description: The play queue item ID of the media item + required: true + in: query + schema: + type: number + example: 1 + - name: playBackTime + description: The playback time of the media item + required: true + in: query + schema: + type: number + example: 2000 + - name: row + description: The row of the media item + required: true + in: query + schema: + type: number + example: 1 + responses: + '200': + description: The timeline for the media item + '400': + description: 'Bad Request - A parameter was not specified, or was specified incorrectly.' + '401': + description: Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + content: + application/json: + schema: + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: number + example: 1001 + message: + type: string + example: User could not be authenticated + status: + type: number + example: 401 /activities: get: tags: @@ -7771,6 +7879,168 @@ paths: status: type: number example: 401 + /statistics/media: + get: + tags: + - Statistics + summary: Get Media Statistics + description: This will return the media statistics for the server + operationId: getStatistics + parameters: + - name: Timespan + description: | + The timespan to retrieve statistics for + the exact meaning of this parameter is not known + in: query + required: false + example: 4 + responses: + '200': + description: Media Statistics + content: + application/json: + schema: + type: object + properties: + MediaContainer: + type: object + properties: + size: + type: integer + format: int32 + example: 5497 + Device: + type: array + items: + type: object + properties: + id: + type: integer + format: int32 + example: 208 + name: + type: string + example: Roku Express + platform: + type: string + example: Roku + clientIdentifier: + type: string + example: 793095d235660625108ef785cc7646e9 + createdAt: + type: integer + format: int32 + example: 1706470556 + example: + - id: 208 + name: Roku Express + platform: Roku + clientIdentifier: 793095d235660625108ef785cc7646e9 + createdAt: 1706470556 + Account: + type: array + items: + type: object + properties: + id: + type: integer + format: int32 + example: 238960586 + key: + type: string + example: /accounts/238960586 + name: + type: string + example: Diane + defaultAudioLanguage: + type: string + example: en + autoSelectAudio: + type: boolean + example: true + defaultSubtitleLanguage: + type: string + example: en + subtitleMode: + type: integer + format: int32 + example: 1 + thumb: + type: string + example: 'https://plex.tv/users/50d83634246da1de/avatar?c=1707110967' + example: + - id: 238960586 + key: /accounts/238960586 + name: Diane + defaultAudioLanguage: en + autoSelectAudio: true + defaultSubtitleLanguage: en + subtitleMode: 1 + thumb: 'https://plex.tv/users/50d83634246da1de/avatar?c=1707110967' + StatisticsMedia: + type: array + items: + type: object + properties: + accountID: + type: integer + format: int32 + example: 1 + deviceID: + type: integer + format: int32 + example: 13 + timespan: + type: integer + format: int32 + example: 4 + at: + type: integer + format: int32 + example: 1707141600 + metadataType: + type: integer + format: int32 + example: 4 + count: + type: integer + format: int32 + example: 1 + duration: + type: integer + format: int32 + example: 1555 + example: + - accountID: 1 + deviceID: 13 + timespan: 4 + at: 1707141600 + metadataType: 4 + count: 1 + duration: 1555 + '400': + description: 'Bad Request - A parameter was not specified, or was specified incorrectly.' + '401': + description: Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + content: + application/json: + schema: + type: object + properties: + errors: + type: array + items: + type: object + properties: + code: + type: number + example: 1001 + message: + type: string + example: User could not be authenticated + status: + type: number + example: 401 /status/sessions: get: tags: @@ -9019,114 +9289,6 @@ paths: status: type: number example: 401 - '/:/timeline': - get: - tags: - - Video - summary: Get the timeline for a media item - description: Get the timeline for a media item - operationId: getTimeline - parameters: - - name: ratingKey - description: The rating key of the media item - required: true - in: query - schema: - type: number - example: 23409 - - name: key - description: The key of the media item to get the timeline for - required: true - in: query - schema: - type: string - example: /library/metadata/23409 - - name: state - description: The state of the media item - required: true - in: query - schema: - type: string - enum: - - playing - - paused - - stopped - example: playing - - name: hasMDE - description: Whether the media item has MDE - required: true - in: query - schema: - type: number - example: 1 - - name: time - description: The time of the media item - required: true - in: query - schema: - type: number - example: 2000 - - name: duration - description: The duration of the media item - required: true - in: query - schema: - type: number - example: 10000 - - name: context - description: The context of the media item - required: true - in: query - schema: - type: string - example: 'home:hub.continueWatching' - - name: playQueueItemID - description: The play queue item ID of the media item - required: true - in: query - schema: - type: number - example: 1 - - name: playBackTime - description: The playback time of the media item - required: true - in: query - schema: - type: number - example: 2000 - - name: row - description: The row of the media item - required: true - in: query - schema: - type: number - example: 1 - responses: - '200': - description: The timeline for the media item - '400': - description: 'Bad Request - A parameter was not specified, or was specified incorrectly.' - '401': - description: Unauthorized - Returned if the X-Plex-Token is missing from the header or query. - content: - application/json: - schema: - type: object - properties: - errors: - type: array - items: - type: object - properties: - code: - type: number - example: 1001 - message: - type: string - example: User could not be authenticated - status: - type: number - example: 401 tags: - name: Activities description: |