Compare commits

...

7 Commits

Author SHA1 Message Date
speakeasybot
5d57cd7c34 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.513.2 2025-03-07 00:11:26 +00:00
speakeasybot
1a8e227874 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.487.1 2025-02-10 00:11:39 +00:00
speakeasybot
8360d057ab ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.487.0 2025-02-07 00:11:14 +00:00
speakeasybot
18b64727c3 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.484.1 2025-02-06 00:11:16 +00:00
speakeasybot
3152372037 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.484.1 2025-02-05 00:11:28 +00:00
speakeasybot
13cd8a7fe5 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.476.1 2025-01-27 00:11:19 +00:00
speakeasybot
cdcdc0ca8e ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.474.0 2025-01-24 00:11:07 +00:00
414 changed files with 24840 additions and 8955 deletions

View File

@@ -1,28 +0,0 @@
/* eslint-env node */
module.exports = {
root: true,
extends: [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:import/recommended",
"plugin:import/typescript",
],
parser: "@typescript-eslint/parser",
plugins: ["@typescript-eslint"],
settings: {
"import/resolver": {
typescript: true,
node: true,
},
},
rules: {
// Handled by typescript compiler
"@typescript-eslint/no-unused-vars": "off",
"@typescript-eslint/ban-types": "off",
"@typescript-eslint/no-namespace": "off",
"@typescript-eslint/no-explicit-any": "off",
"import/no-named-as-default-member": "off",
"import/no-default-export": "error",
},
};

4
.gitignore vendored
View File

@@ -1,3 +1,7 @@
/mcp-server
/bin
/.eslintcache
/.speakeasy/reports
/react-query /react-query
/sdk/models/errors /sdk/models/errors
/sdk/types /sdk/types

View File

@@ -4,9 +4,11 @@
!/REACT_QUERY.md !/REACT_QUERY.md
!/**/*.ts !/**/*.ts
!/**/*.js !/**/*.js
!/**/*.mjs
!/**/*.json
!/**/*.map !/**/*.map
/.eslintrc.js /eslint.config.mjs
/cjs /cjs
/.tshy /.tshy
/.tshy-* /.tshy-*

File diff suppressed because one or more lines are too long

View File

@@ -7,13 +7,15 @@ generation:
useClassNamesForArrayFields: true useClassNamesForArrayFields: true
fixes: fixes:
nameResolutionDec2023: true nameResolutionDec2023: true
nameResolutionFeb2025: false
parameterOrderingFeb2024: true parameterOrderingFeb2024: true
requestResponseComponentNamesFeb2024: true requestResponseComponentNamesFeb2024: true
securityFeb2025: false
auth: auth:
oAuth2ClientCredentialsEnabled: true oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false oAuth2PasswordEnabled: false
typescript: typescript:
version: 0.32.1 version: 0.35.0
additionalDependencies: additionalDependencies:
dependencies: {} dependencies: {}
devDependencies: {} devDependencies: {}
@@ -22,6 +24,8 @@ typescript:
author: LukeHagar author: LukeHagar
clientServerStatusCodesAsErrors: true clientServerStatusCodesAsErrors: true
defaultErrorName: SDKError defaultErrorName: SDKError
enableCustomCodeRegions: false
enableMCPServer: true
enableReactQuery: false enableReactQuery: false
enumFormat: enum enumFormat: enum
flattenGlobalSecurity: true flattenGlobalSecurity: true
@@ -35,6 +39,7 @@ typescript:
shared: sdk/models/shared shared: sdk/models/shared
webhooks: sdk/models/webhooks webhooks: sdk/models/webhooks
inputModelSuffix: input inputModelSuffix: input
jsonpath: legacy
maxMethodParams: 4 maxMethodParams: 4
methodArguments: require-security-and-request methodArguments: require-security-and-request
moduleFormat: commonjs moduleFormat: commonjs

View File

@@ -1,4 +1,4 @@
speakeasyVersion: 1.459.2 speakeasyVersion: 1.513.2
sources: sources:
my-source: my-source:
sourceNamespace: my-source sourceNamespace: my-source
@@ -9,20 +9,20 @@ sources:
- main - main
plexapi: plexapi:
sourceNamespace: plexapi sourceNamespace: plexapi
sourceRevisionDigest: sha256:28e2213b78ff9c789846a4a0b7ab9fb219079a1699d44b22d28474efc4f48eac sourceRevisionDigest: sha256:bf7001af017ce5072c503bfbaf60793f94549163b517489dc53e4f7b685659c0
sourceBlobDigest: sha256:fa76c39de0ff801844dd56a76c26ab6ca88695fc9b42bb9ff9a8aab5b2b21277 sourceBlobDigest: sha256:ed2b29043c84f32d2efa92a126083fd9a81644a7ce9c6ac86d9aeb3493cbd6f8
tags: tags:
- latest - latest
- speakeasy-sdk-regen-1734826254 - speakeasy-sdk-regen-1741306213
- 0.0.3 - 0.0.3
targets: targets:
plexjs: plexjs:
source: plexapi source: plexapi
sourceNamespace: plexapi sourceNamespace: plexapi
sourceRevisionDigest: sha256:28e2213b78ff9c789846a4a0b7ab9fb219079a1699d44b22d28474efc4f48eac sourceRevisionDigest: sha256:bf7001af017ce5072c503bfbaf60793f94549163b517489dc53e4f7b685659c0
sourceBlobDigest: sha256:fa76c39de0ff801844dd56a76c26ab6ca88695fc9b42bb9ff9a8aab5b2b21277 sourceBlobDigest: sha256:ed2b29043c84f32d2efa92a126083fd9a81644a7ce9c6ac86d9aeb3493cbd6f8
codeSamplesNamespace: code-samples-typescript-plexjs codeSamplesNamespace: code-samples-typescript-plexjs
codeSamplesRevisionDigest: sha256:7d4fa9b8b7f828000504117f5d5075b647941dd02857cd0c4dded2aafa917a83 codeSamplesRevisionDigest: sha256:e9663ecbdaaaaaf3f7ff17e00365dc176eda813f06e83bae125af65c9ab34453
workflow: workflow:
workflowVersion: 1.0.0 workflowVersion: 1.0.0
speakeasyVersion: latest speakeasyVersion: latest

View File

@@ -159,10 +159,14 @@ run();
* [getLibraryDetails](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details * [getLibraryDetails](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details
* [deleteLibrary](docs/sdks/library/README.md#deletelibrary) - Delete Library Section * [deleteLibrary](docs/sdks/library/README.md#deletelibrary) - Delete Library Section
* [getLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items * [getLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
* [getAllMediaLibrary](docs/sdks/library/README.md#getallmedialibrary) - Get all media of library
* [getRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library * [getRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
* [getSearchLibrary](docs/sdks/library/README.md#getsearchlibrary) - Search Library * [getSearchLibrary](docs/sdks/library/README.md#getsearchlibrary) - Search Library
* [getGenresLibrary](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
* [getCountriesLibrary](docs/sdks/library/README.md#getcountrieslibrary) - Get Countries of library media
* [getActorsLibrary](docs/sdks/library/README.md#getactorslibrary) - Get Actors of library media
* [getSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries * [getSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
* [getMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey) - Get Metadata by RatingKey * [getMediaMetaData](docs/sdks/library/README.md#getmediametadata) - Get Media Metadata
* [getMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children * [getMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
* [getTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content * [getTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
* [getOnDeck](docs/sdks/library/README.md#getondeck) - Get On Deck * [getOnDeck](docs/sdks/library/README.md#getondeck) - Get On Deck
@@ -241,6 +245,10 @@ run();
* [checkForUpdates](docs/sdks/updater/README.md#checkforupdates) - Checking for updates * [checkForUpdates](docs/sdks/updater/README.md#checkforupdates) - Checking for updates
* [applyUpdates](docs/sdks/updater/README.md#applyupdates) - Apply Updates * [applyUpdates](docs/sdks/updater/README.md#applyupdates) - Apply Updates
### [users](docs/sdks/users/README.md)
* [getUsers](docs/sdks/users/README.md#getusers) - Get list of all connected users
### [video](docs/sdks/video/README.md) ### [video](docs/sdks/video/README.md)
* [getTimeline](docs/sdks/video/README.md#gettimeline) - Get the timeline for a media item * [getTimeline](docs/sdks/video/README.md#gettimeline) - Get the timeline for a media item
@@ -336,13 +344,39 @@ In some rare cases, the SDK can fail to get a response from the server or even m
### Server Variables ### Server Variables
The default server `{protocol}://{ip}:{port}` contains variables and is set to `https://10.10.10.47:32400` by default. To override default values, the following parameters are available when initializing the SDK client instance: The default server `{protocol}://{ip}:{port}` contains variables and is set to `https://10.10.10.47:32400` by default. To override default values, the following parameters are available when initializing the SDK client instance:
* `protocol: models.ServerProtocol`
* `ip: string` | Variable | Parameter | Supported Values | Default | Description |
* `port: string` | ---------- | --------------------------------- | -------------------------- | --------------- | ---------------------------------------------- |
| `protocol` | `protocol: models.ServerProtocol` | - `"http"`<br/>- `"https"` | `"https"` | The protocol to use for the server connection |
| `ip` | `ip: string` | string | `"10.10.10.47"` | The IP address or hostname of your Plex Server |
| `port` | `port: string` | string | `"32400"` | The port of your Plex Server |
#### Example
```typescript
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
protocol: "https",
ip: "e0c3:bcc0:6bac:dccc:c4ec:34b1:ca98:4cb9",
port: "40311",
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.server.getServerCapabilities();
// Handle the result
console.log(result);
}
run();
```
### Override Server URL Per-Client ### Override Server URL Per-Client
The default server can also be overridden globally by passing a URL to the `serverURL: string` optional parameter when initializing the SDK client instance. For example: The default server can be overridden globally by passing a URL to the `serverURL: string` optional parameter when initializing the SDK client instance. For example:
```typescript ```typescript
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
@@ -502,11 +536,15 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
- [`hubsGetLibraryHubs`](docs/sdks/hubs/README.md#getlibraryhubs) - Get library specific hubs - [`hubsGetLibraryHubs`](docs/sdks/hubs/README.md#getlibraryhubs) - Get library specific hubs
- [`hubsGetRecentlyAdded`](docs/sdks/hubs/README.md#getrecentlyadded) - Get Recently Added - [`hubsGetRecentlyAdded`](docs/sdks/hubs/README.md#getrecentlyadded) - Get Recently Added
- [`libraryDeleteLibrary`](docs/sdks/library/README.md#deletelibrary) - Delete Library Section - [`libraryDeleteLibrary`](docs/sdks/library/README.md#deletelibrary) - Delete Library Section
- [`libraryGetActorsLibrary`](docs/sdks/library/README.md#getactorslibrary) - Get Actors of library media
- [`libraryGetAllLibraries`](docs/sdks/library/README.md#getalllibraries) - Get All Libraries - [`libraryGetAllLibraries`](docs/sdks/library/README.md#getalllibraries) - Get All Libraries
- [`libraryGetAllMediaLibrary`](docs/sdks/library/README.md#getallmedialibrary) - Get all media of library
- [`libraryGetCountriesLibrary`](docs/sdks/library/README.md#getcountrieslibrary) - Get Countries of library media
- [`libraryGetFileHash`](docs/sdks/library/README.md#getfilehash) - Get Hash Value - [`libraryGetFileHash`](docs/sdks/library/README.md#getfilehash) - Get Hash Value
- [`libraryGetGenresLibrary`](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
- [`libraryGetLibraryDetails`](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details - [`libraryGetLibraryDetails`](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details
- [`libraryGetLibraryItems`](docs/sdks/library/README.md#getlibraryitems) - Get Library Items - [`libraryGetLibraryItems`](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
- [`libraryGetMetaDataByRatingKey`](docs/sdks/library/README.md#getmetadatabyratingkey) - Get Metadata by RatingKey - [`libraryGetMediaMetaData`](docs/sdks/library/README.md#getmediametadata) - Get Media Metadata
- [`libraryGetMetadataChildren`](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children - [`libraryGetMetadataChildren`](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
- [`libraryGetOnDeck`](docs/sdks/library/README.md#getondeck) - Get On Deck - [`libraryGetOnDeck`](docs/sdks/library/README.md#getondeck) - Get On Deck
- [`libraryGetRecentlyAddedLibrary`](docs/sdks/library/README.md#getrecentlyaddedlibrary) - Get Recently Added - [`libraryGetRecentlyAddedLibrary`](docs/sdks/library/README.md#getrecentlyaddedlibrary) - Get Recently Added
@@ -560,6 +598,7 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
- [`updaterApplyUpdates`](docs/sdks/updater/README.md#applyupdates) - Apply Updates - [`updaterApplyUpdates`](docs/sdks/updater/README.md#applyupdates) - Apply Updates
- [`updaterCheckForUpdates`](docs/sdks/updater/README.md#checkforupdates) - Checking for updates - [`updaterCheckForUpdates`](docs/sdks/updater/README.md#checkforupdates) - Checking for updates
- [`updaterGetUpdateStatus`](docs/sdks/updater/README.md#getupdatestatus) - Querying status of updates - [`updaterGetUpdateStatus`](docs/sdks/updater/README.md#getupdatestatus) - Querying status of updates
- [`usersGetUsers`](docs/sdks/users/README.md#getusers) - Get list of all connected users
- [`videoGetTimeline`](docs/sdks/video/README.md#gettimeline) - Get the timeline for a media item - [`videoGetTimeline`](docs/sdks/video/README.md#gettimeline) - Get the timeline for a media item
- [`videoStartUniversalTranscode`](docs/sdks/video/README.md#startuniversaltranscode) - Start Universal Transcode - [`videoStartUniversalTranscode`](docs/sdks/video/README.md#startuniversaltranscode) - Start Universal Transcode
- [`watchlistGetWatchList`](docs/sdks/watchlist/README.md#getwatchlist) - Get User Watchlist - [`watchlistGetWatchList`](docs/sdks/watchlist/README.md#getwatchlist) - Get User Watchlist

View File

@@ -1168,4 +1168,74 @@ Based on:
### Generated ### Generated
- [typescript v0.32.1] . - [typescript v0.32.1] .
### Releases ### Releases
- [NPM v0.32.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.32.1 - . - [NPM v0.32.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.32.1 - .
## 2025-01-24 00:09:35
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.474.0 (2.495.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.32.2] .
### Releases
- [NPM v0.32.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.32.2 - .
## 2025-01-27 00:09:48
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.476.1 (2.495.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.32.3] .
### Releases
- [NPM v0.32.3] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.32.3 - .
## 2025-02-05 00:09:58
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.484.1 (2.503.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.32.4] .
### Releases
- [NPM v0.32.4] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.32.4 - .
## 2025-02-06 00:09:46
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.484.1 (2.503.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.32.5] .
### Releases
- [NPM v0.32.5] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.32.5 - .
## 2025-02-07 00:09:41
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.487.0 (2.506.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.33.0] .
### Releases
- [NPM v0.33.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.33.0 - .
## 2025-02-10 00:10:04
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.487.1 (2.506.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.34.0] .
### Releases
- [NPM v0.34.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.34.0 - .
## 2025-03-07 00:09:55
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.513.2 (2.545.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.35.0] .
### Releases
- [NPM v0.35.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.0 - .

View File

@@ -20,3 +20,29 @@ Runtime environments that are explicitly supported are:
- Note that Deno does not currently have native support for streaming file uploads backed by the filesystem ([issue link][deno-file-streaming]) - Note that Deno does not currently have native support for streaming file uploads backed by the filesystem ([issue link][deno-file-streaming])
[deno-file-streaming]: https://github.com/denoland/deno/issues/11018 [deno-file-streaming]: https://github.com/denoland/deno/issues/11018
## Recommended TypeScript compiler options
The following `tsconfig.json` options are recommended for projects using this
SDK in order to get static type support for features like async iterables,
streams and `fetch`-related APIs ([`for await...of`][for-await-of],
[`AbortSignal`][abort-signal], [`Request`][request], [`Response`][response] and
so on):
[for-await-of]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for-await...of
[abort-signal]: https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal
[request]: https://developer.mozilla.org/en-US/docs/Web/API/Request
[response]: https://developer.mozilla.org/en-US/docs/Web/API/Response
```jsonc
{
"compilerOptions": {
"target": "es2020", // or higher
"lib": ["es2020", "dom", "dom.iterable"],
}
}
```
While `target` can be set to older ECMAScript versions, it may result in extra,
unnecessary compatibility code being generated if you are not targeting old
runtimes.

View File

@@ -419,10 +419,10 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: added label: get-recently-added
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { IncludeMeta, Type } from "@lukehagar/plexjs/sdk/models/operations"; import { Type } from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({ const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>", accessToken: "<YOUR_API_KEY_HERE>",
@@ -433,9 +433,6 @@ actions:
contentDirectoryID: 470161, contentDirectoryID: 470161,
sectionID: 2, sectionID: 2,
type: Type.TvShow, type: Type.TvShow,
includeMeta: IncludeMeta.Enable,
xPlexContainerStart: 0,
xPlexContainerSize: 50,
}); });
// Handle the result // Handle the result
@@ -456,7 +453,7 @@ actions:
}); });
async function run() { async function run() {
const result = await plexAPI.search.performSearch("dylan", 5); const result = await plexAPI.search.performSearch("dylan");
// Handle the result // Handle the result
console.log(result); console.log(result);
@@ -476,7 +473,7 @@ actions:
}); });
async function run() { async function run() {
const result = await plexAPI.search.performVoiceSearch("dead+poop", 5); const result = await plexAPI.search.performVoiceSearch("dead+poop");
// Handle the result // Handle the result
console.log(result); console.log(result);
@@ -507,7 +504,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: identity label: get-server-identity
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
@@ -566,7 +563,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: key label: get-media-meta-data
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
@@ -575,7 +572,22 @@ actions:
}); });
async function run() { async function run() {
const result = await plexAPI.library.getMetaDataByRatingKey(9518); const result = await plexAPI.library.getMediaMetaData({
ratingKey: 9518,
includeConcerts: true,
includeExtras: true,
includeOnDeck: true,
includePopularLeaves: true,
includePreferences: true,
includeReviews: true,
includeChapters: true,
includeStations: true,
includeExternalMedia: true,
asyncAugmentMetadata: true,
asyncCheckFiles: true,
asyncRefreshAnalysis: true,
asyncRefreshLocalMediaAgent: true,
});
// Handle the result // Handle the result
console.log(result); console.log(result);
@@ -586,7 +598,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: image label: get-banner-image
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
@@ -622,7 +634,7 @@ actions:
}); });
async function run() { async function run() {
const result = await plexAPI.library.getMetadataChildren(1539.15, "Stream"); const result = await plexAPI.library.getMetadataChildren(1539.14, "Stream");
// Handle the result // Handle the result
console.log(result); console.log(result);
@@ -633,7 +645,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: image label: get-thumb-image
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
@@ -680,10 +692,10 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: library label: get-recently-added-library
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { QueryParamIncludeMeta, QueryParamType } from "@lukehagar/plexjs/sdk/models/operations"; import { QueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({ const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>", accessToken: "<YOUR_API_KEY_HERE>",
@@ -708,9 +720,6 @@ actions:
], ],
sectionID: 2, sectionID: 2,
type: QueryParamType.TvShow, type: QueryParamType.TvShow,
includeMeta: QueryParamIncludeMeta.Enable,
xPlexContainerStart: 0,
xPlexContainerSize: 50,
}); });
// Handle the result // Handle the result
@@ -722,10 +731,10 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: libraries label: get-search-all-libraries
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { QueryParamIncludeCollections, QueryParamIncludeExternalMedia, SearchTypes } from "@lukehagar/plexjs/sdk/models/operations"; import { SearchTypes } from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({ const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>", accessToken: "<YOUR_API_KEY_HERE>",
@@ -738,8 +747,6 @@ actions:
searchTypes: [ searchTypes: [
SearchTypes.People, SearchTypes.People,
], ],
includeCollections: QueryParamIncludeCollections.Enable,
includeExternalMedia: QueryParamIncludeExternalMedia.Enable,
}); });
// Handle the result // Handle the result
@@ -751,7 +758,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: libraries label: get-all-libraries
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
@@ -771,7 +778,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: list label: get-watch-list
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { Filter } from "@lukehagar/plexjs/sdk/models/operations"; import { Filter } from "@lukehagar/plexjs/sdk/models/operations";
@@ -783,8 +790,6 @@ actions:
async function run() { async function run() {
const result = await plexAPI.watchlist.getWatchList({ const result = await plexAPI.watchlist.getWatchList({
filter: Filter.Available, filter: Filter.Available,
xPlexContainerStart: 0,
xPlexContainerSize: 50,
xPlexToken: "CV5xoxjTpFKUzBTShsaf", xPlexToken: "CV5xoxjTpFKUzBTShsaf",
}); });
@@ -817,7 +822,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: details label: get-library-details
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
@@ -832,12 +837,99 @@ actions:
console.log(result); console.log(result);
} }
run();
- target: $["paths"]["/library/sections/{sectionKey}/actor"]["get"]
update:
x-codeSamples:
- lang: typescript
label: get-actors-library
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { GetActorsLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.library.getActorsLibrary(9518, GetActorsLibraryQueryParamType.TvShow);
// Handle the result
console.log(result);
}
run();
- target: $["paths"]["/library/sections/{sectionKey}/all"]["get"]
update:
x-codeSamples:
- lang: typescript
label: get-all-media-library
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { GetAllMediaLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.library.getAllMediaLibrary({
sectionKey: 9518,
type: GetAllMediaLibraryQueryParamType.TvShow,
});
// Handle the result
console.log(result);
}
run();
- target: $["paths"]["/library/sections/{sectionKey}/country"]["get"]
update:
x-codeSamples:
- lang: typescript
label: get-countries-library
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { GetCountriesLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.library.getCountriesLibrary(9518, GetCountriesLibraryQueryParamType.TvShow);
// Handle the result
console.log(result);
}
run();
- target: $["paths"]["/library/sections/{sectionKey}/genre"]["get"]
update:
x-codeSamples:
- lang: typescript
label: get-genres-library
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { GetGenresLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.library.getGenresLibrary(9518, GetGenresLibraryQueryParamType.TvShow);
// Handle the result
console.log(result);
}
run(); run();
- target: $["paths"]["/library/sections/{sectionKey}/refresh"]["get"] - target: $["paths"]["/library/sections/{sectionKey}/refresh"]["get"]
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: metadata label: get-refresh-library-metadata
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { Force } from "@lukehagar/plexjs/sdk/models/operations"; import { Force } from "@lukehagar/plexjs/sdk/models/operations";
@@ -858,7 +950,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: library label: get-search-library
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { GetSearchLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations"; import { GetSearchLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
@@ -879,15 +971,10 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: items label: get-library-items
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { import { GetLibraryItemsQueryParamType, Tag } from "@lukehagar/plexjs/sdk/models/operations";
GetLibraryItemsQueryParamIncludeMeta,
GetLibraryItemsQueryParamType,
IncludeGuids,
Tag,
} from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({ const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>", accessToken: "<YOUR_API_KEY_HERE>",
@@ -896,12 +983,8 @@ actions:
async function run() { async function run() {
const result = await plexAPI.library.getLibraryItems({ const result = await plexAPI.library.getLibraryItems({
tag: Tag.Edition, tag: Tag.Edition,
includeGuids: IncludeGuids.Enable,
type: GetLibraryItemsQueryParamType.TvShow, type: GetLibraryItemsQueryParamType.TvShow,
sectionKey: 9518, sectionKey: 9518,
includeMeta: GetLibraryItemsQueryParamIncludeMeta.Enable,
xPlexContainerStart: 0,
xPlexContainerSize: 50,
}); });
// Handle the result // Handle the result
@@ -976,7 +1059,7 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: providers label: get-media-providers
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
@@ -1210,7 +1293,7 @@ actions:
}); });
async function run() { async function run() {
const result = await plexAPI.playlists.updatePlaylist(3915.00); const result = await plexAPI.playlists.updatePlaylist(3915);
// Handle the result // Handle the result
console.log(result); console.log(result);
@@ -1271,7 +1354,7 @@ actions:
}); });
async function run() { async function run() {
const result = await plexAPI.playlists.addPlaylistContents(8502.00, "server://12345/com.plexapp.plugins.library/library/metadata/1", 123); const result = await plexAPI.playlists.addPlaylistContents(8502.01, "server://12345/com.plexapp.plugins.library/library/metadata/1", 123);
// Handle the result // Handle the result
console.log(result); console.log(result);
@@ -1282,17 +1365,16 @@ actions:
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: resources label: get-server-resources
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { IncludeHttps, IncludeIPv6, IncludeRelay } from "@lukehagar/plexjs/sdk/models/operations";
const plexAPI = new PlexAPI({ const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>", accessToken: "<YOUR_API_KEY_HERE>",
}); });
async function run() { async function run() {
const result = await plexAPI.plex.getServerResources("3381b62b-9ab7-4e37-827b-203e9809eb58", IncludeHttps.Enable, IncludeRelay.Enable, IncludeIPv6.Enable); const result = await plexAPI.plex.getServerResources("3381b62b-9ab7-4e37-827b-203e9809eb58");
// Handle the result // Handle the result
console.log(result); console.log(result);
@@ -1601,12 +1683,44 @@ actions:
console.log(result); console.log(result);
} }
run();
- target: $["paths"]["/users"]["get"]
update:
x-codeSamples:
- lang: typescript
label: get-users
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI();
async function run() {
const result = await plexAPI.users.getUsers({
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
clientName: "Plex for Roku",
deviceNickname: "Roku 3",
deviceName: "Chrome",
deviceScreenResolution: "1487x1165,2560x1440",
clientVersion: "2.4.1",
platform: "Roku",
clientFeatures: "external-media,indirect-media,hub-style-list",
model: "4200X",
xPlexSessionId: "97e136ef-4ddd-4ff3-89a7-a5820c96c2ca",
xPlexLanguage: "en",
platformVersion: "4.3 build 1057",
xPlexToken: "CV5xoxjTpFKUzBTShsaf",
});
// Handle the result
console.log(result);
}
run(); run();
- target: $["paths"]["/users/signin"]["post"] - target: $["paths"]["/users/signin"]["post"]
update: update:
x-codeSamples: x-codeSamples:
- lang: typescript - lang: typescript
label: data label: post-users-sign-in-data
source: |- source: |-
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";

View File

@@ -0,0 +1,18 @@
# GetActorsLibraryBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetActorsLibraryBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| `errors` | [errors.GetActorsLibraryErrors](../../../sdk/models/errors/getactorslibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -1,11 +1,11 @@
# GetMetaDataByRatingKeyErrors # GetActorsLibraryErrors
## Example Usage ## Example Usage
```typescript ```typescript
import { GetMetaDataByRatingKeyErrors } from "@lukehagar/plexjs/sdk/models/errors"; import { GetActorsLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetMetaDataByRatingKeyErrors = { let value: GetActorsLibraryErrors = {
code: 1000, code: 1000,
message: "X-Plex-Client-Identifier is missing", message: "X-Plex-Client-Identifier is missing",
status: 400, status: 400,

View File

@@ -1,11 +1,11 @@
# GetMetaDataByRatingKeyLibraryErrors # GetActorsLibraryLibraryErrors
## Example Usage ## Example Usage
```typescript ```typescript
import { GetMetaDataByRatingKeyLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors"; import { GetActorsLibraryLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetMetaDataByRatingKeyLibraryErrors = { let value: GetActorsLibraryLibraryErrors = {
code: 1001, code: 1001,
message: "User could not be authenticated", message: "User could not be authenticated",
status: 401, status: 401,

View File

@@ -0,0 +1,18 @@
# GetActorsLibraryUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Example Usage
```typescript
import { GetActorsLibraryUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetActorsLibraryLibraryErrors](../../../sdk/models/errors/getactorslibrarylibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,18 @@
# GetAllMediaLibraryBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetAllMediaLibraryBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetAllMediaLibraryErrors](../../../sdk/models/errors/getallmedialibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,21 @@
# GetAllMediaLibraryErrors
## Example Usage
```typescript
import { GetAllMediaLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetAllMediaLibraryErrors = {
code: 1000,
message: "X-Plex-Client-Identifier is missing",
status: 400,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1000 |
| `message` | *string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `status` | *number* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,21 @@
# GetAllMediaLibraryLibraryErrors
## Example Usage
```typescript
import { GetAllMediaLibraryLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetAllMediaLibraryLibraryErrors = {
code: 1001,
message: "User could not be authenticated",
status: 401,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1001 |
| `message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `status` | *number* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,18 @@
# GetAllMediaLibraryUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Example Usage
```typescript
import { GetAllMediaLibraryUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetAllMediaLibraryLibraryErrors](../../../sdk/models/errors/getallmedialibrarylibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,18 @@
# GetCountriesLibraryBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetCountriesLibraryBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetCountriesLibraryErrors](../../../sdk/models/errors/getcountrieslibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,21 @@
# GetCountriesLibraryErrors
## Example Usage
```typescript
import { GetCountriesLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetCountriesLibraryErrors = {
code: 1000,
message: "X-Plex-Client-Identifier is missing",
status: 400,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1000 |
| `message` | *string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `status` | *number* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,21 @@
# GetCountriesLibraryLibraryErrors
## Example Usage
```typescript
import { GetCountriesLibraryLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetCountriesLibraryLibraryErrors = {
code: 1001,
message: "User could not be authenticated",
status: 401,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1001 |
| `message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `status` | *number* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,18 @@
# GetCountriesLibraryUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Example Usage
```typescript
import { GetCountriesLibraryUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetCountriesLibraryLibraryErrors](../../../sdk/models/errors/getcountrieslibrarylibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,18 @@
# GetGenresLibraryBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetGenresLibraryBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| `errors` | [errors.GetGenresLibraryErrors](../../../sdk/models/errors/getgenreslibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,21 @@
# GetGenresLibraryErrors
## Example Usage
```typescript
import { GetGenresLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetGenresLibraryErrors = {
code: 1000,
message: "X-Plex-Client-Identifier is missing",
status: 400,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1000 |
| `message` | *string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `status` | *number* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,21 @@
# GetGenresLibraryLibraryErrors
## Example Usage
```typescript
import { GetGenresLibraryLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetGenresLibraryLibraryErrors = {
code: 1001,
message: "User could not be authenticated",
status: 401,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1001 |
| `message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `status` | *number* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,18 @@
# GetGenresLibraryUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Example Usage
```typescript
import { GetGenresLibraryUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetGenresLibraryLibraryErrors](../../../sdk/models/errors/getgenreslibrarylibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,18 @@
# GetMediaMetaDataBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetMediaMetaDataBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| `errors` | [errors.GetMediaMetaDataErrors](../../../sdk/models/errors/getmediametadataerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,21 @@
# GetMediaMetaDataErrors
## Example Usage
```typescript
import { GetMediaMetaDataErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetMediaMetaDataErrors = {
code: 1000,
message: "X-Plex-Client-Identifier is missing",
status: 400,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1000 |
| `message` | *string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `status` | *number* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,21 @@
# GetMediaMetaDataLibraryErrors
## Example Usage
```typescript
import { GetMediaMetaDataLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetMediaMetaDataLibraryErrors = {
code: 1001,
message: "User could not be authenticated",
status: 401,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1001 |
| `message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `status` | *number* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,18 @@
# GetMediaMetaDataUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Example Usage
```typescript
import { GetMediaMetaDataUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetMediaMetaDataLibraryErrors](../../../sdk/models/errors/getmediametadatalibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -1,18 +0,0 @@
# GetMetaDataByRatingKeyBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetMetaDataByRatingKeyBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetMetaDataByRatingKeyErrors](../../../sdk/models/errors/getmetadatabyratingkeyerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -1,18 +0,0 @@
# GetMetaDataByRatingKeyUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Example Usage
```typescript
import { GetMetaDataByRatingKeyUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetMetaDataByRatingKeyLibraryErrors](../../../sdk/models/errors/getmetadatabyratingkeylibraryerrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,18 @@
# GetUsersBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetUsersBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| `errors` | [errors.GetUsersErrors](../../../sdk/models/errors/getuserserrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,21 @@
# GetUsersErrors
## Example Usage
```typescript
import { GetUsersErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetUsersErrors = {
code: 1000,
message: "X-Plex-Client-Identifier is missing",
status: 400,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1000 |
| `message` | *string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `status` | *number* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,18 @@
# GetUsersUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Example Usage
```typescript
import { GetUsersUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| `errors` | [errors.GetUsersUsersErrors](../../../sdk/models/errors/getusersuserserrors.md)[] | :heavy_minus_sign: | N/A |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,21 @@
# GetUsersUsersErrors
## Example Usage
```typescript
import { GetUsersUsersErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetUsersUsersErrors = {
code: 1001,
message: "User could not be authenticated",
status: 401,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `code` | *number* | :heavy_minus_sign: | N/A | 1001 |
| `message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `status` | *number* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -6,7 +6,7 @@
import { AddPlaylistContentsRequest } from "@lukehagar/plexjs/sdk/models/operations"; import { AddPlaylistContentsRequest } from "@lukehagar/plexjs/sdk/models/operations";
let value: AddPlaylistContentsRequest = { let value: AddPlaylistContentsRequest = {
playlistID: 6289.82, playlistID: 3741.7,
uri: "server://12345/com.plexapp.plugins.library/library/metadata/1", uri: "server://12345/com.plexapp.plugins.library/library/metadata/1",
playQueueID: 123, playQueueID: 123,
}; };

View File

@@ -7,7 +7,7 @@ import { AddPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operat
let value: AddPlaylistContentsResponse = { let value: AddPlaylistContentsResponse = {
contentType: "<value>", contentType: "<value>",
statusCode: 503, statusCode: 302,
rawResponse: new Response("{\"message\": \"hello world\"}", { rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" }, headers: { "Content-Type": "application/json" },
}), }),

View File

@@ -0,0 +1,18 @@
# AllLibraries
Indicates if the user has access to all libraries.
## Example Usage
```typescript
import { AllLibraries } from "@lukehagar/plexjs/sdk/models/operations";
let value: AllLibraries = AllLibraries.Enable;
```
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,18 @@
# AllowCameraUpload
Indicates if the user is allowed to upload from a camera.
## Example Usage
```typescript
import { AllowCameraUpload } from "@lukehagar/plexjs/sdk/models/operations";
let value: AllowCameraUpload = AllowCameraUpload.Enable;
```
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,18 @@
# AllowChannels
Indicates if the user has access to channels.
## Example Usage
```typescript
import { AllowChannels } from "@lukehagar/plexjs/sdk/models/operations";
let value: AllowChannels = AllowChannels.Enable;
```
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,18 @@
# AllowSubtitleAdmin
Indicates if the user can manage subtitles.
## Example Usage
```typescript
import { AllowSubtitleAdmin } from "@lukehagar/plexjs/sdk/models/operations";
let value: AllowSubtitleAdmin = AllowSubtitleAdmin.Enable;
```
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,18 @@
# AllowSync
Indicates if the user is allowed to sync media.
## Example Usage
```typescript
import { AllowSync } from "@lukehagar/plexjs/sdk/models/operations";
let value: AllowSync = AllowSync.Enable;
```
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,18 @@
# AllowTuners
Indicates if the user is allowed to use tuners.
## Example Usage
```typescript
import { AllowTuners } from "@lukehagar/plexjs/sdk/models/operations";
let value: AllowTuners = AllowTuners.Enable;
```
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -7,7 +7,7 @@ import { ApplyUpdatesResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: ApplyUpdatesResponse = { let value: ApplyUpdatesResponse = {
contentType: "<value>", contentType: "<value>",
statusCode: 103, statusCode: 428,
rawResponse: new Response("{\"message\": \"hello world\"}", { rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" }, headers: { "Content-Type": "application/json" },
}), }),

View File

@@ -7,7 +7,7 @@ import { Billing } from "@lukehagar/plexjs/sdk/models/operations";
let value: Billing = { let value: Billing = {
internalPaymentMethod: {}, internalPaymentMethod: {},
paymentMethodId: 374170, paymentMethodId: 765326,
}; };
``` ```

View File

@@ -7,7 +7,7 @@ import { CheckForUpdatesResponse } from "@lukehagar/plexjs/sdk/models/operations
let value: CheckForUpdatesResponse = { let value: CheckForUpdatesResponse = {
contentType: "<value>", contentType: "<value>",
statusCode: 201, statusCode: 508,
rawResponse: new Response("{\"message\": \"hello world\"}", { rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" }, headers: { "Content-Type": "application/json" },
}), }),

View File

@@ -6,7 +6,7 @@
import { ClearPlaylistContentsRequest } from "@lukehagar/plexjs/sdk/models/operations"; import { ClearPlaylistContentsRequest } from "@lukehagar/plexjs/sdk/models/operations";
let value: ClearPlaylistContentsRequest = { let value: ClearPlaylistContentsRequest = {
playlistID: 3834.64, playlistID: 256.62,
}; };
``` ```

View File

@@ -7,7 +7,7 @@ import { ClearPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/oper
let value: ClearPlaylistContentsResponse = { let value: ClearPlaylistContentsResponse = {
contentType: "<value>", contentType: "<value>",
statusCode: 307, statusCode: 204,
rawResponse: new Response("{\"message\": \"hello world\"}", { rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" }, headers: { "Content-Type": "application/json" },
}), }),

View File

@@ -7,7 +7,7 @@ type of playlist to create
```typescript ```typescript
import { CreatePlaylistQueryParamType } from "@lukehagar/plexjs/sdk/models/operations"; import { CreatePlaylistQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: CreatePlaylistQueryParamType = CreatePlaylistQueryParamType.Audio; let value: CreatePlaylistQueryParamType = CreatePlaylistQueryParamType.Video;
``` ```
## Values ## Values

View File

@@ -9,7 +9,7 @@ let value: CreatePlaylistRequest = {
title: "<value>", title: "<value>",
type: CreatePlaylistQueryParamType.Photo, type: CreatePlaylistQueryParamType.Photo,
smart: Smart.One, smart: Smart.One,
uri: "https://enchanted-disclosure.com/", uri: "https://radiant-dividend.com/",
}; };
``` ```

View File

@@ -7,7 +7,7 @@ import { CreatePlaylistResponse } from "@lukehagar/plexjs/sdk/models/operations"
let value: CreatePlaylistResponse = { let value: CreatePlaylistResponse = {
contentType: "<value>", contentType: "<value>",
statusCode: 302, statusCode: 409,
rawResponse: new Response("{\"message\": \"hello world\"}", { rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" }, headers: { "Content-Type": "application/json" },
}), }),

View File

@@ -6,7 +6,7 @@
import { DeletePlaylistRequest } from "@lukehagar/plexjs/sdk/models/operations"; import { DeletePlaylistRequest } from "@lukehagar/plexjs/sdk/models/operations";
let value: DeletePlaylistRequest = { let value: DeletePlaylistRequest = {
playlistID: 5365.79, playlistID: 1856.36,
}; };
``` ```

View File

@@ -7,7 +7,7 @@ import { DeletePlaylistResponse } from "@lukehagar/plexjs/sdk/models/operations"
let value: DeletePlaylistResponse = { let value: DeletePlaylistResponse = {
contentType: "<value>", contentType: "<value>",
statusCode: 511, statusCode: 507,
rawResponse: new Response("{\"message\": \"hello world\"}", { rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" }, headers: { "Content-Type": "application/json" },
}), }),

View File

@@ -0,0 +1,19 @@
# EnableCreditsMarkerGeneration
Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
## Example Usage
```typescript
import { EnableCreditsMarkerGeneration } from "@lukehagar/plexjs/sdk/models/operations";
let value: EnableCreditsMarkerGeneration =
EnableCreditsMarkerGeneration.LibraryDefault;
```
## Values
| Name | Value |
| ---------------- | ---------------- |
| `LibraryDefault` | -1 |
| `Disabled` | 0 |

View File

@@ -7,7 +7,7 @@ import { EnablePaperTrailResponse } from "@lukehagar/plexjs/sdk/models/operation
let value: EnablePaperTrailResponse = { let value: EnablePaperTrailResponse = {
contentType: "<value>", contentType: "<value>",
statusCode: 203, statusCode: 102,
rawResponse: new Response("{\"message\": \"hello world\"}", { rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" }, headers: { "Content-Type": "application/json" },
}), }),

View File

@@ -0,0 +1,19 @@
# EpisodeSort
Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
## Example Usage
```typescript
import { EpisodeSort } from "@lukehagar/plexjs/sdk/models/operations";
let value: EpisodeSort = EpisodeSort.OldestFirst;
```
## Values
| Name | Value |
| ---------------- | ---------------- |
| `LibraryDefault` | -1 |
| `OldestFirst` | 0 |
| `NewestFirst` | 1 |

View File

@@ -7,7 +7,7 @@ Filter
```typescript ```typescript
import { Filter } from "@lukehagar/plexjs/sdk/models/operations"; import { Filter } from "@lukehagar/plexjs/sdk/models/operations";
let value: Filter = Filter.Available; let value: Filter = Filter.All;
``` ```
## Values ## Values

View File

@@ -1,16 +1,19 @@
# FlattenSeasons # FlattenSeasons
Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
## Example Usage ## Example Usage
```typescript ```typescript
import { FlattenSeasons } from "@lukehagar/plexjs/sdk/models/operations"; import { FlattenSeasons } from "@lukehagar/plexjs/sdk/models/operations";
let value: FlattenSeasons = FlattenSeasons.True; let value: FlattenSeasons = FlattenSeasons.Show;
``` ```
## Values ## Values
| Name | Value | | Name | Value |
| ------- | ------- | | ---------------- | ---------------- |
| `False` | 0 | | `LibraryDefault` | -1 |
| `True` | 1 | | `Hide` | 0 |
| `Show` | 1 |

View File

@@ -7,7 +7,7 @@ Force the refresh even if the library is already being refreshed.
```typescript ```typescript
import { Force } from "@lukehagar/plexjs/sdk/models/operations"; import { Force } from "@lukehagar/plexjs/sdk/models/operations";
let value: Force = Force.Zero; let value: Force = Force.One;
``` ```
## Values ## Values

View File

@@ -10,13 +10,8 @@ let value: Friend = {
friendlyName: "exampleUser", friendlyName: "exampleUser",
home: true, home: true,
id: 0, id: 0,
restricted: false, sharedServers: [],
sharedServers: [ sharedSources: [],
{},
],
sharedSources: [
{},
],
status: Status.Accepted, status: Status.Accepted,
thumb: "https://plex.tv/users/7d1916e0d8f6e76b/avatar?c=1694481578", thumb: "https://plex.tv/users/7d1916e0d8f6e76b/avatar?c=1694481578",
title: "username123", title: "username123",

View File

@@ -12,11 +12,8 @@ let value: GeoData = {
continentCode: "NA", continentCode: "NA",
country: "United States Virgin Islands", country: "United States Virgin Islands",
city: "Amsterdam", city: "Amsterdam",
europeanUnionMember: true,
timeZone: "America/St_Thomas", timeZone: "America/St_Thomas",
postalCode: "802", postalCode: "802",
inPrivacyRestrictedCountry: true,
inPrivacyRestrictedRegion: true,
subdivisions: "Saint Thomas", subdivisions: "Saint Thomas",
coordinates: "18.3381, -64.8941", coordinates: "18.3381, -64.8941",
}; };

View File

@@ -0,0 +1,24 @@
# GetActorsLibraryDirectory
## Example Usage
```typescript
import { GetActorsLibraryDirectory } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetActorsLibraryDirectory = {
fastKey: "/library/sections/2/all?actor=134671",
thumb:
"https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg",
key: "134671",
title: "Aaron Paul",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| `fastKey` | *string* | :heavy_check_mark: | A fast lookup key for the actor relative url. | /library/sections/2/all?actor=134671 |
| `thumb` | *string* | :heavy_check_mark: | URL for the thumbnail image of the actor. | https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg |
| `key` | *string* | :heavy_check_mark: | A unique key representing the actor. | 134671 |
| `title` | *string* | :heavy_check_mark: | The name of the actor. | Aaron Paul |

View File

@@ -0,0 +1,49 @@
# GetActorsLibraryMediaContainer
## Example Usage
```typescript
import { GetActorsLibraryMediaContainer } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetActorsLibraryMediaContainer = {
size: 50,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
identifier: "com.plexapp.plugins.library",
mediaTagPrefix: "/system/bundle/media/flags/",
mediaTagVersion: 1734362201,
nocache: true,
thumb: "/:/resources/show.png",
title1: "TV Series",
title2: "By Starring Actor",
viewGroup: "secondary",
viewMode: "131131",
directory: [
{
fastKey: "/library/sections/2/all?actor=134671",
thumb:
"https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg",
key: "134671",
title: "Aaron Paul",
},
],
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `size` | *number* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
| `allowSync` | *boolean* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
| `art` | *string* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
| `identifier` | *string* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library |
| `mediaTagPrefix` | *string* | :heavy_check_mark: | The prefix used for media tag resource paths. | /system/bundle/media/flags/ |
| `mediaTagVersion` | *number* | :heavy_check_mark: | The version number for media tags. | 1734362201 |
| `nocache` | *boolean* | :heavy_check_mark: | Specifies whether caching is disabled. | true |
| `thumb` | *string* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png |
| `title1` | *string* | :heavy_check_mark: | The primary title of the media container. | TV Series |
| `title2` | *string* | :heavy_check_mark: | The secondary title of the media container. | By Starring Actor |
| `viewGroup` | *string* | :heavy_check_mark: | Identifier for the view group layout. | secondary |
| `viewMode` | *string* | :heavy_check_mark: | Identifier for the view mode. | 131131 |
| `directory` | [operations.GetActorsLibraryDirectory](../../../sdk/models/operations/getactorslibrarydirectory.md)[] | :heavy_minus_sign: | An array of actor entries for media items. | |

View File

@@ -0,0 +1,30 @@
# GetActorsLibraryQueryParamType
The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
## Example Usage
```typescript
import { GetActorsLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetActorsLibraryQueryParamType =
GetActorsLibraryQueryParamType.TvShow;
```
## Values
| Name | Value |
| --------- | --------- |
| `Movie` | 1 |
| `TvShow` | 2 |
| `Season` | 3 |
| `Episode` | 4 |
| `Audio` | 8 |
| `Album` | 9 |
| `Track` | 10 |

View File

@@ -0,0 +1,19 @@
# GetActorsLibraryRequest
## Example Usage
```typescript
import { GetActorsLibraryQueryParamType, GetActorsLibraryRequest } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetActorsLibraryRequest = {
sectionKey: 9518,
type: GetActorsLibraryQueryParamType.TvShow,
};
```
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sectionKey` | *number* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
| `type` | [operations.GetActorsLibraryQueryParamType](../../../sdk/models/operations/getactorslibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.<br/>1 = movie<br/>2 = show<br/>3 = season<br/>4 = episode<br/>E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries<br/> | 2 |

View File

@@ -0,0 +1,49 @@
# GetActorsLibraryResponse
## Example Usage
```typescript
import { GetActorsLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetActorsLibraryResponse = {
contentType: "<value>",
statusCode: 101,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
mediaContainer: {
size: 50,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
identifier: "com.plexapp.plugins.library",
mediaTagPrefix: "/system/bundle/media/flags/",
mediaTagVersion: 1734362201,
nocache: true,
thumb: "/:/resources/show.png",
title1: "TV Series",
title2: "By Starring Actor",
viewGroup: "secondary",
viewMode: "131131",
directory: [
{
fastKey: "/library/sections/2/all?actor=134671",
thumb:
"https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg",
key: "134671",
title: "Aaron Paul",
},
],
},
},
};
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `object` | [operations.GetActorsLibraryResponseBody](../../../sdk/models/operations/getactorslibraryresponsebody.md) | :heavy_minus_sign: | Successful response containing media container data. |

View File

@@ -0,0 +1,41 @@
# GetActorsLibraryResponseBody
Successful response containing media container data.
## Example Usage
```typescript
import { GetActorsLibraryResponseBody } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetActorsLibraryResponseBody = {
mediaContainer: {
size: 50,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
identifier: "com.plexapp.plugins.library",
mediaTagPrefix: "/system/bundle/media/flags/",
mediaTagVersion: 1734362201,
nocache: true,
thumb: "/:/resources/show.png",
title1: "TV Series",
title2: "By Starring Actor",
viewGroup: "secondary",
viewMode: "131131",
directory: [
{
fastKey: "/library/sections/2/all?actor=134671",
thumb:
"https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg",
key: "134671",
title: "Aaron Paul",
},
],
},
};
```
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `mediaContainer` | [operations.GetActorsLibraryMediaContainer](../../../sdk/models/operations/getactorslibrarymediacontainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -0,0 +1,20 @@
# GetAllMediaLibraryActiveDirection
The direction of the sort. Can be either `asc` or `desc`.
## Example Usage
```typescript
import { GetAllMediaLibraryActiveDirection } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryActiveDirection =
GetAllMediaLibraryActiveDirection.Ascending;
```
## Values
| Name | Value |
| ------------ | ------------ |
| `Ascending` | asc |
| `Descending` | desc |

View File

@@ -0,0 +1,17 @@
# GetAllMediaLibraryCollection
## Example Usage
```typescript
import { GetAllMediaLibraryCollection } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryCollection = {
tag: "My Awesome Collection",
};
```
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- |
| `tag` | *string* | :heavy_check_mark: | The user-made collection this media item belongs to | My Awesome Collection |

View File

@@ -0,0 +1,17 @@
# GetAllMediaLibraryCountry
## Example Usage
```typescript
import { GetAllMediaLibraryCountry } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryCountry = {
tag: "United States of America",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
| `tag` | *string* | :heavy_check_mark: | The country of origin of this media item | United States of America |

View File

@@ -0,0 +1,20 @@
# GetAllMediaLibraryDefaultDirection
The direction of the sort. Can be either `asc` or `desc`.
## Example Usage
```typescript
import { GetAllMediaLibraryDefaultDirection } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryDefaultDirection =
GetAllMediaLibraryDefaultDirection.Ascending;
```
## Values
| Name | Value |
| ------------ | ------------ |
| `Ascending` | asc |
| `Descending` | desc |

View File

@@ -0,0 +1,17 @@
# GetAllMediaLibraryDirector
## Example Usage
```typescript
import { GetAllMediaLibraryDirector } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryDirector = {
tag: "Danny Boyle",
};
```
## Fields
| Field | Type | Required | Description | Example |
| -------------------- | -------------------- | -------------------- | -------------------- | -------------------- |
| `tag` | *string* | :heavy_check_mark: | The role of Director | Danny Boyle |

View File

@@ -0,0 +1,23 @@
# GetAllMediaLibraryField
## Example Usage
```typescript
import { GetAllMediaLibraryField } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryField = {
key: "show.title",
title: "Show Title",
type: "string",
subType: "rating",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `key` | *string* | :heavy_check_mark: | N/A | show.title |
| `title` | *string* | :heavy_check_mark: | N/A | Show Title |
| `type` | *string* | :heavy_check_mark: | N/A | string |
| `subType` | *string* | :heavy_minus_sign: | N/A | rating |

View File

@@ -0,0 +1,24 @@
# GetAllMediaLibraryFieldType
## Example Usage
```typescript
import { GetAllMediaLibraryFieldType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryFieldType = {
type: "tag",
operator: [
{
key: "=",
title: "is",
},
],
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `type` | *string* | :heavy_check_mark: | N/A | tag |
| `operator` | [operations.GetAllMediaLibraryOperator](../../../sdk/models/operations/getallmedialibraryoperator.md)[] | :heavy_check_mark: | N/A | |

View File

@@ -0,0 +1,27 @@
# GetAllMediaLibraryFilter
## Example Usage
```typescript
import { GetAllMediaLibraryFilter } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryFilter = {
filter: "genre",
filterType: "string",
key: "/library/sections/2/genre?type=2",
title: "Genre",
type: "filter",
advanced: true,
};
```
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- |
| `filter` | *string* | :heavy_check_mark: | N/A | genre |
| `filterType` | *string* | :heavy_check_mark: | N/A | string |
| `key` | *string* | :heavy_check_mark: | N/A | /library/sections/2/genre?type=2 |
| `title` | *string* | :heavy_check_mark: | N/A | Genre |
| `type` | *string* | :heavy_check_mark: | N/A | filter |
| `advanced` | *boolean* | :heavy_minus_sign: | N/A | true |

View File

@@ -0,0 +1,17 @@
# GetAllMediaLibraryGenre
## Example Usage
```typescript
import { GetAllMediaLibraryGenre } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryGenre = {
tag: "United States of America",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
| `tag` | *string* | :heavy_check_mark: | The country of origin of this media item | United States of America |

View File

@@ -0,0 +1,18 @@
# GetAllMediaLibraryHasThumbnail
Indicates if the part has a thumbnail.
## Example Usage
```typescript
import { GetAllMediaLibraryHasThumbnail } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryHasThumbnail = GetAllMediaLibraryHasThumbnail.True;
```
## Values
| Name | Value |
| ------- | ------- |
| `False` | 0 |
| `True` | 1 |

View File

@@ -0,0 +1,21 @@
# GetAllMediaLibraryImage
## Example Usage
```typescript
import { GetAllMediaLibraryImage, GetAllMediaLibraryLibraryResponseType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryImage = {
alt: "Episode 1",
type: GetAllMediaLibraryLibraryResponseType.Background,
url: "/library/metadata/45521/thumb/1644710589",
};
```
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `alt` | *string* | :heavy_check_mark: | N/A | Episode 1 |
| `type` | [operations.GetAllMediaLibraryLibraryResponseType](../../../sdk/models/operations/getallmedialibrarylibraryresponsetype.md) | :heavy_check_mark: | N/A | background |
| `url` | *string* | :heavy_check_mark: | N/A | /library/metadata/45521/thumb/1644710589 |

View File

@@ -0,0 +1,20 @@
# GetAllMediaLibraryLibraryOptimizedForStreaming
Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
## Supported Types
### `operations.GetAllMediaLibraryOptimizedForStreaming1`
```typescript
const value: operations.GetAllMediaLibraryOptimizedForStreaming1 =
GetAllMediaLibraryOptimizedForStreaming1.One;
```
### `boolean`
```typescript
const value: boolean = false;
```

View File

@@ -0,0 +1,19 @@
# GetAllMediaLibraryLibraryResponseType
## Example Usage
```typescript
import { GetAllMediaLibraryLibraryResponseType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryLibraryResponseType =
GetAllMediaLibraryLibraryResponseType.Background;
```
## Values
| Name | Value |
| ------------- | ------------- |
| `CoverPoster` | coverPoster |
| `Background` | background |
| `Snapshot` | snapshot |
| `ClearLogo` | clearLogo |

View File

@@ -0,0 +1,23 @@
# GetAllMediaLibraryLibraryType
The type of media content
## Example Usage
```typescript
import { GetAllMediaLibraryLibraryType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryLibraryType = GetAllMediaLibraryLibraryType.Movie;
```
## Values
| Name | Value |
| --------- | --------- |
| `Movie` | movie |
| `TvShow` | show |
| `Season` | season |
| `Episode` | episode |
| `Artist` | artist |
| `Album` | album |

View File

@@ -0,0 +1,119 @@
# GetAllMediaLibraryMedia
## Example Usage
```typescript
import { GetAllMediaLibraryMedia } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryMedia = {
id: 387322,
duration: 9610350,
bitrate: 25512,
width: 3840,
height: 1602,
aspectRatio: 2.35,
audioChannels: 6,
displayOffset: 50,
audioCodec: "eac3",
videoCodec: "hevc",
videoResolution: "4k",
container: "mkv",
videoFrameRate: "24p",
videoProfile: "main 10",
hasVoiceActivity: false,
audioProfile: "dts",
has64bitOffsets: false,
part: [
{
accessible: true,
exists: true,
id: 418385,
key: "/library/parts/418385/1735864239/file.mkv",
indexes: "sd",
duration: 9610350,
file: "/mnt/Movies_1/W/Wicked (2024).mkv",
size: 30649952104,
packetLength: 188,
container: "mkv",
videoProfile: "main 10",
audioProfile: "dts",
has64bitOffsets: false,
stream: [
{
id: 1002625,
streamType: 1,
default: true,
codec: "hevc",
index: 0,
bitrate: 24743,
language: "English",
languageTag: "en",
languageCode: "eng",
headerCompression: true,
doviblCompatID: 1,
doviblPresent: true,
dovielPresent: false,
doviLevel: 6,
doviPresent: true,
doviProfile: 8,
dovirpuPresent: true,
doviVersion: "1.0",
bitDepth: 10,
chromaLocation: "topleft",
chromaSubsampling: "4:2:0",
codedHeight: 1608,
codedWidth: 3840,
colorPrimaries: "bt2020",
colorRange: "tv",
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
height: 1602,
level: 150,
original: true,
hasScalingMatrix: false,
profile: "main 10",
scanType: "progressive",
refFrames: 1,
width: 3840,
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
selected: true,
forced: true,
channels: 6,
audioChannelLayout: "5.1(side)",
samplingRate: 48000,
canAutoSync: false,
hearingImpaired: true,
dub: true,
title: "SDH",
},
],
},
],
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `id` | *number* | :heavy_check_mark: | Unique media identifier. | 387322 |
| `duration` | *number* | :heavy_minus_sign: | Duration of the media in milliseconds. | 9610350 |
| `bitrate` | *number* | :heavy_minus_sign: | Bitrate in bits per second. | 25512 |
| `width` | *number* | :heavy_minus_sign: | Video width in pixels. | 3840 |
| `height` | *number* | :heavy_minus_sign: | Video height in pixels. | 1602 |
| `aspectRatio` | *number* | :heavy_minus_sign: | Aspect ratio of the video. | 2.35 |
| `audioChannels` | *number* | :heavy_minus_sign: | Number of audio channels. | 6 |
| `displayOffset` | *number* | :heavy_minus_sign: | N/A | 50 |
| `audioCodec` | *string* | :heavy_minus_sign: | Audio codec used. | eac3 |
| `videoCodec` | *string* | :heavy_minus_sign: | Video codec used. | hevc |
| `videoResolution` | *string* | :heavy_minus_sign: | Video resolution (e.g., 4k). | 4k |
| `container` | *string* | :heavy_minus_sign: | File container type. | mkv |
| `videoFrameRate` | *string* | :heavy_minus_sign: | Frame rate of the video. Values found include NTSC, PAL, 24p<br/> | 24p |
| `videoProfile` | *string* | :heavy_minus_sign: | Video profile (e.g., main 10). | main 10 |
| `hasVoiceActivity` | *boolean* | :heavy_check_mark: | Indicates whether voice activity is detected. | false |
| `audioProfile` | *string* | :heavy_minus_sign: | The audio profile used for the media (e.g., DTS, Dolby Digital, etc.). | dts |
| `optimizedForStreaming` | *operations.GetAllMediaLibraryOptimizedForStreaming* | :heavy_minus_sign: | Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true | |
| `has64bitOffsets` | *boolean* | :heavy_minus_sign: | N/A | false |
| `part` | [operations.GetAllMediaLibraryPart](../../../sdk/models/operations/getallmedialibrarypart.md)[] | :heavy_check_mark: | An array of parts for this media item. | |

View File

@@ -0,0 +1,305 @@
# GetAllMediaLibraryMediaContainer
## Example Usage
```typescript
import {
GetAllMediaLibraryLibraryResponseType,
GetAllMediaLibraryLibraryType,
GetAllMediaLibraryMediaContainer,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
let value: GetAllMediaLibraryMediaContainer = {
size: 50,
totalSize: 50,
offset: 0,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
content: "secondary",
identifier: "com.plexapp.plugins.library",
librarySectionID: 2,
librarySectionTitle: "TV Series",
librarySectionUUID: "e69655a2-ef48-4aba-bb19-0cc34d1e7d36",
mediaTagPrefix: "/system/bundle/media/flags/",
mediaTagVersion: 1734362201,
thumb: "/:/resources/show.png",
nocache: true,
title1: "TV Series",
title2: "By Starring Actor",
viewGroup: "secondary",
meta: {
type: [
{
key: "/library/sections/2/all?type=2",
type: "filter",
subtype: "clip",
title: "TV Shows",
active: false,
filter: [
{
filter: "genre",
filterType: "string",
key: "/library/sections/2/genre?type=2",
title: "Genre",
type: "filter",
advanced: true,
},
],
sort: [
{
default: "asc",
active: false,
descKey: "titleSort:desc",
firstCharacterKey: "/library/sections/2/firstCharacter",
key: "titleSort",
title: "Title",
},
],
field: [
{
key: "show.title",
title: "Show Title",
type: "string",
subType: "rating",
},
],
},
],
fieldType: [
{
type: "tag",
operator: [
{
key: "=",
title: "is",
},
],
},
],
},
metadata: [
{
ratingKey: "58683",
key: "/library/metadata/58683",
guid: "plex://movie/5d7768ba96b655001fdc0408",
slug: "4-for-texas",
studio: "20th Century Studios",
type: GetAllMediaLibraryLibraryType.Movie,
title: "Avatar: The Way of Water",
titleSort: "Whale",
contentRating: "PG-13",
summary:
"Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\n"
+ "Once a familiar threat returns to finish what was previously started, Jake must\n"
+ "work with Neytiri and the army of the Na'vi race to protect their home.\n"
+ "",
rating: 7.6,
audienceRating: 9.2,
year: 2022,
tagline: "Return to Pandora.",
thumb: "/library/metadata/58683/thumb/1703239236",
art: "/library/metadata/58683/art/1703239236",
theme: "/library/metadata/1/theme/1705636920",
index: 1,
leafCount: 14,
viewedLeafCount: 0,
childCount: 1,
seasonCount: 2022,
duration: 11558112,
originallyAvailableAt: new RFCDate("2022-12-14"),
addedAt: 1556281940,
updatedAt: 1556281940,
audienceRatingImage: "rottentomatoes://image.rating.upright",
chapterSource: "media",
primaryExtraKey: "/library/metadata/58684",
originalTitle: "映画 ブラッククローバー 魔法帝の剣",
parentRatingKey: "66",
grandparentRatingKey: "66",
parentGuid: "plex://show/5d9c081b170e24001f2a7be4",
grandparentGuid: "plex://show/5d9c081b170e24001f2a7be4",
grandparentSlug: "alice-in-borderland-2020",
grandparentKey: "/library/metadata/66",
parentKey: "/library/metadata/66",
grandparentTitle: "Caprica",
grandparentThumb: "/library/metadata/66/thumb/1705716261",
grandparentTheme: "/library/metadata/66/theme/1705716261",
grandparentArt: "/library/metadata/66/art/1705716261",
parentTitle: "Caprica",
parentIndex: 1,
parentThumb: "/library/metadata/66/thumb/1705716261",
ratingImage: "rottentomatoes://image.rating.ripe",
viewCount: 1,
viewOffset: 5222500,
skipCount: 1,
subtype: "clip",
lastRatedAt: 1721813113,
createdAtAccuracy: "epoch,local",
createdAtTZOffset: "0",
lastViewedAt: 1682752242,
userRating: 10,
image: [
{
alt: "Episode 1",
type: GetAllMediaLibraryLibraryResponseType.Background,
url: "/library/metadata/45521/thumb/1644710589",
},
],
ultraBlurColors: {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
},
media: [
{
id: 387322,
duration: 9610350,
bitrate: 25512,
width: 3840,
height: 1602,
aspectRatio: 2.35,
audioChannels: 6,
displayOffset: 50,
audioCodec: "eac3",
videoCodec: "hevc",
videoResolution: "4k",
container: "mkv",
videoFrameRate: "24p",
videoProfile: "main 10",
hasVoiceActivity: false,
audioProfile: "dts",
has64bitOffsets: false,
part: [
{
accessible: true,
exists: true,
id: 418385,
key: "/library/parts/418385/1735864239/file.mkv",
indexes: "sd",
duration: 9610350,
file: "/mnt/Movies_1/W/Wicked (2024).mkv",
size: 30649952104,
packetLength: 188,
container: "mkv",
videoProfile: "main 10",
audioProfile: "dts",
has64bitOffsets: false,
stream: [
{
id: 1002625,
streamType: 1,
default: true,
codec: "hevc",
index: 0,
bitrate: 24743,
language: "English",
languageTag: "en",
languageCode: "eng",
headerCompression: true,
doviblCompatID: 1,
doviblPresent: true,
dovielPresent: false,
doviLevel: 6,
doviPresent: true,
doviProfile: 8,
dovirpuPresent: true,
doviVersion: "1.0",
bitDepth: 10,
chromaLocation: "topleft",
chromaSubsampling: "4:2:0",
codedHeight: 1608,
codedWidth: 3840,
colorPrimaries: "bt2020",
colorRange: "tv",
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
height: 1602,
level: 150,
original: true,
hasScalingMatrix: false,
profile: "main 10",
scanType: "progressive",
refFrames: 1,
width: 3840,
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
selected: true,
forced: true,
channels: 6,
audioChannelLayout: "5.1(side)",
samplingRate: 48000,
canAutoSync: false,
hearingImpaired: true,
dub: true,
title: "SDH",
},
],
},
],
},
],
genre: [
{
tag: "United States of America",
},
],
country: [
{
tag: "United States of America",
},
],
director: [
{
tag: "Danny Boyle",
},
],
writer: [
{
tag: "Danny Boyle",
},
],
role: [
{
tag: "Danny Boyle",
},
],
guids: [
{
id: "tvdb://2337",
},
],
collection: [
{
tag: "My Awesome Collection",
},
],
},
],
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `size` | *number* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
| `totalSize` | *number* | :heavy_check_mark: | Total number of media items in the library. | 50 |
| `offset` | *number* | :heavy_check_mark: | Offset value for pagination. | 0 |
| `allowSync` | *boolean* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
| `art` | *string* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
| `content` | *string* | :heavy_check_mark: | The content type or mode. | secondary |
| `identifier` | *string* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library |
| `librarySectionID` | *number* | :heavy_check_mark: | The unique identifier for the library section. | 2 |
| `librarySectionTitle` | *string* | :heavy_check_mark: | The title of the library section. | TV Series |
| `librarySectionUUID` | *string* | :heavy_minus_sign: | The universally unique identifier for the library section. | e69655a2-ef48-4aba-bb19-0cc34d1e7d36 |
| `mediaTagPrefix` | *string* | :heavy_check_mark: | The prefix used for media tag resource paths. | /system/bundle/media/flags/ |
| `mediaTagVersion` | *number* | :heavy_check_mark: | The version number for media tags. | 1734362201 |
| `thumb` | *string* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png |
| `nocache` | *boolean* | :heavy_check_mark: | Specifies whether caching is disabled. | true |
| `title1` | *string* | :heavy_check_mark: | The primary title of the media container. | TV Series |
| `title2` | *string* | :heavy_check_mark: | The secondary title of the media container. | By Starring Actor |
| `viewGroup` | *string* | :heavy_check_mark: | Identifier for the view group layout. | secondary |
| `meta` | [operations.GetAllMediaLibraryMeta](../../../sdk/models/operations/getallmedialibrarymeta.md) | :heavy_minus_sign: | The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.<br/> | |
| `metadata` | [operations.GetAllMediaLibraryMetadata](../../../sdk/models/operations/getallmedialibrarymetadata.md)[] | :heavy_minus_sign: | An array of metadata items. | |

View File

@@ -0,0 +1,68 @@
# GetAllMediaLibraryMeta
The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
## Example Usage
```typescript
import { GetAllMediaLibraryMeta } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryMeta = {
type: [
{
key: "/library/sections/2/all?type=2",
type: "filter",
subtype: "clip",
title: "TV Shows",
active: false,
filter: [
{
filter: "genre",
filterType: "string",
key: "/library/sections/2/genre?type=2",
title: "Genre",
type: "filter",
advanced: true,
},
],
sort: [
{
default: "asc",
active: false,
descKey: "titleSort:desc",
firstCharacterKey: "/library/sections/2/firstCharacter",
key: "titleSort",
title: "Title",
},
],
field: [
{
key: "show.title",
title: "Show Title",
type: "string",
subType: "rating",
},
],
},
],
fieldType: [
{
type: "tag",
operator: [
{
key: "=",
title: "is",
},
],
},
],
};
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `type` | [operations.GetAllMediaLibraryType](../../../sdk/models/operations/getallmedialibrarytype.md)[] | :heavy_minus_sign: | N/A |
| `fieldType` | [operations.GetAllMediaLibraryFieldType](../../../sdk/models/operations/getallmedialibraryfieldtype.md)[] | :heavy_minus_sign: | N/A |

View File

@@ -1,101 +1,173 @@
# GetMetaDataByRatingKeyMetadata # GetAllMediaLibraryMetadata
Unknown
## Example Usage ## Example Usage
```typescript ```typescript
import { GetMetaDataByRatingKeyMetadata } from "@lukehagar/plexjs/sdk/models/operations"; import {
GetAllMediaLibraryLibraryResponseType,
GetAllMediaLibraryLibraryType,
GetAllMediaLibraryMetadata,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types"; import { RFCDate } from "@lukehagar/plexjs/sdk/types";
let value: GetMetaDataByRatingKeyMetadata = { let value: GetAllMediaLibraryMetadata = {
ratingKey: "17", ratingKey: "58683",
key: "/library/metadata/17", key: "/library/metadata/58683",
guid: "plex://movie/5d77683f6f4521001ea9dc53", guid: "plex://movie/5d7768ba96b655001fdc0408",
studio: "Universal Pictures", slug: "4-for-texas",
type: "movie", studio: "20th Century Studios",
title: "Serenity", type: GetAllMediaLibraryLibraryType.Movie,
librarySectionTitle: "Movies", title: "Avatar: The Way of Water",
librarySectionID: 1, titleSort: "Whale",
librarySectionKey: "/library/sections/1",
contentRating: "PG-13", contentRating: "PG-13",
summary: summary:
"Serenity continues the story of the TV series it was based upon (\"Firefly\"). River Tam had a secret - one in which she's not even aware - so dangerous, no one's safe, as an Alliance operative's sent to capture her, and all others are considered irrelevant to his job.", "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\n"
rating: 8.2, + "Once a familiar threat returns to finish what was previously started, Jake must\n"
audienceRating: 9.1, + "work with Neytiri and the army of the Na'vi race to protect their home.\n"
year: 2005, + "",
tagline: "They aim to misbehave.", rating: 7.6,
thumb: "/library/metadata/17/thumb/1705637165", audienceRating: 9.2,
art: "/library/metadata/17/art/1705637165", year: 2022,
duration: 141417, tagline: "Return to Pandora.",
originallyAvailableAt: new RFCDate("2005-09-29T00:00:00Z"), thumb: "/library/metadata/58683/thumb/1703239236",
addedAt: 1705637164, art: "/library/metadata/58683/art/1703239236",
updatedAt: 1705637165, theme: "/library/metadata/1/theme/1705636920",
index: 1,
leafCount: 14,
viewedLeafCount: 0,
childCount: 1,
seasonCount: 2022,
duration: 11558112,
originallyAvailableAt: new RFCDate("2022-12-14"),
addedAt: 1556281940,
updatedAt: 1556281940,
audienceRatingImage: "rottentomatoes://image.rating.upright", audienceRatingImage: "rottentomatoes://image.rating.upright",
hasPremiumPrimaryExtra: "1", chapterSource: "media",
primaryExtraKey: "/library/metadata/58684",
originalTitle: "映画 ブラッククローバー 魔法帝の剣",
parentRatingKey: "66",
grandparentRatingKey: "66",
parentGuid: "plex://show/5d9c081b170e24001f2a7be4",
grandparentGuid: "plex://show/5d9c081b170e24001f2a7be4",
grandparentSlug: "alice-in-borderland-2020",
grandparentKey: "/library/metadata/66",
parentKey: "/library/metadata/66",
grandparentTitle: "Caprica",
grandparentThumb: "/library/metadata/66/thumb/1705716261",
grandparentTheme: "/library/metadata/66/theme/1705716261",
grandparentArt: "/library/metadata/66/art/1705716261",
parentTitle: "Caprica",
parentIndex: 1,
parentThumb: "/library/metadata/66/thumb/1705716261",
ratingImage: "rottentomatoes://image.rating.ripe", ratingImage: "rottentomatoes://image.rating.ripe",
viewCount: 1,
viewOffset: 5222500,
skipCount: 1,
subtype: "clip",
lastRatedAt: 1721813113,
createdAtAccuracy: "epoch,local",
createdAtTZOffset: "0",
lastViewedAt: 1682752242,
userRating: 10,
image: [
{
alt: "Episode 1",
type: GetAllMediaLibraryLibraryResponseType.Background,
url: "/library/metadata/45521/thumb/1644710589",
},
],
ultraBlurColors: {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
},
media: [ media: [
{ {
id: 15, id: 387322,
duration: 141417, duration: 9610350,
bitrate: 2278, bitrate: 25512,
width: 1920, width: 3840,
height: 814, height: 1602,
aspectRatio: 2.35, aspectRatio: 2.35,
audioChannels: 2, audioChannels: 6,
audioCodec: "aac", displayOffset: 50,
videoCodec: "h264", audioCodec: "eac3",
videoResolution: "1080", videoCodec: "hevc",
container: "mp4", videoResolution: "4k",
container: "mkv",
videoFrameRate: "24p", videoFrameRate: "24p",
optimizedForStreaming: 0, videoProfile: "main 10",
audioProfile: "lc", hasVoiceActivity: false,
audioProfile: "dts",
has64bitOffsets: false, has64bitOffsets: false,
videoProfile: "high",
part: [ part: [
{ {
id: 15, accessible: true,
key: "/library/parts/15/1705637151/file.mp4", exists: true,
duration: 141417, id: 418385,
file: "/movies/Serenity (2005)/Serenity (2005).mp4", key: "/library/parts/418385/1735864239/file.mkv",
size: 40271948, indexes: "sd",
audioProfile: "lc", duration: 9610350,
container: "mp4", file: "/mnt/Movies_1/W/Wicked (2024).mkv",
size: 30649952104,
packetLength: 188,
container: "mkv",
videoProfile: "main 10",
audioProfile: "dts",
has64bitOffsets: false, has64bitOffsets: false,
optimizedForStreaming: false,
videoProfile: "high",
stream: [ stream: [
{ {
id: 29, id: 1002625,
streamType: 2, streamType: 1,
default: true, default: true,
codec: "aac", codec: "hevc",
index: 0, index: 0,
bitrate: 128, bitrate: 24743,
bitDepth: 8,
chromaLocation: "left",
chromaSubsampling: "14520",
codedHeight: 816,
codedWidth: 1920,
colorPrimaries: "bt709",
colorRange: "tv",
colorSpace: "bt709",
colorTrc: "bt709",
frameRate: 24,
hasScalingMatrix: false,
height: 814,
level: 40,
profile: "lc",
refFrames: 4,
scanType: "progressive",
streamIdentifier: "1",
width: 1920,
displayTitle: "English (AAC Stereo)",
extendedDisplayTitle: "English (AAC Stereo)",
selected: true,
channels: 2,
language: "English", language: "English",
languageTag: "en", languageTag: "en",
languageCode: "eng", languageCode: "eng",
samplingRate: 44100, headerCompression: true,
doviblCompatID: 1,
doviblPresent: true,
dovielPresent: false,
doviLevel: 6,
doviPresent: true,
doviProfile: 8,
dovirpuPresent: true,
doviVersion: "1.0",
bitDepth: 10,
chromaLocation: "topleft",
chromaSubsampling: "4:2:0",
codedHeight: 1608,
codedWidth: 3840,
colorPrimaries: "bt2020",
colorRange: "tv",
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
height: 1602,
level: 150,
original: true,
hasScalingMatrix: false,
profile: "main 10",
scanType: "progressive",
refFrames: 1,
width: 3840,
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
selected: true,
forced: true,
channels: 6,
audioChannelLayout: "5.1(side)",
samplingRate: 48000,
canAutoSync: false,
hearingImpaired: true,
dub: true,
title: "SDH",
}, },
], ],
}, },
@@ -104,69 +176,37 @@ let value: GetMetaDataByRatingKeyMetadata = {
], ],
genre: [ genre: [
{ {
id: 184, tag: "United States of America",
filter: "genre=184",
tag: "Thriller",
}, },
], ],
country: [ country: [
{ {
id: 116,
filter: "country=116",
tag: "United States of America", tag: "United States of America",
}, },
], ],
director: [
{
tag: "Danny Boyle",
},
],
writer: [
{
tag: "Danny Boyle",
},
],
role: [
{
tag: "Danny Boyle",
},
],
guids: [ guids: [
{ {
id: "tvdb://2337", id: "tvdb://2337",
}, },
], ],
ratings: [ collection: [
{ {
image: "themoviedb://image.rating", tag: "My Awesome Collection",
value: 7.4,
type: "audience",
},
],
director: [
{
id: 130,
filter: "director=130",
tag: "Joss Whedon",
tagKey: "5d776828880197001ec90e8f",
thumb:
"https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg",
},
],
writer: [
{
id: 132,
filter: "writer=132",
tag: "Joss Whedon",
tagKey: "5d776828880197001ec90e8f",
thumb:
"https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg",
},
],
role: [
{
id: 220,
filter: "actor=220",
tag: "Dennis Keiffer",
tagKey: "5d77683554f42c001f8c4708",
role: "Bar Guy (uncredited)",
thumb:
"https://metadata-static.plex.tv/6/people/648e9a7ea1d537bccfcd7615134b78ce.jpg",
},
],
producer: [
{
id: 221,
filter: "producer=221",
tag: "Barry Mendel",
tagKey: "5d776826961905001eb90e2b",
thumb:
"https://metadata-static.plex.tv/8/people/87877371326a964634d18556d94547e1.jpg",
}, },
], ],
}; };
@@ -174,43 +214,69 @@ let value: GetMetaDataByRatingKeyMetadata = {
## Fields ## Fields
| Field | Type | Required | Description | Example | | Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ratingKey` | *string* | :heavy_minus_sign: | N/A | 17 | | `ratingKey` | *string* | :heavy_check_mark: | The rating key (Media ID) of this media item. Note: Although this is always an integer, it is represented as a string in the API. | 58683 |
| `key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17 | | `key` | *string* | :heavy_check_mark: | The unique key for the media item. | /library/metadata/58683 |
| `guid` | *string* | :heavy_minus_sign: | N/A | plex://movie/5d77683f6f4521001ea9dc53 | | `guid` | *string* | :heavy_check_mark: | The globally unique identifier for the media item. | plex://movie/5d7768ba96b655001fdc0408 |
| `studio` | *string* | :heavy_minus_sign: | N/A | Universal Pictures | | `slug` | *string* | :heavy_check_mark: | A URLfriendly version of the media title. | 4-for-texas |
| `type` | *string* | :heavy_minus_sign: | N/A | movie | | `studio` | *string* | :heavy_minus_sign: | The studio that produced the media item. | 20th Century Studios |
| `title` | *string* | :heavy_minus_sign: | N/A | Serenity | | `type` | [operations.GetAllMediaLibraryLibraryType](../../../sdk/models/operations/getallmedialibrarylibrarytype.md) | :heavy_check_mark: | N/A | movie |
| `librarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies | | `title` | *string* | :heavy_check_mark: | The title of the media item. | Avatar: The Way of Water |
| `librarySectionID` | *number* | :heavy_minus_sign: | N/A | 1 | | `titleSort` | *string* | :heavy_check_mark: | The sort title used for ordering media items. | Whale |
| `librarySectionKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/1 | | `contentRating` | *string* | :heavy_minus_sign: | The content rating for the media item. | PG-13 |
| `grandparentTitle` | *string* | :heavy_minus_sign: | The name of the album artist for the track when audio, and the name of the TV show for the episode when video. | | | `summary` | *string* | :heavy_check_mark: | A synopsis of the media item. | Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.<br/>Once a familiar threat returns to finish what was previously started, Jake must<br/>work with Neytiri and the army of the Na'vi race to protect their home.<br/> |
| `parentTitle` | *string* | :heavy_minus_sign: | The name of the album for the track when audio, and the name of the season for the episode when TV show. | | | `rating` | *number* | :heavy_check_mark: | The critic rating for the media item. | 7.6 |
| `originalTitle` | *string* | :heavy_minus_sign: | The orginal untranslated name of the media item when non-english. | | | `audienceRating` | *number* | :heavy_check_mark: | The audience rating for the media item. | 9.2 |
| `index` | *number* | :heavy_minus_sign: | The index starting from 0 of this media item in the MetaData array. | | | `year` | *number* | :heavy_check_mark: | The release year of the media item. | 2022 |
| `parentIndex` | *number* | :heavy_minus_sign: | The parent index starting from 0 of this media item in the parent MetaData array. | | | `tagline` | *string* | :heavy_check_mark: | A brief tagline for the media item. | Return to Pandora. |
| `contentRating` | *string* | :heavy_minus_sign: | N/A | PG-13 | | `thumb` | *string* | :heavy_check_mark: | The thumbnail image URL for the media item. | /library/metadata/58683/thumb/1703239236 |
| `summary` | *string* | :heavy_minus_sign: | N/A | Serenity continues the story of the TV series it was based upon ("Firefly"). River Tam had a secret - one in which she's not even aware - so dangerous, no one's safe, as an Alliance operative's sent to capture her, and all others are considered irrelevant to his job. | | `art` | *string* | :heavy_check_mark: | The art image URL for the media item. | /library/metadata/58683/art/1703239236 |
| `rating` | *number* | :heavy_minus_sign: | N/A | 8.2 | | `theme` | *string* | :heavy_check_mark: | The theme URL for the media item. | /library/metadata/1/theme/1705636920 |
| `audienceRating` | *number* | :heavy_minus_sign: | N/A | 9.1 | | `index` | *number* | :heavy_check_mark: | The index position of the media item. | 1 |
| `year` | *number* | :heavy_minus_sign: | N/A | 2005 | | `leafCount` | *number* | :heavy_minus_sign: | The number of leaf items (end nodes) under this media item. | 14 |
| `tagline` | *string* | :heavy_minus_sign: | N/A | They aim to misbehave. | | `viewedLeafCount` | *number* | :heavy_minus_sign: | The number of leaf items that have been viewed. | 0 |
| `thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17/thumb/1705637165 | | `childCount` | *number* | :heavy_check_mark: | The number of child items associated with this media item. | 1 |
| `art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/17/art/1705637165 | | `seasonCount` | *number* | :heavy_check_mark: | The total number of seasons (for TV shows). | 2022 |
| `duration` | *number* | :heavy_minus_sign: | N/A | 141417 | | `duration` | *number* | :heavy_check_mark: | The duration of the media item in milliseconds. | 11558112 |
| `originallyAvailableAt` | [RFCDate](../../../types/rfcdate.md) | :heavy_minus_sign: | N/A | 2005-09-29 00:00:00 +0000 UTC | | `originallyAvailableAt` | [RFCDate](../../../types/rfcdate.md) | :heavy_check_mark: | The original release date of the media item. | 2022-12-14 |
| `addedAt` | *number* | :heavy_minus_sign: | N/A | 1705637164 | | `addedAt` | *number* | :heavy_check_mark: | N/A | 1556281940 |
| `updatedAt` | *number* | :heavy_minus_sign: | N/A | 1705637165 | | `updatedAt` | *number* | :heavy_minus_sign: | Unix epoch datetime in seconds | 1556281940 |
| `audienceRatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.upright | | `audienceRatingImage` | *string* | :heavy_minus_sign: | The URL for the audience rating image. | rottentomatoes://image.rating.upright |
| `hasPremiumPrimaryExtra` | *string* | :heavy_minus_sign: | N/A | 1 | | `chapterSource` | *string* | :heavy_minus_sign: | The source from which chapter data is derived. | media |
| `ratingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.ripe | | `primaryExtraKey` | *string* | :heavy_minus_sign: | The primary extra key associated with this media item. | /library/metadata/58684 |
| `media` | [operations.GetMetaDataByRatingKeyMedia](../../../sdk/models/operations/getmetadatabyratingkeymedia.md)[] | :heavy_minus_sign: | N/A | | | `originalTitle` | *string* | :heavy_minus_sign: | The original title of the media item (if different). | 映画 ブラッククローバー 魔法帝の剣 |
| `genre` | [operations.GetMetaDataByRatingKeyGenre](../../../sdk/models/operations/getmetadatabyratingkeygenre.md)[] | :heavy_minus_sign: | N/A | | | `parentRatingKey` | *string* | :heavy_minus_sign: | The rating key of the parent media item. | 66 |
| `country` | [operations.GetMetaDataByRatingKeyCountry](../../../sdk/models/operations/getmetadatabyratingkeycountry.md)[] | :heavy_minus_sign: | N/A | | | `grandparentRatingKey` | *string* | :heavy_minus_sign: | The rating key of the grandparent media item. | 66 |
| `guids` | [operations.Guids](../../../sdk/models/operations/guids.md)[] | :heavy_minus_sign: | N/A | | | `parentGuid` | *string* | :heavy_minus_sign: | The GUID of the parent media item. | plex://show/5d9c081b170e24001f2a7be4 |
| `ratings` | [operations.Ratings](../../../sdk/models/operations/ratings.md)[] | :heavy_minus_sign: | N/A | | | `grandparentGuid` | *string* | :heavy_minus_sign: | The GUID of the grandparent media item. | plex://show/5d9c081b170e24001f2a7be4 |
| `director` | [operations.GetMetaDataByRatingKeyDirector](../../../sdk/models/operations/getmetadatabyratingkeydirector.md)[] | :heavy_minus_sign: | N/A | | | `grandparentSlug` | *string* | :heavy_minus_sign: | The slug for the grandparent media item. | alice-in-borderland-2020 |
| `writer` | [operations.GetMetaDataByRatingKeyWriter](../../../sdk/models/operations/getmetadatabyratingkeywriter.md)[] | :heavy_minus_sign: | N/A | | | `grandparentKey` | *string* | :heavy_minus_sign: | The key of the grandparent media item. | /library/metadata/66 |
| `role` | [operations.GetMetaDataByRatingKeyRole](../../../sdk/models/operations/getmetadatabyratingkeyrole.md)[] | :heavy_minus_sign: | N/A | | | `parentKey` | *string* | :heavy_minus_sign: | The key of the parent media item. | /library/metadata/66 |
| `producer` | [operations.Producer](../../../sdk/models/operations/producer.md)[] | :heavy_minus_sign: | N/A | | | `grandparentTitle` | *string* | :heavy_minus_sign: | The title of the grandparent media item. | Caprica |
| `grandparentThumb` | *string* | :heavy_minus_sign: | The thumbnail URL for the grandparent media item. | /library/metadata/66/thumb/1705716261 |
| `grandparentTheme` | *string* | :heavy_minus_sign: | The theme URL for the grandparent media item. | /library/metadata/66/theme/1705716261 |
| `grandparentArt` | *string* | :heavy_minus_sign: | The art URL for the grandparent media item. | /library/metadata/66/art/1705716261 |
| `parentTitle` | *string* | :heavy_minus_sign: | The title of the parent media item. | Caprica |
| `parentIndex` | *number* | :heavy_minus_sign: | The index position of the parent media item. | 1 |
| `parentThumb` | *string* | :heavy_minus_sign: | The thumbnail URL for the parent media item. | /library/metadata/66/thumb/1705716261 |
| `ratingImage` | *string* | :heavy_minus_sign: | The URL for the rating image. | rottentomatoes://image.rating.ripe |
| `viewCount` | *number* | :heavy_minus_sign: | The number of times this media item has been viewed. | 1 |
| `viewOffset` | *number* | :heavy_minus_sign: | The current playback offset (in milliseconds). | 5222500 |
| `skipCount` | *number* | :heavy_minus_sign: | The number of times this media item has been skipped. | 1 |
| `subtype` | *string* | :heavy_minus_sign: | A classification that further describes the type of media item. For example, 'clip' indicates that the item is a short video clip. | clip |
| `lastRatedAt` | *number* | :heavy_minus_sign: | The Unix timestamp representing the last time the item was rated. | 1721813113 |
| `createdAtAccuracy` | *string* | :heavy_minus_sign: | The accuracy of the creation timestamp. This value indicates the format(s) provided (for example, 'epoch,local' means both epoch and local time formats are available). | epoch,local |
| `createdAtTZOffset` | *string* | :heavy_minus_sign: | The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC. | 0 |
| `lastViewedAt` | *number* | :heavy_minus_sign: | Unix timestamp for when the media item was last viewed. | 1682752242 |
| `userRating` | *number* | :heavy_minus_sign: | The rating provided by a user for the item. This value is expressed as a decimal number. | 10 |
| `image` | [operations.GetAllMediaLibraryImage](../../../sdk/models/operations/getallmedialibraryimage.md)[] | :heavy_minus_sign: | N/A | |
| `ultraBlurColors` | [operations.GetAllMediaLibraryUltraBlurColors](../../../sdk/models/operations/getallmedialibraryultrablurcolors.md) | :heavy_minus_sign: | N/A | |
| `media` | [operations.GetAllMediaLibraryMedia](../../../sdk/models/operations/getallmedialibrarymedia.md)[] | :heavy_minus_sign: | N/A | |
| `genre` | [operations.GetAllMediaLibraryGenre](../../../sdk/models/operations/getallmedialibrarygenre.md)[] | :heavy_minus_sign: | N/A | |
| `country` | [operations.GetAllMediaLibraryCountry](../../../sdk/models/operations/getallmedialibrarycountry.md)[] | :heavy_minus_sign: | N/A | |
| `director` | [operations.GetAllMediaLibraryDirector](../../../sdk/models/operations/getallmedialibrarydirector.md)[] | :heavy_minus_sign: | N/A | |
| `writer` | [operations.GetAllMediaLibraryWriter](../../../sdk/models/operations/getallmedialibrarywriter.md)[] | :heavy_minus_sign: | N/A | |
| `role` | [operations.GetAllMediaLibraryRole](../../../sdk/models/operations/getallmedialibraryrole.md)[] | :heavy_minus_sign: | N/A | |
| `guids` | [operations.Guids](../../../sdk/models/operations/guids.md)[] | :heavy_minus_sign: | N/A | |
| `collection` | [operations.GetAllMediaLibraryCollection](../../../sdk/models/operations/getallmedialibrarycollection.md)[] | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,19 @@
# GetAllMediaLibraryOperator
## Example Usage
```typescript
import { GetAllMediaLibraryOperator } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryOperator = {
key: "=",
title: "is",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `key` | *string* | :heavy_check_mark: | N/A | = |
| `title` | *string* | :heavy_check_mark: | N/A | is |

View File

@@ -0,0 +1,19 @@
# GetAllMediaLibraryOptimizedForStreaming
Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
## Supported Types
### `operations.One`
```typescript
const value: operations.One = One.One;
```
### `boolean`
```typescript
const value: boolean = false;
```

View File

@@ -0,0 +1,17 @@
# GetAllMediaLibraryOptimizedForStreaming1
## Example Usage
```typescript
import { GetAllMediaLibraryOptimizedForStreaming1 } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryOptimizedForStreaming1 =
GetAllMediaLibraryOptimizedForStreaming1.Zero;
```
## Values
| Name | Value |
| ------ | ------ |
| `Zero` | 0 |
| `One` | 1 |

View File

@@ -0,0 +1,95 @@
# GetAllMediaLibraryPart
## Example Usage
```typescript
import { GetAllMediaLibraryPart } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryPart = {
accessible: true,
exists: true,
id: 418385,
key: "/library/parts/418385/1735864239/file.mkv",
indexes: "sd",
duration: 9610350,
file: "/mnt/Movies_1/W/Wicked (2024).mkv",
size: 30649952104,
packetLength: 188,
container: "mkv",
videoProfile: "main 10",
audioProfile: "dts",
has64bitOffsets: false,
stream: [
{
id: 1002625,
streamType: 1,
default: true,
codec: "hevc",
index: 0,
bitrate: 24743,
language: "English",
languageTag: "en",
languageCode: "eng",
headerCompression: true,
doviblCompatID: 1,
doviblPresent: true,
dovielPresent: false,
doviLevel: 6,
doviPresent: true,
doviProfile: 8,
dovirpuPresent: true,
doviVersion: "1.0",
bitDepth: 10,
chromaLocation: "topleft",
chromaSubsampling: "4:2:0",
codedHeight: 1608,
codedWidth: 3840,
colorPrimaries: "bt2020",
colorRange: "tv",
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
height: 1602,
level: 150,
original: true,
hasScalingMatrix: false,
profile: "main 10",
scanType: "progressive",
refFrames: 1,
width: 3840,
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
selected: true,
forced: true,
channels: 6,
audioChannelLayout: "5.1(side)",
samplingRate: 48000,
canAutoSync: false,
hearingImpaired: true,
dub: true,
title: "SDH",
},
],
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `accessible` | *boolean* | :heavy_minus_sign: | Indicates if the part is accessible. | true |
| `exists` | *boolean* | :heavy_minus_sign: | Indicates if the part exists. | true |
| `id` | *number* | :heavy_check_mark: | Unique part identifier. | 418385 |
| `key` | *string* | :heavy_check_mark: | Key to access this part. | /library/parts/418385/1735864239/file.mkv |
| `indexes` | *string* | :heavy_minus_sign: | N/A | sd |
| `duration` | *number* | :heavy_minus_sign: | Duration of the part in milliseconds. | 9610350 |
| `file` | *string* | :heavy_check_mark: | File path for the part. | /mnt/Movies_1/W/Wicked (2024).mkv |
| `size` | *number* | :heavy_check_mark: | File size in bytes. | 30649952104 |
| `packetLength` | *number* | :heavy_minus_sign: | N/A | 188 |
| `container` | *string* | :heavy_minus_sign: | Container format of the part. | mkv |
| `videoProfile` | *string* | :heavy_minus_sign: | Video profile for the part. | main 10 |
| `audioProfile` | *string* | :heavy_minus_sign: | The audio profile used for the media (e.g., DTS, Dolby Digital, etc.). | dts |
| `has64bitOffsets` | *boolean* | :heavy_minus_sign: | N/A | false |
| `optimizedForStreaming` | *operations.GetAllMediaLibraryLibraryOptimizedForStreaming* | :heavy_minus_sign: | Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true | |
| `hasThumbnail` | [operations.GetAllMediaLibraryHasThumbnail](../../../sdk/models/operations/getallmedialibraryhasthumbnail.md) | :heavy_minus_sign: | N/A | 1 |
| `stream` | [operations.GetAllMediaLibraryStream](../../../sdk/models/operations/getallmedialibrarystream.md)[] | :heavy_minus_sign: | An array of streams for this part. | |

View File

@@ -0,0 +1,20 @@
# GetAllMediaLibraryQueryParamIncludeMeta
Adds the Meta object to the response
## Example Usage
```typescript
import { GetAllMediaLibraryQueryParamIncludeMeta } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryQueryParamIncludeMeta =
GetAllMediaLibraryQueryParamIncludeMeta.Enable;
```
## Values
| Name | Value |
| --------- | --------- |
| `Disable` | 0 |
| `Enable` | 1 |

View File

@@ -0,0 +1,30 @@
# GetAllMediaLibraryQueryParamType
The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
## Example Usage
```typescript
import { GetAllMediaLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryQueryParamType =
GetAllMediaLibraryQueryParamType.TvShow;
```
## Values
| Name | Value |
| --------- | --------- |
| `Movie` | 1 |
| `TvShow` | 2 |
| `Season` | 3 |
| `Episode` | 4 |
| `Audio` | 8 |
| `Album` | 9 |
| `Track` | 10 |

View File

@@ -0,0 +1,26 @@
# GetAllMediaLibraryRequest
## Example Usage
```typescript
import { GetAllMediaLibraryQueryParamType, GetAllMediaLibraryRequest } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryRequest = {
sectionKey: 9518,
type: GetAllMediaLibraryQueryParamType.TvShow,
};
```
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `sectionKey` | *number* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
| `type` | [operations.GetAllMediaLibraryQueryParamType](../../../sdk/models/operations/getallmedialibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.<br/>1 = movie<br/>2 = show<br/>3 = season<br/>4 = episode<br/>E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries<br/> | 2 |
| `includeMeta` | [operations.GetAllMediaLibraryQueryParamIncludeMeta](../../../sdk/models/operations/getallmedialibraryqueryparamincludemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response<br/> | 1 |
| `includeGuids` | [operations.QueryParamIncludeGuids](../../../sdk/models/operations/queryparamincludeguids.md) | :heavy_minus_sign: | Adds the Guid object to the response<br/> | 1 |
| `includeAdvanced` | [operations.IncludeAdvanced](../../../sdk/models/operations/includeadvanced.md) | :heavy_minus_sign: | N/A | 1 |
| `includeCollections` | [operations.QueryParamIncludeCollections](../../../sdk/models/operations/queryparamincludecollections.md) | :heavy_minus_sign: | N/A | 1 |
| `includeExternalMedia` | [operations.QueryParamIncludeExternalMedia](../../../sdk/models/operations/queryparamincludeexternalmedia.md) | :heavy_minus_sign: | N/A | 1 |
| `xPlexContainerStart` | *number* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.<br/>If the number of items exceeds the limit, the response will be paginated.<br/>By default this is 0<br/> | 0 |
| `xPlexContainerSize` | *number* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.<br/>If the number of items exceeds the limit, the response will be paginated.<br/>By default this is 50<br/> | 50 |

View File

@@ -0,0 +1,299 @@
# GetAllMediaLibraryResponse
## Example Usage
```typescript
import {
GetAllMediaLibraryLibraryResponseType,
GetAllMediaLibraryLibraryType,
GetAllMediaLibraryResponse,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
let value: GetAllMediaLibraryResponse = {
contentType: "<value>",
statusCode: 103,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
mediaContainer: {
size: 50,
totalSize: 50,
offset: 0,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
content: "secondary",
identifier: "com.plexapp.plugins.library",
librarySectionID: 2,
librarySectionTitle: "TV Series",
librarySectionUUID: "e69655a2-ef48-4aba-bb19-0cc34d1e7d36",
mediaTagPrefix: "/system/bundle/media/flags/",
mediaTagVersion: 1734362201,
thumb: "/:/resources/show.png",
nocache: true,
title1: "TV Series",
title2: "By Starring Actor",
viewGroup: "secondary",
meta: {
type: [
{
key: "/library/sections/2/all?type=2",
type: "filter",
subtype: "clip",
title: "TV Shows",
active: false,
filter: [
{
filter: "genre",
filterType: "string",
key: "/library/sections/2/genre?type=2",
title: "Genre",
type: "filter",
advanced: true,
},
],
sort: [
{
default: "asc",
active: false,
descKey: "titleSort:desc",
firstCharacterKey: "/library/sections/2/firstCharacter",
key: "titleSort",
title: "Title",
},
],
field: [
{
key: "show.title",
title: "Show Title",
type: "string",
subType: "rating",
},
],
},
],
fieldType: [
{
type: "tag",
operator: [
{
key: "=",
title: "is",
},
],
},
],
},
metadata: [
{
ratingKey: "58683",
key: "/library/metadata/58683",
guid: "plex://movie/5d7768ba96b655001fdc0408",
slug: "4-for-texas",
studio: "20th Century Studios",
type: GetAllMediaLibraryLibraryType.Movie,
title: "Avatar: The Way of Water",
titleSort: "Whale",
contentRating: "PG-13",
summary:
"Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\n"
+ "Once a familiar threat returns to finish what was previously started, Jake must\n"
+ "work with Neytiri and the army of the Na'vi race to protect their home.\n"
+ "",
rating: 7.6,
audienceRating: 9.2,
year: 2022,
tagline: "Return to Pandora.",
thumb: "/library/metadata/58683/thumb/1703239236",
art: "/library/metadata/58683/art/1703239236",
theme: "/library/metadata/1/theme/1705636920",
index: 1,
leafCount: 14,
viewedLeafCount: 0,
childCount: 1,
seasonCount: 2022,
duration: 11558112,
originallyAvailableAt: new RFCDate("2022-12-14"),
addedAt: 1556281940,
updatedAt: 1556281940,
audienceRatingImage: "rottentomatoes://image.rating.upright",
chapterSource: "media",
primaryExtraKey: "/library/metadata/58684",
originalTitle: "映画 ブラッククローバー 魔法帝の剣",
parentRatingKey: "66",
grandparentRatingKey: "66",
parentGuid: "plex://show/5d9c081b170e24001f2a7be4",
grandparentGuid: "plex://show/5d9c081b170e24001f2a7be4",
grandparentSlug: "alice-in-borderland-2020",
grandparentKey: "/library/metadata/66",
parentKey: "/library/metadata/66",
grandparentTitle: "Caprica",
grandparentThumb: "/library/metadata/66/thumb/1705716261",
grandparentTheme: "/library/metadata/66/theme/1705716261",
grandparentArt: "/library/metadata/66/art/1705716261",
parentTitle: "Caprica",
parentIndex: 1,
parentThumb: "/library/metadata/66/thumb/1705716261",
ratingImage: "rottentomatoes://image.rating.ripe",
viewCount: 1,
viewOffset: 5222500,
skipCount: 1,
subtype: "clip",
lastRatedAt: 1721813113,
createdAtAccuracy: "epoch,local",
createdAtTZOffset: "0",
lastViewedAt: 1682752242,
userRating: 10,
image: [
{
alt: "Episode 1",
type: GetAllMediaLibraryLibraryResponseType.Background,
url: "/library/metadata/45521/thumb/1644710589",
},
],
ultraBlurColors: {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
},
media: [
{
id: 387322,
duration: 9610350,
bitrate: 25512,
width: 3840,
height: 1602,
aspectRatio: 2.35,
audioChannels: 6,
displayOffset: 50,
audioCodec: "eac3",
videoCodec: "hevc",
videoResolution: "4k",
container: "mkv",
videoFrameRate: "24p",
videoProfile: "main 10",
hasVoiceActivity: false,
audioProfile: "dts",
has64bitOffsets: false,
part: [
{
accessible: true,
exists: true,
id: 418385,
key: "/library/parts/418385/1735864239/file.mkv",
indexes: "sd",
duration: 9610350,
file: "/mnt/Movies_1/W/Wicked (2024).mkv",
size: 30649952104,
packetLength: 188,
container: "mkv",
videoProfile: "main 10",
audioProfile: "dts",
has64bitOffsets: false,
stream: [
{
id: 1002625,
streamType: 1,
default: true,
codec: "hevc",
index: 0,
bitrate: 24743,
language: "English",
languageTag: "en",
languageCode: "eng",
headerCompression: true,
doviblCompatID: 1,
doviblPresent: true,
dovielPresent: false,
doviLevel: 6,
doviPresent: true,
doviProfile: 8,
dovirpuPresent: true,
doviVersion: "1.0",
bitDepth: 10,
chromaLocation: "topleft",
chromaSubsampling: "4:2:0",
codedHeight: 1608,
codedWidth: 3840,
colorPrimaries: "bt2020",
colorRange: "tv",
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
height: 1602,
level: 150,
original: true,
hasScalingMatrix: false,
profile: "main 10",
scanType: "progressive",
refFrames: 1,
width: 3840,
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
selected: true,
forced: true,
channels: 6,
audioChannelLayout: "5.1(side)",
samplingRate: 48000,
canAutoSync: false,
hearingImpaired: true,
dub: true,
title: "SDH",
},
],
},
],
},
],
genre: [
{
tag: "United States of America",
},
],
country: [
{
tag: "United States of America",
},
],
director: [
{
tag: "Danny Boyle",
},
],
writer: [
{
tag: "Danny Boyle",
},
],
role: [
{
tag: "Danny Boyle",
},
],
guids: [
{
id: "tvdb://2337",
},
],
collection: [
{
tag: "My Awesome Collection",
},
],
},
],
},
},
};
```
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `object` | [operations.GetAllMediaLibraryResponseBody](../../../sdk/models/operations/getallmedialibraryresponsebody.md) | :heavy_minus_sign: | Successful response containing media container data. |

View File

@@ -0,0 +1,291 @@
# GetAllMediaLibraryResponseBody
Successful response containing media container data.
## Example Usage
```typescript
import {
GetAllMediaLibraryLibraryResponseType,
GetAllMediaLibraryLibraryType,
GetAllMediaLibraryResponseBody,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
let value: GetAllMediaLibraryResponseBody = {
mediaContainer: {
size: 50,
totalSize: 50,
offset: 0,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
content: "secondary",
identifier: "com.plexapp.plugins.library",
librarySectionID: 2,
librarySectionTitle: "TV Series",
librarySectionUUID: "e69655a2-ef48-4aba-bb19-0cc34d1e7d36",
mediaTagPrefix: "/system/bundle/media/flags/",
mediaTagVersion: 1734362201,
thumb: "/:/resources/show.png",
nocache: true,
title1: "TV Series",
title2: "By Starring Actor",
viewGroup: "secondary",
meta: {
type: [
{
key: "/library/sections/2/all?type=2",
type: "filter",
subtype: "clip",
title: "TV Shows",
active: false,
filter: [
{
filter: "genre",
filterType: "string",
key: "/library/sections/2/genre?type=2",
title: "Genre",
type: "filter",
advanced: true,
},
],
sort: [
{
default: "asc",
active: false,
descKey: "titleSort:desc",
firstCharacterKey: "/library/sections/2/firstCharacter",
key: "titleSort",
title: "Title",
},
],
field: [
{
key: "show.title",
title: "Show Title",
type: "string",
subType: "rating",
},
],
},
],
fieldType: [
{
type: "tag",
operator: [
{
key: "=",
title: "is",
},
],
},
],
},
metadata: [
{
ratingKey: "58683",
key: "/library/metadata/58683",
guid: "plex://movie/5d7768ba96b655001fdc0408",
slug: "4-for-texas",
studio: "20th Century Studios",
type: GetAllMediaLibraryLibraryType.Movie,
title: "Avatar: The Way of Water",
titleSort: "Whale",
contentRating: "PG-13",
summary:
"Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\n"
+ "Once a familiar threat returns to finish what was previously started, Jake must\n"
+ "work with Neytiri and the army of the Na'vi race to protect their home.\n"
+ "",
rating: 7.6,
audienceRating: 9.2,
year: 2022,
tagline: "Return to Pandora.",
thumb: "/library/metadata/58683/thumb/1703239236",
art: "/library/metadata/58683/art/1703239236",
theme: "/library/metadata/1/theme/1705636920",
index: 1,
leafCount: 14,
viewedLeafCount: 0,
childCount: 1,
seasonCount: 2022,
duration: 11558112,
originallyAvailableAt: new RFCDate("2022-12-14"),
addedAt: 1556281940,
updatedAt: 1556281940,
audienceRatingImage: "rottentomatoes://image.rating.upright",
chapterSource: "media",
primaryExtraKey: "/library/metadata/58684",
originalTitle: "映画 ブラッククローバー 魔法帝の剣",
parentRatingKey: "66",
grandparentRatingKey: "66",
parentGuid: "plex://show/5d9c081b170e24001f2a7be4",
grandparentGuid: "plex://show/5d9c081b170e24001f2a7be4",
grandparentSlug: "alice-in-borderland-2020",
grandparentKey: "/library/metadata/66",
parentKey: "/library/metadata/66",
grandparentTitle: "Caprica",
grandparentThumb: "/library/metadata/66/thumb/1705716261",
grandparentTheme: "/library/metadata/66/theme/1705716261",
grandparentArt: "/library/metadata/66/art/1705716261",
parentTitle: "Caprica",
parentIndex: 1,
parentThumb: "/library/metadata/66/thumb/1705716261",
ratingImage: "rottentomatoes://image.rating.ripe",
viewCount: 1,
viewOffset: 5222500,
skipCount: 1,
subtype: "clip",
lastRatedAt: 1721813113,
createdAtAccuracy: "epoch,local",
createdAtTZOffset: "0",
lastViewedAt: 1682752242,
userRating: 10,
image: [
{
alt: "Episode 1",
type: GetAllMediaLibraryLibraryResponseType.Background,
url: "/library/metadata/45521/thumb/1644710589",
},
],
ultraBlurColors: {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
},
media: [
{
id: 387322,
duration: 9610350,
bitrate: 25512,
width: 3840,
height: 1602,
aspectRatio: 2.35,
audioChannels: 6,
displayOffset: 50,
audioCodec: "eac3",
videoCodec: "hevc",
videoResolution: "4k",
container: "mkv",
videoFrameRate: "24p",
videoProfile: "main 10",
hasVoiceActivity: false,
audioProfile: "dts",
has64bitOffsets: false,
part: [
{
accessible: true,
exists: true,
id: 418385,
key: "/library/parts/418385/1735864239/file.mkv",
indexes: "sd",
duration: 9610350,
file: "/mnt/Movies_1/W/Wicked (2024).mkv",
size: 30649952104,
packetLength: 188,
container: "mkv",
videoProfile: "main 10",
audioProfile: "dts",
has64bitOffsets: false,
stream: [
{
id: 1002625,
streamType: 1,
default: true,
codec: "hevc",
index: 0,
bitrate: 24743,
language: "English",
languageTag: "en",
languageCode: "eng",
headerCompression: true,
doviblCompatID: 1,
doviblPresent: true,
dovielPresent: false,
doviLevel: 6,
doviPresent: true,
doviProfile: 8,
dovirpuPresent: true,
doviVersion: "1.0",
bitDepth: 10,
chromaLocation: "topleft",
chromaSubsampling: "4:2:0",
codedHeight: 1608,
codedWidth: 3840,
colorPrimaries: "bt2020",
colorRange: "tv",
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
height: 1602,
level: 150,
original: true,
hasScalingMatrix: false,
profile: "main 10",
scanType: "progressive",
refFrames: 1,
width: 3840,
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
selected: true,
forced: true,
channels: 6,
audioChannelLayout: "5.1(side)",
samplingRate: 48000,
canAutoSync: false,
hearingImpaired: true,
dub: true,
title: "SDH",
},
],
},
],
},
],
genre: [
{
tag: "United States of America",
},
],
country: [
{
tag: "United States of America",
},
],
director: [
{
tag: "Danny Boyle",
},
],
writer: [
{
tag: "Danny Boyle",
},
],
role: [
{
tag: "Danny Boyle",
},
],
guids: [
{
id: "tvdb://2337",
},
],
collection: [
{
tag: "My Awesome Collection",
},
],
},
],
},
};
```
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `mediaContainer` | [operations.GetAllMediaLibraryMediaContainer](../../../sdk/models/operations/getallmedialibrarymediacontainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -0,0 +1,17 @@
# GetAllMediaLibraryRole
## Example Usage
```typescript
import { GetAllMediaLibraryRole } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryRole = {
tag: "Danny Boyle",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `tag` | *string* | :heavy_check_mark: | The name of the actor for this role | Danny Boyle |

View File

@@ -0,0 +1,29 @@
# GetAllMediaLibrarySort
## Example Usage
```typescript
import { GetAllMediaLibrarySort } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibrarySort = {
default: "asc",
active: false,
descKey: "titleSort:desc",
firstCharacterKey: "/library/sections/2/firstCharacter",
key: "titleSort",
title: "Title",
};
```
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `default` | *string* | :heavy_minus_sign: | N/A | asc |
| `active` | *boolean* | :heavy_minus_sign: | N/A | false |
| `activeDirection` | [operations.GetAllMediaLibraryActiveDirection](../../../sdk/models/operations/getallmedialibraryactivedirection.md) | :heavy_minus_sign: | The direction of the sort. Can be either `asc` or `desc`.<br/> | asc |
| `defaultDirection` | [operations.GetAllMediaLibraryDefaultDirection](../../../sdk/models/operations/getallmedialibrarydefaultdirection.md) | :heavy_minus_sign: | The direction of the sort. Can be either `asc` or `desc`.<br/> | asc |
| `descKey` | *string* | :heavy_minus_sign: | N/A | titleSort:desc |
| `firstCharacterKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/2/firstCharacter |
| `key` | *string* | :heavy_check_mark: | N/A | titleSort |
| `title` | *string* | :heavy_check_mark: | N/A | Title |

View File

@@ -0,0 +1,109 @@
# GetAllMediaLibraryStream
## Example Usage
```typescript
import { GetAllMediaLibraryStream } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryStream = {
id: 1002625,
streamType: 1,
default: true,
codec: "hevc",
index: 0,
bitrate: 24743,
language: "English",
languageTag: "en",
languageCode: "eng",
headerCompression: true,
doviblCompatID: 1,
doviblPresent: true,
dovielPresent: false,
doviLevel: 6,
doviPresent: true,
doviProfile: 8,
dovirpuPresent: true,
doviVersion: "1.0",
bitDepth: 10,
chromaLocation: "topleft",
chromaSubsampling: "4:2:0",
codedHeight: 1608,
codedWidth: 3840,
colorPrimaries: "bt2020",
colorRange: "tv",
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
height: 1602,
level: 150,
original: true,
hasScalingMatrix: false,
profile: "main 10",
scanType: "progressive",
refFrames: 1,
width: 3840,
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
selected: true,
forced: true,
channels: 6,
audioChannelLayout: "5.1(side)",
samplingRate: 48000,
canAutoSync: false,
hearingImpaired: true,
dub: true,
title: "SDH",
};
```
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
| `id` | *number* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
| `streamType` | *number* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
| `default` | *boolean* | :heavy_minus_sign: | Indicates if this stream is default. | true |
| `codec` | *string* | :heavy_check_mark: | Codec used by the stream. | hevc |
| `index` | *number* | :heavy_check_mark: | Index of the stream. | 0 |
| `bitrate` | *number* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
| `language` | *string* | :heavy_check_mark: | Language of the stream. | English |
| `languageTag` | *string* | :heavy_check_mark: | Language tag (e.g., en). | en |
| `languageCode` | *string* | :heavy_check_mark: | ISO language code. | eng |
| `headerCompression` | *boolean* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
| `doviblCompatID` | *number* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
| `doviblPresent` | *boolean* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
| `dovielPresent` | *boolean* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
| `doviLevel` | *number* | :heavy_minus_sign: | Dolby Vision level. | 6 |
| `doviPresent` | *boolean* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
| `doviProfile` | *number* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
| `dovirpuPresent` | *boolean* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
| `doviVersion` | *string* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
| `bitDepth` | *number* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
| `chromaLocation` | *string* | :heavy_minus_sign: | Chroma sample location. | topleft |
| `chromaSubsampling` | *string* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
| `codedHeight` | *number* | :heavy_minus_sign: | Coded video height. | 1608 |
| `codedWidth` | *number* | :heavy_minus_sign: | Coded video width. | 3840 |
| `colorPrimaries` | *string* | :heavy_minus_sign: | Color primaries used. | bt2020 |
| `colorRange` | *string* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
| `colorSpace` | *string* | :heavy_minus_sign: | Color space. | bt2020nc |
| `colorTrc` | *string* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
| `frameRate` | *number* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
| `height` | *number* | :heavy_minus_sign: | Height of the video stream. | 1602 |
| `level` | *number* | :heavy_minus_sign: | Video level. | 150 |
| `original` | *boolean* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
| `hasScalingMatrix` | *boolean* | :heavy_minus_sign: | N/A | false |
| `profile` | *string* | :heavy_minus_sign: | Video profile. | main 10 |
| `scanType` | *string* | :heavy_minus_sign: | N/A | progressive |
| `refFrames` | *number* | :heavy_minus_sign: | Number of reference frames. | 1 |
| `width` | *number* | :heavy_minus_sign: | Width of the video stream. | 3840 |
| `displayTitle` | *string* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `extendedDisplayTitle` | *string* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
| `selected` | *boolean* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
| `forced` | *boolean* | :heavy_minus_sign: | N/A | true |
| `channels` | *number* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
| `audioChannelLayout` | *string* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
| `samplingRate` | *number* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
| `canAutoSync` | *boolean* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
| `hearingImpaired` | *boolean* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
| `dub` | *boolean* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
| `title` | *string* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |

View File

@@ -0,0 +1,56 @@
# GetAllMediaLibraryType
## Example Usage
```typescript
import { GetAllMediaLibraryType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryType = {
key: "/library/sections/2/all?type=2",
type: "filter",
subtype: "clip",
title: "TV Shows",
active: false,
filter: [
{
filter: "genre",
filterType: "string",
key: "/library/sections/2/genre?type=2",
title: "Genre",
type: "filter",
advanced: true,
},
],
sort: [
{
default: "asc",
active: false,
descKey: "titleSort:desc",
firstCharacterKey: "/library/sections/2/firstCharacter",
key: "titleSort",
title: "Title",
},
],
field: [
{
key: "show.title",
title: "Show Title",
type: "string",
subType: "rating",
},
],
};
```
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `key` | *string* | :heavy_check_mark: | N/A | /library/sections/2/all?type=2 |
| `type` | *string* | :heavy_check_mark: | N/A | filter |
| `subtype` | *string* | :heavy_minus_sign: | N/A | clip |
| `title` | *string* | :heavy_check_mark: | N/A | TV Shows |
| `active` | *boolean* | :heavy_check_mark: | N/A | false |
| `filter` | [operations.GetAllMediaLibraryFilter](../../../sdk/models/operations/getallmedialibraryfilter.md)[] | :heavy_minus_sign: | N/A | |
| `sort` | [operations.GetAllMediaLibrarySort](../../../sdk/models/operations/getallmedialibrarysort.md)[] | :heavy_minus_sign: | N/A | |
| `field` | [operations.GetAllMediaLibraryField](../../../sdk/models/operations/getallmedialibraryfield.md)[] | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,23 @@
# GetAllMediaLibraryUltraBlurColors
## Example Usage
```typescript
import { GetAllMediaLibraryUltraBlurColors } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryUltraBlurColors = {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `topLeft` | *string* | :heavy_check_mark: | N/A | 11333b |
| `topRight` | *string* | :heavy_check_mark: | N/A | 0a232d |
| `bottomRight` | *string* | :heavy_check_mark: | N/A | 73958 |
| `bottomLeft` | *string* | :heavy_check_mark: | N/A | 1f5066 |

Some files were not shown because too many files have changed in this diff Show More