From 6d062ea677ec404b7cf31aa296a133376b3e56b9 Mon Sep 17 00:00:00 2001 From: lukehagar Date: Wed, 4 Sep 2024 09:37:48 +0000 Subject: [PATCH] Updating PMS Spec --- .../plex-media-server-spec-dereferenced.yaml | 246 ++++++++++++++++-- 1 file changed, 229 insertions(+), 17 deletions(-) diff --git a/static/plex-media-server-spec-dereferenced.yaml b/static/plex-media-server-spec-dereferenced.yaml index da9af4f..97e45b6 100644 --- a/static/plex-media-server-spec-dereferenced.yaml +++ b/static/plex-media-server-spec-dereferenced.yaml @@ -15,7 +15,7 @@ servers: description: The full address of your Plex Server variables: protocol: - default: http + default: https enum: - http - https @@ -30,10 +30,10 @@ x-speakeasy-globals: The unique identifier for the client application This is used to track the client application and its usage (UUID, serial number, or other number unique per device) - in: header + in: query schema: type: string - example: Postman + example: gcgzw5rz2xovp84b4vha3a40 required: true security: - accessToken: [] @@ -42,7 +42,7 @@ components: accessToken: description: Plex Authentication Token type: apiKey - in: header + in: query name: X-Plex-Token paths: /: @@ -5536,10 +5536,10 @@ paths: The unique identifier for the client application This is used to track the client application and its usage (UUID, serial number, or other number unique per device) - in: header + in: query schema: type: string - example: Postman + example: gcgzw5rz2xovp84b4vha3a40 required: true - name: includeHttps in: query @@ -6039,19 +6039,17 @@ paths: The unique identifier for the client application This is used to track the client application and its usage (UUID, serial number, or other number unique per device) - in: header + in: query schema: type: string - example: Postman + example: gcgzw5rz2xovp84b4vha3a40 required: true - name: X-Plex-Product - description: | - Product name of the application shown in the list of devices - in: header + in: query + required: false schema: type: string - example: Postman - required: true + example: Plex Web responses: '200': description: Requests a new pin id used in the authentication flow @@ -6269,10 +6267,10 @@ paths: The unique identifier for the client application This is used to track the client application and its usage (UUID, serial number, or other number unique per device) - in: header + in: query schema: type: string - example: Postman + example: gcgzw5rz2xovp84b4vha3a40 required: true - name: pinID description: The PinID to retrieve an access token for @@ -7519,6 +7517,220 @@ paths: status: type: number example: 401 + /media/providers: + get: + tags: + - Server + summary: Get Media Providers + description: Retrieves media providers and their features from the Plex server. + operationId: get-media-providers + parameters: + - name: Accept + in: header + required: false + schema: + type: string + enum: + - application/json + - application/xml + example: application/json + - name: X-Plex-Token + in: query + description: Plex Authentication Token + schema: + type: string + example: CV5xoxjTpFKUzBTShsaf + required: true + responses: + '200': + description: Media providers and their features + content: + application/json: + schema: + type: object + properties: + MediaContainer: + type: object + properties: + size: + type: integer + allowCameraUpload: + type: boolean + allowChannelAccess: + type: boolean + allowSharing: + type: boolean + allowSync: + type: boolean + allowTuners: + type: boolean + backgroundProcessing: + type: boolean + certificate: + type: boolean + companionProxy: + type: boolean + countryCode: + type: string + diagnostics: + type: string + eventStream: + type: boolean + friendlyName: + type: string + livetv: + type: integer + machineIdentifier: + type: string + musicAnalysis: + type: integer + myPlex: + type: boolean + myPlexMappingState: + type: string + myPlexSigninState: + type: string + myPlexSubscription: + type: boolean + myPlexUsername: + type: string + offlineTranscode: + type: integer + ownerFeatures: + type: string + platform: + type: string + platformVersion: + type: string + pluginHost: + type: boolean + pushNotifications: + type: boolean + readOnlyLibraries: + type: boolean + streamingBrainABRVersion: + type: integer + streamingBrainVersion: + type: integer + sync: + type: boolean + transcoderActiveVideoSessions: + type: integer + transcoderAudio: + type: boolean + transcoderLyrics: + type: boolean + transcoderSubtitles: + type: boolean + transcoderVideo: + type: boolean + transcoderVideoBitrates: + type: string + transcoderVideoQualities: + type: string + transcoderVideoResolutions: + type: string + updatedAt: + type: integer + updater: + type: boolean + version: + type: string + voiceSearch: + type: boolean + MediaProvider: + type: array + items: + type: object + properties: + identifier: + type: string + title: + type: string + types: + type: string + protocols: + type: string + Feature: + type: array + items: + type: object + properties: + key: + type: string + type: + type: string + Directory: + type: array + items: + type: object + properties: + hubKey: + type: string + title: + type: string + agent: + type: string + language: + type: string + refreshing: + type: boolean + scanner: + type: string + uuid: + type: string + id: + type: string + key: + type: string + type: + type: string + subtype: + type: string + updatedAt: + type: integer + scannedAt: + type: integer + Pivot: + type: array + items: + type: object + properties: + id: + type: string + key: + type: string + type: + type: string + title: + type: string + context: + type: string + symbol: + type: string + '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 /search: get: tags: @@ -10053,10 +10265,10 @@ paths: The unique identifier for the client application This is used to track the client application and its usage (UUID, serial number, or other number unique per device) - in: header + in: query schema: type: string - example: Postman + example: gcgzw5rz2xovp84b4vha3a40 required: true requestBody: content: