Compare commits

...

20 Commits

Author SHA1 Message Date
speakeasybot
2b38478255 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.555.2 2025-06-04 00:13:03 +00:00
speakeasybot
6bd12d8759 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.542.1 2025-05-05 00:13:14 +00:00
speakeasybot
891a7d39a1 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.541.2 2025-05-01 00:13:53 +00:00
speakeasybot
763aa8e800 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.535.1 2025-04-19 00:12:04 +00:00
speakeasybot
7a950ea773 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.531.4 2025-04-14 00:12:56 +00:00
speakeasybot
379a408d74 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.529.1 2025-04-06 00:12:51 +00:00
speakeasybot
2712820397 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.528.1 2025-04-03 00:12:07 +00:00
speakeasybot
c895213ae8 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.526.6 2025-03-31 19:44:01 +00:00
Luke Hagar
c473c9d326 Update workflow.yaml 2025-03-31 14:41:40 -05:00
speakeasybot
3c13bba9de ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.526.6 2025-03-31 19:35:21 +00:00
speakeasybot
650c5043ef ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.526.6 2025-03-31 16:33:24 +00:00
Luke Hagar
0234804578 correcting label override key value 2025-03-31 11:30:53 -05:00
Luke Hagar
60d913c8f9 adjusting codesample labels 2025-03-28 16:58:29 -05:00
speakeasybot
8d9f4bbaf1 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.513.4 2025-03-09 00:10:48 +00:00
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
567 changed files with 32739 additions and 18014 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",
},
};

7
.gitignore vendored
View File

@@ -1,3 +1,10 @@
.DS_Store
**/.speakeasy/temp/
**/.speakeasy/logs/
.DS_Store
/mcp-server
/bin
/.eslintcache
/.speakeasy/reports /.speakeasy/reports
/react-query /react-query
/sdk/models/errors /sdk/models/errors

View File

@@ -4,10 +4,11 @@
!/REACT_QUERY.md !/REACT_QUERY.md
!/**/*.ts !/**/*.ts
!/**/*.js !/**/*.js
!/**/*.mjs
!/**/*.json !/**/*.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

@@ -4,16 +4,20 @@ generation:
maintainOpenAPIOrder: true maintainOpenAPIOrder: true
usageSnippets: usageSnippets:
optionalPropertyRendering: withExample optionalPropertyRendering: withExample
sdkInitStyle: constructor
useClassNamesForArrayFields: true useClassNamesForArrayFields: true
fixes: fixes:
nameResolutionDec2023: true nameResolutionDec2023: true
nameResolutionFeb2025: false
parameterOrderingFeb2024: true parameterOrderingFeb2024: true
requestResponseComponentNamesFeb2024: true requestResponseComponentNamesFeb2024: true
securityFeb2025: false
sharedErrorComponentsApr2025: false
auth: auth:
oAuth2ClientCredentialsEnabled: true oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false oAuth2PasswordEnabled: false
typescript: typescript:
version: 0.32.2 version: 0.38.0
additionalDependencies: additionalDependencies:
dependencies: {} dependencies: {}
devDependencies: {} devDependencies: {}
@@ -23,6 +27,7 @@ typescript:
clientServerStatusCodesAsErrors: true clientServerStatusCodesAsErrors: true
defaultErrorName: SDKError defaultErrorName: SDKError
enableCustomCodeRegions: false enableCustomCodeRegions: false
enableMCPServer: true
enableReactQuery: false enableReactQuery: false
enumFormat: enum enumFormat: enum
flattenGlobalSecurity: true flattenGlobalSecurity: true
@@ -36,6 +41,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.474.0 speakeasyVersion: 1.555.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:b146684d2d813daa8ba29e432a12334838753d0b20183beca8178a74ec4d895a sourceRevisionDigest: sha256:78d07ad78ff60d0e9918696208d8c68a562e170d4e9c431797c02995fb8816d0
sourceBlobDigest: sha256:58f51c4319fcda931d63950fd926e8650e20a2e1375e356bf3a930111e246a58 sourceBlobDigest: sha256:d38dd2a36c1b2fd73409267f7b30c2d5d45d709616141803ea01db424ec68ae4
tags: tags:
- latest - latest
- speakeasy-sdk-regen-1737677393 - speakeasy-sdk-regen-1748995899
- 0.0.3 - 0.0.3
targets: targets:
plexjs: plexjs:
source: plexapi source: plexapi
sourceNamespace: plexapi sourceNamespace: plexapi
sourceRevisionDigest: sha256:b146684d2d813daa8ba29e432a12334838753d0b20183beca8178a74ec4d895a sourceRevisionDigest: sha256:78d07ad78ff60d0e9918696208d8c68a562e170d4e9c431797c02995fb8816d0
sourceBlobDigest: sha256:58f51c4319fcda931d63950fd926e8650e20a2e1375e356bf3a930111e246a58 sourceBlobDigest: sha256:d38dd2a36c1b2fd73409267f7b30c2d5d45d709616141803ea01db424ec68ae4
codeSamplesNamespace: code-samples-typescript-plexjs codeSamplesNamespace: code-samples-typescript-plexjs
codeSamplesRevisionDigest: sha256:96ce210c9c8c0b5ae45ce5fe2e62d64d6914bb1b1b6c18eaee6e1e379fb40e13 codeSamplesRevisionDigest: sha256:132446d6299798fab8378bc875b16290ef126cdb50befe85a0a88bee8bf35799
workflow: workflow:
workflowVersion: 1.0.0 workflowVersion: 1.0.0
speakeasyVersion: latest speakeasyVersion: latest
@@ -43,3 +43,5 @@ workflow:
output: codeSamples.yaml output: codeSamples.yaml
registry: registry:
location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs
labelOverride:
fixedValue: PlexJS

View File

@@ -17,3 +17,5 @@ targets:
output: codeSamples.yaml output: codeSamples.yaml
registry: registry:
location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs
labelOverride:
fixedValue: PlexJS

View File

@@ -21,7 +21,6 @@ specific category of applications.
```typescript ```typescript
import { PlexAPICore } from "@lukehagar/plexjs/core.js"; import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { serverGetServerCapabilities } from "@lukehagar/plexjs/funcs/serverGetServerCapabilities.js"; import { serverGetServerCapabilities } from "@lukehagar/plexjs/funcs/serverGetServerCapabilities.js";
import { SDKValidationError } from "@lukehagar/plexjs/sdk/models/errors/sdkvalidationerror.js";
// Use `PlexAPICore` for best tree-shaking performance. // Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application. // You can create one instance of it to use across an application.
@@ -31,28 +30,12 @@ const plexAPI = new PlexAPICore({
async function run() { async function run() {
const res = await serverGetServerCapabilities(plexAPI); const res = await serverGetServerCapabilities(plexAPI);
if (res.ok) {
switch (true) { const { value: result } = res;
case res.ok: console.log(result);
// The success case will be handled outside of the switch block } else {
break; console.log("serverGetServerCapabilities failed:", res.error);
case res.error instanceof SDKValidationError:
// Pretty-print validation errors.
return console.log(res.error.pretty());
case res.error instanceof Error:
return console.log(res.error);
default:
// TypeScript's type checking will fail on the following line if the above
// cases were not exhaustive.
res.error satisfies never;
throw new Error("Assertion failed: expected error checks to be exhaustive: " + res.error);
} }
const { value: result } = res;
// Handle the result
console.log(result);
} }
run(); run();

348
README.md
View File

@@ -54,6 +54,7 @@ The following SDKs are generated from the OpenAPI Specification. They are automa
* [Authentication](#authentication) * [Authentication](#authentication)
* [Requirements](#requirements) * [Requirements](#requirements)
* [Standalone functions](#standalone-functions) * [Standalone functions](#standalone-functions)
* [File uploads](#file-uploads)
* [Retries](#retries) * [Retries](#retries)
* [Debugging](#debugging) * [Debugging](#debugging)
* [Development](#development) * [Development](#development)
@@ -110,7 +111,6 @@ const plexAPI = new PlexAPI({
async function run() { async function run() {
const result = await plexAPI.server.getServerCapabilities(); const result = await plexAPI.server.getServerCapabilities();
// Handle the result
console.log(result); console.log(result);
} }
@@ -159,13 +159,20 @@ 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
* [getLibrarySectionsAll](docs/sdks/library/README.md#getlibrarysectionsall) - Get Library section media by tag ALL
* [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
* [getMediaArts](docs/sdks/library/README.md#getmediaarts) - Get Media Background Artwork
* [postMediaArts](docs/sdks/library/README.md#postmediaarts) - Upload Media Background Artwork
* [getMediaPosters](docs/sdks/library/README.md#getmediaposters) - Get Media Posters
* [postMediaPoster](docs/sdks/library/README.md#postmediaposter) - Upload Media Poster
* [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
### [log](docs/sdks/log/README.md) ### [log](docs/sdks/log/README.md)
@@ -241,6 +248,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
@@ -256,59 +267,46 @@ run();
<!-- Start Error Handling [errors] --> <!-- Start Error Handling [errors] -->
## Error Handling ## Error Handling
Some methods specify known errors which can be thrown. All the known errors are enumerated in the `sdk/models/errors/errors.ts` module. The known errors for a method are documented under the *Errors* tables in SDK docs. For example, the `getServerCapabilities` method may throw the following errors: This table shows properties which are common on error classes. For full details see [error classes](#error-classes).
| Error Type | Status Code | Content Type | | Property | Type | Description |
| ---------------------------------------- | ----------- | ---------------- | | ------------------- | ---------- | --------------------------------------------------------------------------------------- |
| errors.GetServerCapabilitiesBadRequest | 400 | application/json | | `error.name` | `string` | Error class name eg `SDKError` |
| errors.GetServerCapabilitiesUnauthorized | 401 | application/json | | `error.message` | `string` | Error message |
| errors.SDKError | 4XX, 5XX | \*/\* | | `error.statusCode` | `number` | HTTP status code eg `404` |
| `error.contentType` | `string` | HTTP content type eg `application/json` |
If the method throws an error and it is not captured by the known errors, it will default to throwing a `SDKError`. | `error.body` | `string` | HTTP body. Can be empty string if no body is returned. |
| `error.rawResponse` | `Response` | Raw HTTP response. Access to headers and more. |
| `error.data$` | | Optional. Some errors may contain structured data. [See Error Classes](#error-classes). |
### Example
```typescript ```typescript
import { PlexAPI } from "@lukehagar/plexjs"; import { PlexAPI } from "@lukehagar/plexjs";
import { import * as errors from "@lukehagar/plexjs/sdk/models/errors";
GetServerCapabilitiesBadRequest,
GetServerCapabilitiesUnauthorized,
SDKValidationError,
} from "@lukehagar/plexjs/sdk/models/errors";
const plexAPI = new PlexAPI({ const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>", accessToken: "<YOUR_API_KEY_HERE>",
}); });
async function run() { async function run() {
let result;
try { try {
result = await plexAPI.server.getServerCapabilities(); const result = await plexAPI.server.getServerCapabilities();
// Handle the result
console.log(result); console.log(result);
} catch (err) { } catch (error) {
switch (true) { // Depending on the method different errors may be thrown
// The server response does not match the expected SDK schema if (error instanceof errors.GetServerCapabilitiesBadRequest) {
case (err instanceof SDKValidationError): { console.log(error.message);
// Pretty-print will provide a human-readable multi-line error message console.log(error.data$.errors); // Errors[]
console.error(err.pretty()); console.log(error.data$.rawResponse); // Response
// Raw value may also be inspected }
console.error(err.rawValue);
return; // Fallback error class, if no other more specific error class is matched
} if (error instanceof errors.SDKError) {
case (err instanceof GetServerCapabilitiesBadRequest): { console.log(error.message);
// Handle err.data$: GetServerCapabilitiesBadRequestData console.log(error.statusCode);
console.error(err); console.log(error.body);
return; console.log(error.rawResponse.headers);
}
case (err instanceof GetServerCapabilitiesUnauthorized): {
// Handle err.data$: GetServerCapabilitiesUnauthorizedData
console.error(err);
return;
}
default: {
// Other errors such as network errors, see HTTPClientErrors for more details
throw err;
}
} }
} }
} }
@@ -317,17 +315,178 @@ run();
``` ```
Validation errors can also occur when either method arguments or data returned from the server do not match the expected format. The `SDKValidationError` that is thrown as a result will capture the raw value that failed validation in an attribute called `rawValue`. Additionally, a `pretty()` method is available on this error that can be used to log a nicely formatted multi-line string since validation errors can list many issues and the plain error string may be difficult read when debugging. ### Error Classes
* `SDKError`: The fallback error class, if no other more specific error class is matched.
* `SDKValidationError`: Type mismatch between the data returned from the server and the structure expected by the SDK. This can also be thrown for invalid method arguments. See `error.rawValue` for the raw value and `error.pretty()` for a nicely formatted multi-line string.
* Network errors:
* `ConnectionError`: HTTP client was unable to make a request to a server.
* `RequestTimeoutError`: HTTP request timed out due to an AbortSignal signal.
* `RequestAbortedError`: HTTP request was aborted by the client.
* `InvalidRequestError`: Any input used to create a request is invalid.
* `UnexpectedClientError`: Unrecognised or unexpected error.
In some rare cases, the SDK can fail to get a response from the server or even make the request due to unexpected circumstances such as network conditions. These types of errors are captured in the `sdk/models/errors/httpclienterrors.ts` module: <details><summary>Less common errors, applicable to a subset of methods (156)</summary>
| HTTP Client Error | Description | * [`GetServerCapabilitiesBadRequest`](docs/sdk/models/errors/getservercapabilitiesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
| ---------------------------------------------------- | ---------------------------------------------------- | * [`GetServerPreferencesBadRequest`](docs/sdk/models/errors/getserverpreferencesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
| RequestAbortedError | HTTP request was aborted by the client | * [`GetAvailableClientsBadRequest`](docs/sdk/models/errors/getavailableclientsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
| RequestTimeoutError | HTTP request timed out due to an AbortSignal signal | * [`GetDevicesBadRequest`](docs/sdk/models/errors/getdevicesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
| ConnectionError | HTTP client was unable to make a request to a server | * [`GetMyPlexAccountBadRequest`](docs/sdk/models/errors/getmyplexaccountbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
| InvalidRequestError | Any input used to create a request is invalid | * [`GetResizedPhotoBadRequest`](docs/sdk/models/errors/getresizedphotobadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
| UnexpectedClientError | Unrecognised or unexpected error | * [`GetMediaProvidersBadRequest`](docs/sdk/models/errors/getmediaprovidersbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetServerListBadRequest`](docs/sdk/models/errors/getserverlistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`MarkPlayedBadRequest`](docs/sdk/models/errors/markplayedbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`MarkUnplayedBadRequest`](docs/sdk/models/errors/markunplayedbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`UpdatePlayProgressBadRequest`](docs/sdk/models/errors/updateplayprogressbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetBannerImageBadRequest`](docs/sdk/models/errors/getbannerimagebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetThumbImageBadRequest`](docs/sdk/models/errors/getthumbimagebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetTimelineBadRequest`](docs/sdk/models/errors/gettimelinebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`StartUniversalTranscodeBadRequest`](docs/sdk/models/errors/startuniversaltranscodebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetServerActivitiesBadRequest`](docs/sdk/models/errors/getserveractivitiesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`CancelServerActivitiesBadRequest`](docs/sdk/models/errors/cancelserveractivitiesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetButlerTasksBadRequest`](docs/sdk/models/errors/getbutlertasksbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`StartAllTasksBadRequest`](docs/sdk/models/errors/startalltasksbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`StopAllTasksBadRequest`](docs/sdk/models/errors/stopalltasksbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`StartTaskBadRequest`](docs/sdk/models/errors/starttaskbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`StopTaskBadRequest`](docs/sdk/models/errors/stoptaskbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetCompanionsDataBadRequest`](docs/sdk/models/errors/getcompanionsdatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetUserFriendsBadRequest`](docs/sdk/models/errors/getuserfriendsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetGeoDataBadRequest`](docs/sdk/models/errors/getgeodatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetHomeDataBadRequest`](docs/sdk/models/errors/gethomedatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetServerResourcesBadRequest`](docs/sdk/models/errors/getserverresourcesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetPinBadRequest`](docs/sdk/models/errors/getpinbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetTokenByPinIdBadRequest`](docs/sdk/models/errors/gettokenbypinidbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetGlobalHubsBadRequest`](docs/sdk/models/errors/getglobalhubsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetLibraryHubsBadRequest`](docs/sdk/models/errors/getlibraryhubsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`PerformSearchBadRequest`](docs/sdk/models/errors/performsearchbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`PerformVoiceSearchBadRequest`](docs/sdk/models/errors/performvoicesearchbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetSearchResultsBadRequest`](docs/sdk/models/errors/getsearchresultsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetFileHashBadRequest`](docs/sdk/models/errors/getfilehashbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetRecentlyAddedLibraryBadRequest`](docs/sdk/models/errors/getrecentlyaddedlibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetAllLibrariesBadRequest`](docs/sdk/models/errors/getalllibrariesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetLibraryDetailsBadRequest`](docs/sdk/models/errors/getlibrarydetailsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`DeleteLibraryBadRequest`](docs/sdk/models/errors/deletelibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetLibraryItemsBadRequest`](docs/sdk/models/errors/getlibraryitemsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetLibrarySectionsAllBadRequest`](docs/sdk/models/errors/getlibrarysectionsallbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetRefreshLibraryMetadataBadRequest`](docs/sdk/models/errors/getrefreshlibrarymetadatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetSearchLibraryBadRequest`](docs/sdk/models/errors/getsearchlibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetGenresLibraryBadRequest`](docs/sdk/models/errors/getgenreslibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetCountriesLibraryBadRequest`](docs/sdk/models/errors/getcountrieslibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetActorsLibraryBadRequest`](docs/sdk/models/errors/getactorslibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetSearchAllLibrariesBadRequest`](docs/sdk/models/errors/getsearchalllibrariesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetMediaMetaDataBadRequest`](docs/sdk/models/errors/getmediametadatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetMetadataChildrenBadRequest`](docs/sdk/models/errors/getmetadatachildrenbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetTopWatchedContentBadRequest`](docs/sdk/models/errors/gettopwatchedcontentbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetWatchListBadRequest`](docs/sdk/models/errors/getwatchlistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`LogLineBadRequest`](docs/sdk/models/errors/loglinebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`LogMultiLineBadRequest`](docs/sdk/models/errors/logmultilinebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`EnablePaperTrailBadRequest`](docs/sdk/models/errors/enablepapertrailbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`CreatePlaylistBadRequest`](docs/sdk/models/errors/createplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetPlaylistsBadRequest`](docs/sdk/models/errors/getplaylistsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetPlaylistBadRequest`](docs/sdk/models/errors/getplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`DeletePlaylistBadRequest`](docs/sdk/models/errors/deleteplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`UpdatePlaylistBadRequest`](docs/sdk/models/errors/updateplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetPlaylistContentsBadRequest`](docs/sdk/models/errors/getplaylistcontentsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`ClearPlaylistContentsBadRequest`](docs/sdk/models/errors/clearplaylistcontentsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`AddPlaylistContentsBadRequest`](docs/sdk/models/errors/addplaylistcontentsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`UploadPlaylistBadRequest`](docs/sdk/models/errors/uploadplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetTransientTokenBadRequest`](docs/sdk/models/errors/gettransienttokenbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetSourceConnectionInformationBadRequest`](docs/sdk/models/errors/getsourceconnectioninformationbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetTokenDetailsBadRequest`](docs/sdk/models/errors/gettokendetailsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`PostUsersSignInDataBadRequest`](docs/sdk/models/errors/postuserssignindatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetStatisticsBadRequest`](docs/sdk/models/errors/getstatisticsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetResourcesStatisticsBadRequest`](docs/sdk/models/errors/getresourcesstatisticsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetBandwidthStatisticsBadRequest`](docs/sdk/models/errors/getbandwidthstatisticsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetSessionsBadRequest`](docs/sdk/models/errors/getsessionsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetSessionHistoryBadRequest`](docs/sdk/models/errors/getsessionhistorybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetTranscodeSessionsBadRequest`](docs/sdk/models/errors/gettranscodesessionsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`StopTranscodeSessionBadRequest`](docs/sdk/models/errors/stoptranscodesessionbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetUpdateStatusBadRequest`](docs/sdk/models/errors/getupdatestatusbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`CheckForUpdatesBadRequest`](docs/sdk/models/errors/checkforupdatesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`ApplyUpdatesBadRequest`](docs/sdk/models/errors/applyupdatesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetUsersBadRequest`](docs/sdk/models/errors/getusersbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
* [`GetServerCapabilitiesUnauthorized`](docs/sdk/models/errors/getservercapabilitiesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetServerPreferencesUnauthorized`](docs/sdk/models/errors/getserverpreferencesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetAvailableClientsUnauthorized`](docs/sdk/models/errors/getavailableclientsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetDevicesUnauthorized`](docs/sdk/models/errors/getdevicesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetMyPlexAccountUnauthorized`](docs/sdk/models/errors/getmyplexaccountunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetResizedPhotoUnauthorized`](docs/sdk/models/errors/getresizedphotounauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetMediaProvidersUnauthorized`](docs/sdk/models/errors/getmediaprovidersunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetServerListUnauthorized`](docs/sdk/models/errors/getserverlistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`MarkPlayedUnauthorized`](docs/sdk/models/errors/markplayedunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`MarkUnplayedUnauthorized`](docs/sdk/models/errors/markunplayedunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`UpdatePlayProgressUnauthorized`](docs/sdk/models/errors/updateplayprogressunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetBannerImageUnauthorized`](docs/sdk/models/errors/getbannerimageunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetThumbImageUnauthorized`](docs/sdk/models/errors/getthumbimageunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetTimelineUnauthorized`](docs/sdk/models/errors/gettimelineunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`StartUniversalTranscodeUnauthorized`](docs/sdk/models/errors/startuniversaltranscodeunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetServerActivitiesUnauthorized`](docs/sdk/models/errors/getserveractivitiesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`CancelServerActivitiesUnauthorized`](docs/sdk/models/errors/cancelserveractivitiesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetButlerTasksUnauthorized`](docs/sdk/models/errors/getbutlertasksunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`StartAllTasksUnauthorized`](docs/sdk/models/errors/startalltasksunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`StopAllTasksUnauthorized`](docs/sdk/models/errors/stopalltasksunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`StartTaskUnauthorized`](docs/sdk/models/errors/starttaskunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`StopTaskUnauthorized`](docs/sdk/models/errors/stoptaskunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetCompanionsDataUnauthorized`](docs/sdk/models/errors/getcompanionsdataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetUserFriendsUnauthorized`](docs/sdk/models/errors/getuserfriendsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetGeoDataUnauthorized`](docs/sdk/models/errors/getgeodataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetHomeDataUnauthorized`](docs/sdk/models/errors/gethomedataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetServerResourcesUnauthorized`](docs/sdk/models/errors/getserverresourcesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetGlobalHubsUnauthorized`](docs/sdk/models/errors/getglobalhubsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetLibraryHubsUnauthorized`](docs/sdk/models/errors/getlibraryhubsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`PerformSearchUnauthorized`](docs/sdk/models/errors/performsearchunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`PerformVoiceSearchUnauthorized`](docs/sdk/models/errors/performvoicesearchunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetSearchResultsUnauthorized`](docs/sdk/models/errors/getsearchresultsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetFileHashUnauthorized`](docs/sdk/models/errors/getfilehashunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetRecentlyAddedLibraryUnauthorized`](docs/sdk/models/errors/getrecentlyaddedlibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetAllLibrariesUnauthorized`](docs/sdk/models/errors/getalllibrariesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetLibraryDetailsUnauthorized`](docs/sdk/models/errors/getlibrarydetailsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`DeleteLibraryUnauthorized`](docs/sdk/models/errors/deletelibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetLibraryItemsUnauthorized`](docs/sdk/models/errors/getlibraryitemsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetLibrarySectionsAllUnauthorized`](docs/sdk/models/errors/getlibrarysectionsallunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetRefreshLibraryMetadataUnauthorized`](docs/sdk/models/errors/getrefreshlibrarymetadataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetSearchLibraryUnauthorized`](docs/sdk/models/errors/getsearchlibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetGenresLibraryUnauthorized`](docs/sdk/models/errors/getgenreslibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetCountriesLibraryUnauthorized`](docs/sdk/models/errors/getcountrieslibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetActorsLibraryUnauthorized`](docs/sdk/models/errors/getactorslibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetSearchAllLibrariesUnauthorized`](docs/sdk/models/errors/getsearchalllibrariesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetMediaMetaDataUnauthorized`](docs/sdk/models/errors/getmediametadataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetMetadataChildrenUnauthorized`](docs/sdk/models/errors/getmetadatachildrenunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetTopWatchedContentUnauthorized`](docs/sdk/models/errors/gettopwatchedcontentunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetWatchListUnauthorized`](docs/sdk/models/errors/getwatchlistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`LogLineUnauthorized`](docs/sdk/models/errors/loglineunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`LogMultiLineUnauthorized`](docs/sdk/models/errors/logmultilineunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`EnablePaperTrailUnauthorized`](docs/sdk/models/errors/enablepapertrailunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`CreatePlaylistUnauthorized`](docs/sdk/models/errors/createplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetPlaylistsUnauthorized`](docs/sdk/models/errors/getplaylistsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetPlaylistUnauthorized`](docs/sdk/models/errors/getplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`DeletePlaylistUnauthorized`](docs/sdk/models/errors/deleteplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`UpdatePlaylistUnauthorized`](docs/sdk/models/errors/updateplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetPlaylistContentsUnauthorized`](docs/sdk/models/errors/getplaylistcontentsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`ClearPlaylistContentsUnauthorized`](docs/sdk/models/errors/clearplaylistcontentsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`AddPlaylistContentsUnauthorized`](docs/sdk/models/errors/addplaylistcontentsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`UploadPlaylistUnauthorized`](docs/sdk/models/errors/uploadplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetTransientTokenUnauthorized`](docs/sdk/models/errors/gettransienttokenunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetSourceConnectionInformationUnauthorized`](docs/sdk/models/errors/getsourceconnectioninformationunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetTokenDetailsUnauthorized`](docs/sdk/models/errors/gettokendetailsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`PostUsersSignInDataUnauthorized`](docs/sdk/models/errors/postuserssignindataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetStatisticsUnauthorized`](docs/sdk/models/errors/getstatisticsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetResourcesStatisticsUnauthorized`](docs/sdk/models/errors/getresourcesstatisticsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetBandwidthStatisticsUnauthorized`](docs/sdk/models/errors/getbandwidthstatisticsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetSessionsUnauthorized`](docs/sdk/models/errors/getsessionsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetSessionHistoryUnauthorized`](docs/sdk/models/errors/getsessionhistoryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetTranscodeSessionsUnauthorized`](docs/sdk/models/errors/gettranscodesessionsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`StopTranscodeSessionUnauthorized`](docs/sdk/models/errors/stoptranscodesessionunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetUpdateStatusUnauthorized`](docs/sdk/models/errors/getupdatestatusunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`CheckForUpdatesUnauthorized`](docs/sdk/models/errors/checkforupdatesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`ApplyUpdatesUnauthorized`](docs/sdk/models/errors/applyupdatesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetUsersUnauthorized`](docs/sdk/models/errors/getusersunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
* [`GetTokenByPinIdResponseBody`](docs/sdk/models/errors/gettokenbypinidresponsebody.md): Not Found or Expired. Status code `404`. Applicable to 1 of 84 methods.*
* [`GetServerIdentityRequestTimeout`](docs/sdk/models/errors/getserveridentityrequesttimeout.md): Request Timeout. Status code `408`. Applicable to 1 of 84 methods.*
</details>
\* Check [the method documentation](#available-resources-and-operations) to see if the error is applicable.
<!-- End Error Handling [errors] --> <!-- End Error Handling [errors] -->
<!-- Start Server Selection [server] --> <!-- Start Server Selection [server] -->
@@ -336,13 +495,38 @@ 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: "4982:bc2a:b4f8:efb5:2394:5bc3:ab4f:0e6d",
port: "44765",
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.server.getServerCapabilities();
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";
@@ -354,7 +538,6 @@ const plexAPI = new PlexAPI({
async function run() { async function run() {
const result = await plexAPI.server.getServerCapabilities(); const result = await plexAPI.server.getServerCapabilities();
// Handle the result
console.log(result); console.log(result);
} }
@@ -377,7 +560,6 @@ async function run() {
serverURL: "https://plex.tv/api/v2", serverURL: "https://plex.tv/api/v2",
}); });
// Handle the result
console.log(result); console.log(result);
} }
@@ -457,7 +639,6 @@ const plexAPI = new PlexAPI({
async function run() { async function run() {
const result = await plexAPI.server.getServerCapabilities(); const result = await plexAPI.server.getServerCapabilities();
// Handle the result
console.log(result); console.log(result);
} }
@@ -502,18 +683,25 @@ 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
- [`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 - [`libraryGetLibrarySectionsAll`](docs/sdks/library/README.md#getlibrarysectionsall) - Get Library section media by tag ALL
- [`libraryGetMediaArts`](docs/sdks/library/README.md#getmediaarts) - Get Media Background Artwork
- [`libraryGetMediaMetaData`](docs/sdks/library/README.md#getmediametadata) - Get Media Metadata
- [`libraryGetMediaPosters`](docs/sdks/library/README.md#getmediaposters) - Get Media Posters
- [`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
- [`libraryGetRecentlyAddedLibrary`](docs/sdks/library/README.md#getrecentlyaddedlibrary) - Get Recently Added - [`libraryGetRecentlyAddedLibrary`](docs/sdks/library/README.md#getrecentlyaddedlibrary) - Get Recently Added
- [`libraryGetRefreshLibraryMetadata`](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library - [`libraryGetRefreshLibraryMetadata`](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
- [`libraryGetSearchAllLibraries`](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries - [`libraryGetSearchAllLibraries`](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
- [`libraryGetSearchLibrary`](docs/sdks/library/README.md#getsearchlibrary) - Search Library - [`libraryGetSearchLibrary`](docs/sdks/library/README.md#getsearchlibrary) - Search Library
- [`libraryGetTopWatchedContent`](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content - [`libraryGetTopWatchedContent`](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
- [`libraryPostMediaArts`](docs/sdks/library/README.md#postmediaarts) - Upload Media Background Artwork
- [`libraryPostMediaPoster`](docs/sdks/library/README.md#postmediaposter) - Upload Media Poster
- [`logEnablePaperTrail`](docs/sdks/log/README.md#enablepapertrail) - Enabling Papertrail - [`logEnablePaperTrail`](docs/sdks/log/README.md#enablepapertrail) - Enabling Papertrail
- [`logLogLine`](docs/sdks/log/README.md#logline) - Logging a single line message. - [`logLogLine`](docs/sdks/log/README.md#logline) - Logging a single line message.
- [`logLogMultiLine`](docs/sdks/log/README.md#logmultiline) - Logging a multi-line message - [`logLogMultiLine`](docs/sdks/log/README.md#logmultiline) - Logging a multi-line message
@@ -560,6 +748,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
@@ -567,6 +756,41 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
</details> </details>
<!-- End Standalone functions [standalone-funcs] --> <!-- End Standalone functions [standalone-funcs] -->
<!-- Start File uploads [file-upload] -->
## File uploads
Certain SDK methods accept files as part of a multi-part request. It is possible and typically recommended to upload files as a stream rather than reading the entire contents into memory. This avoids excessive memory consumption and potentially crashing with out-of-memory errors when working with very large files. The following example demonstrates how to attach a file stream to a request.
> [!TIP]
>
> Depending on your JavaScript runtime, there are convenient utilities that return a handle to a file without reading the entire contents into memory:
>
> - **Node.js v20+:** Since v20, Node.js comes with a native `openAsBlob` function in [`node:fs`](https://nodejs.org/docs/latest-v20.x/api/fs.html#fsopenasblobpath-options).
> - **Bun:** The native [`Bun.file`](https://bun.sh/docs/api/file-io#reading-files-bun-file) function produces a file handle that can be used for streaming file uploads.
> - **Browsers:** All supported browsers return an instance to a [`File`](https://developer.mozilla.org/en-US/docs/Web/API/File) when reading the value from an `<input type="file">` element.
> - **Node.js v18:** A file stream can be created using the `fileFrom` helper from [`fetch-blob/from.js`](https://www.npmjs.com/package/fetch-blob).
```typescript
import { PlexAPI } from "@lukehagar/plexjs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.library.postMediaArts(
2268,
"https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b",
);
console.log(result);
}
run();
```
<!-- End File uploads [file-upload] -->
<!-- Start Retries [retries] --> <!-- Start Retries [retries] -->
## Retries ## Retries
@@ -594,7 +818,6 @@ async function run() {
}, },
}); });
// Handle the result
console.log(result); console.log(result);
} }
@@ -623,7 +846,6 @@ const plexAPI = new PlexAPI({
async function run() { async function run() {
const result = await plexAPI.server.getServerCapabilities(); const result = await plexAPI.server.getServerCapabilities();
// Handle the result
console.log(result); console.log(result);
} }

View File

@@ -1178,4 +1178,174 @@ Based on:
### Generated ### Generated
- [typescript v0.32.2] . - [typescript v0.32.2] .
### Releases ### Releases
- [NPM v0.32.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.32.2 - . - [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 - .
## 2025-03-09 00:09:12
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.513.4 (2.545.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.35.1] .
### Releases
- [NPM v0.35.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.1 - .
## 2025-03-31 16:31:46
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.526.6 (2.563.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.35.2] .
### Releases
- [NPM v0.35.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.2 - .
## 2025-03-31 19:33:46
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.526.6 (2.563.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.35.3] .
### Releases
- [NPM v0.35.3] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.3 - .
## 2025-03-31 19:42:25
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.526.6 (2.563.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.35.4] .
### Releases
- [NPM v0.35.4] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.4 - .
## 2025-04-03 00:10:29
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.528.1 (2.565.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.36.0] .
### Releases
- [NPM v0.36.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.36.0 - .
## 2025-04-06 00:11:19
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.529.1 (2.566.5) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.36.1] .
### Releases
- [NPM v0.36.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.36.1 - .
## 2025-04-14 00:11:23
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.531.4 (2.570.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.36.2] .
### Releases
- [NPM v0.36.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.36.2 - .
## 2025-04-19 00:10:19
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.535.1 (2.585.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.37.0] .
### Releases
- [NPM v0.37.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.37.0 - .
## 2025-05-01 00:12:16
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.541.2 (2.595.4) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.37.1] .
### Releases
- [NPM v0.37.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.37.1 - .
## 2025-05-05 00:11:37
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.542.1 (2.597.9) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.37.2] .
### Releases
- [NPM v0.37.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.37.2 - .
## 2025-06-04 00:11:21
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.555.2 (2.620.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.38.0] .
### Releases
- [NPM v0.38.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.38.0 - .

View File

@@ -9,7 +9,6 @@ const plexAPI = new PlexAPI({
async function run() { async function run() {
const result = await plexAPI.server.getServerCapabilities(); const result = await plexAPI.server.getServerCapabilities();
// Handle the result
console.log(result); console.log(result);
} }

File diff suppressed because it is too large Load Diff

View File

@@ -1,11 +1,11 @@
# GetOnDeckUnauthorized # GetActorsLibraryBadRequest
Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage ## Example Usage
```typescript ```typescript
import { GetOnDeckUnauthorized } from "@lukehagar/plexjs/sdk/models/errors"; import { GetActorsLibraryBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model // No examples available for this model
``` ```
@@ -14,5 +14,5 @@ import { GetOnDeckUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
| Field | Type | Required | Description | | Field | Type | Required | Description |
| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| `errors` | [errors.GetOnDeckLibraryErrors](../../../sdk/models/errors/getondecklibraryerrors.md)[] | :heavy_minus_sign: | N/A | | `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 | | `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 @@
# 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 @@
# GetLibrarySectionsAllBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetLibrarySectionsAllBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetLibrarySectionsAllErrors](../../../sdk/models/errors/getlibrarysectionsallerrors.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 @@
# GetLibrarySectionsAllErrors
## Example Usage
```typescript
import { GetLibrarySectionsAllErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetLibrarySectionsAllErrors = {
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 @@
# GetLibrarySectionsAllLibraryErrors
## Example Usage
```typescript
import { GetLibrarySectionsAllLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetLibrarySectionsAllLibraryErrors = {
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 @@
# GetLibrarySectionsAllUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Example Usage
```typescript
import { GetLibrarySectionsAllUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| `errors` | [errors.GetLibrarySectionsAllLibraryErrors](../../../sdk/models/errors/getlibrarysectionsalllibraryerrors.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

@@ -1,18 +0,0 @@
# GetOnDeckBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Example Usage
```typescript
import { GetOnDeckBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
// No examples available for this model
```
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `errors` | [errors.GetOnDeckErrors](../../../sdk/models/errors/getondeckerrors.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

@@ -1,11 +1,11 @@
# GetOnDeckErrors # GetUsersErrors
## Example Usage ## Example Usage
```typescript ```typescript
import { GetOnDeckErrors } from "@lukehagar/plexjs/sdk/models/errors"; import { GetUsersErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetOnDeckErrors = { let value: GetUsersErrors = {
code: 1000, code: 1000,
message: "X-Plex-Client-Identifier is missing", message: "X-Plex-Client-Identifier is missing",
status: 400, status: 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

@@ -1,11 +1,11 @@
# GetOnDeckLibraryErrors # GetUsersUsersErrors
## Example Usage ## Example Usage
```typescript ```typescript
import { GetOnDeckLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors"; import { GetUsersUsersErrors } from "@lukehagar/plexjs/sdk/models/errors";
let value: GetOnDeckLibraryErrors = { let value: GetUsersUsersErrors = {
code: 1001, code: 1001,
message: "User could not be authenticated", message: "User could not be authenticated",
status: 401, status: 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: 1207.42,
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

@@ -5,38 +5,7 @@
```typescript ```typescript
import { AddPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { AddPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: AddPlaylistContentsResponse = { let value: AddPlaylistContentsResponse = {};
contentType: "<value>",
statusCode: 503,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
mediaContainer: {
size: 1,
leafCountAdded: 1,
leafCountRequested: 1,
metadata: [
{
ratingKey: "94",
key: "/playlists/94/items",
guid:
"com.plexapp.agents.none://972e3047-83d6-4848-a000-261f0af26ba2",
type: "playlist",
title: "A great playlist",
summary: "One of my great playlists",
smart: false,
playlistType: "video",
composite: "/playlists/94/composite/1705800070",
duration: 423000,
leafCount: 3,
addedAt: 1705716458,
updatedAt: 1705800070,
},
],
},
},
};
``` ```
## Fields ## Fields

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

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

View File

@@ -0,0 +1,21 @@
# Attributes
Attributes associated with the marker.
## Example Usage
```typescript
import { Attributes } from "@lukehagar/plexjs/sdk/models/operations";
let value: Attributes = {
id: 306970,
version: 4,
};
```
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- |
| `id` | *number* | :heavy_check_mark: | The identifier for the attributes. | 306970 |
| `version` | *number* | :heavy_minus_sign: | The version number of the marker attributes. | 4 |

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: 575569,
}; };
``` ```

View File

@@ -5,13 +5,7 @@
```typescript ```typescript
import { CancelServerActivitiesResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { CancelServerActivitiesResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: CancelServerActivitiesResponse = { let value: CancelServerActivitiesResponse = {};
contentType: "<value>",
statusCode: 417,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
};
``` ```
## Fields ## Fields

View File

@@ -0,0 +1,29 @@
# Chapter
The thumbnail for the chapter
## Example Usage
```typescript
import { Chapter } from "@lukehagar/plexjs/sdk/models/operations";
let value: Chapter = {
id: 4,
filter: "thumb=4",
index: 1,
startTimeOffset: 0,
endTimeOffset: 100100,
thumb: "/library/media/46883/chapterImages/1",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ |
| `id` | *number* | :heavy_check_mark: | N/A | 4 |
| `filter` | *string* | :heavy_check_mark: | N/A | thumb=4 |
| `index` | *number* | :heavy_check_mark: | N/A | 1 |
| `startTimeOffset` | *number* | :heavy_check_mark: | N/A | 0 |
| `endTimeOffset` | *number* | :heavy_check_mark: | N/A | 100100 |
| `thumb` | *string* | :heavy_check_mark: | N/A | /library/media/46883/chapterImages/1 |

View File

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

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: 5077.01,
}; };
``` ```

View File

@@ -5,13 +5,7 @@
```typescript ```typescript
import { ClearPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { ClearPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: ClearPlaylistContentsResponse = { let value: ClearPlaylistContentsResponse = {};
contentType: "<value>",
statusCode: 307,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
};
``` ```
## Fields ## Fields

View File

@@ -6,12 +6,12 @@
import { Collection } from "@lukehagar/plexjs/sdk/models/operations"; import { Collection } from "@lukehagar/plexjs/sdk/models/operations";
let value: Collection = { let value: Collection = {
tag: "Working NL Subs", tag: "My Awesome Collection",
}; };
``` ```
## Fields ## Fields
| Field | Type | Required | Description | Example | | Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- |
| `tag` | *string* | :heavy_minus_sign: | N/A | Working NL Subs | | `tag` | *string* | :heavy_check_mark: | The user-made collection this media item belongs to | My Awesome Collection |

View File

@@ -7,12 +7,12 @@ import { Connections, Protocol } from "@lukehagar/plexjs/sdk/models/operations";
let value: Connections = { let value: Connections = {
protocol: Protocol.Http, protocol: Protocol.Http,
address: "21611 Schuster Cliffs", address: "84577 W 9th Street",
port: 54915, port: 610910,
uri: "https://wobbly-instance.org/", uri: "https://dearest-custom.net",
local: false, local: true,
relay: false, relay: true,
iPv6: false, iPv6: true,
}; };
``` ```

View File

@@ -1,17 +1,23 @@
# Country # Country
The filter query string for country media items.
## Example Usage ## Example Usage
```typescript ```typescript
import { Country } from "@lukehagar/plexjs/sdk/models/operations"; import { Country } from "@lukehagar/plexjs/sdk/models/operations";
let value: Country = { let value: Country = {
id: 259,
tag: "United States of America", tag: "United States of America",
filter: "country=19",
}; };
``` ```
## Fields ## Fields
| Field | Type | Required | Description | Example | | Field | Type | Required | Description | Example |
| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `tag` | *string* | :heavy_minus_sign: | N/A | United States of America | | `id` | *number* | :heavy_check_mark: | The unique identifier for the country.<br/>NOTE: This is different for each Plex server and is not globally unique.<br/> | 259 |
| `tag` | *string* | :heavy_check_mark: | The country of origin of this media item | United States of America |
| `filter` | *string* | :heavy_check_mark: | N/A | country=19 |

View File

@@ -7,13 +7,16 @@ 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.Photo;
``` ```
## Values ## Values
| Name | Value | This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
| ------- | ------- |
| `Audio` | audio | | Name | Value |
| `Video` | video | | ---------------------- | ---------------------- |
| `Photo` | photo | | `Audio` | audio |
| `Video` | video |
| `Photo` | photo |
| - | `Unrecognized<string>` |

View File

@@ -7,9 +7,9 @@ import { CreatePlaylistQueryParamType, CreatePlaylistRequest, Smart } from "@luk
let value: CreatePlaylistRequest = { let value: CreatePlaylistRequest = {
title: "<value>", title: "<value>",
type: CreatePlaylistQueryParamType.Photo, type: CreatePlaylistQueryParamType.Audio,
smart: Smart.One, smart: Smart.Zero,
uri: "https://enchanted-disclosure.com/", uri: "https://courageous-futon.net",
}; };
``` ```

View File

@@ -5,39 +5,7 @@
```typescript ```typescript
import { CreatePlaylistResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { CreatePlaylistResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: CreatePlaylistResponse = { let value: CreatePlaylistResponse = {};
contentType: "<value>",
statusCode: 302,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
mediaContainer: {
size: 7,
metadata: [
{
ratingKey: "96",
key: "/playlists/96/items",
guid:
"com.plexapp.agents.none://a2f92937-1408-40e2-b022-63a8a9377e55",
type: "playlist",
title: "A Great Playlist",
summary: "What a great playlist",
smart: false,
playlistType: "video",
icon: "playlist://image.smart",
viewCount: 1,
lastViewedAt: 1705719589,
leafCount: 1,
addedAt: 1705719589,
updatedAt: 1705724593,
composite: "/playlists/96/composite/1705724593",
duration: 141000,
},
],
},
},
};
``` ```
## Fields ## Fields

View File

@@ -5,13 +5,7 @@
```typescript ```typescript
import { DeleteLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { DeleteLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: DeleteLibraryResponse = { let value: DeleteLibraryResponse = {};
contentType: "<value>",
statusCode: 507,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
};
``` ```
## Fields ## Fields

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: 5840.32,
}; };
``` ```

View File

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

View File

@@ -6,12 +6,21 @@
import { Director } from "@lukehagar/plexjs/sdk/models/operations"; import { Director } from "@lukehagar/plexjs/sdk/models/operations";
let value: Director = { let value: Director = {
tag: "James Cameron", id: 126522,
filter: "director=235876",
tag: "Danny Boyle",
tagKey: "5d776831151a60001f24d031",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
}; };
``` ```
## Fields ## Fields
| Field | Type | Required | Description | Example | | Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `tag` | *string* | :heavy_minus_sign: | N/A | James Cameron | | `id` | *number* | :heavy_check_mark: | Unique identifier for the director. | 126522 |
| `filter` | *string* | :heavy_check_mark: | The filter string used to query this director. | director=235876 |
| `tag` | *string* | :heavy_check_mark: | The role of Director | Danny Boyle |
| `tagKey` | *string* | :heavy_check_mark: | A unique 24-character hexadecimal key associated with the director's tag, used for internal identification. | 5d776831151a60001f24d031 |
| `thumb` | *string* | :heavy_minus_sign: | The absolute URL of the thumbnail image for the director. | https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg |

View File

@@ -13,7 +13,10 @@ let value: EnableCreditsMarkerGeneration =
## Values ## Values
| Name | Value | This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
| ---------------- | ---------------- |
| `LibraryDefault` | -1 | | Name | Value |
| `Disabled` | 0 | | ---------------------- | ---------------------- |
| `LibraryDefault` | -1 |
| `Disabled` | 0 |
| - | `Unrecognized<string>` |

View File

@@ -5,13 +5,7 @@
```typescript ```typescript
import { EnablePaperTrailResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { EnablePaperTrailResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: EnablePaperTrailResponse = { let value: EnablePaperTrailResponse = {};
contentType: "<value>",
statusCode: 203,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
};
``` ```
## Fields ## Fields

View File

@@ -12,8 +12,11 @@ let value: EpisodeSort = EpisodeSort.OldestFirst;
## Values ## Values
| Name | Value | This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
| ---------------- | ---------------- |
| `LibraryDefault` | -1 | | Name | Value |
| `OldestFirst` | 0 | | ---------------------- | ---------------------- |
| `NewestFirst` | 1 | | `LibraryDefault` | -1 |
| `OldestFirst` | 0 |
| `NewestFirst` | 1 |
| - | `Unrecognized<string>` |

View File

@@ -0,0 +1,17 @@
# Extras
## Example Usage
```typescript
import { Extras } from "@lukehagar/plexjs/sdk/models/operations";
let value: Extras = {
size: 1,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------- | ----------------------- | ----------------------- | ----------------------- | ----------------------- |
| `size` | *number* | :heavy_minus_sign: | The size of the extras. | 1 |

View File

@@ -12,8 +12,11 @@ let value: Filter = Filter.Available;
## Values ## Values
| Name | Value | This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
| ----------- | ----------- |
| `All` | all | | Name | Value |
| `Available` | available | | ---------------------- | ---------------------- |
| `Released` | released | | `All` | all |
| `Available` | available |
| `Released` | released |
| - | `Unrecognized<string>` |

View File

@@ -12,8 +12,11 @@ let value: FlattenSeasons = FlattenSeasons.Show;
## Values ## Values
| Name | Value | This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
| ---------------- | ---------------- |
| `LibraryDefault` | -1 | | Name | Value |
| `Hide` | 0 | | ---------------------- | ---------------------- |
| `Show` | 1 | | `LibraryDefault` | -1 |
| `Hide` | 0 |
| `Show` | 1 |
| - | `Unrecognized<string>` |

View File

@@ -10,7 +10,6 @@ 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,

View File

@@ -1,17 +1,23 @@
# Genre # Genre
The filter query string for similar items.
## Example Usage ## Example Usage
```typescript ```typescript
import { Genre } from "@lukehagar/plexjs/sdk/models/operations"; import { Genre } from "@lukehagar/plexjs/sdk/models/operations";
let value: Genre = { let value: Genre = {
tag: "Adventure", id: 259,
filter: "genre=19",
tag: "Crime",
}; };
``` ```
## Fields ## Fields
| Field | Type | Required | Description | Example | | Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `tag` | *string* | :heavy_minus_sign: | N/A | Adventure | | `id` | *number* | :heavy_check_mark: | The unique identifier for the genre.<br/>NOTE: This is different for each Plex server and is not globally unique.<br/> | 259 |
| `filter` | *string* | :heavy_check_mark: | N/A | genre=19 |
| `tag` | *string* | :heavy_check_mark: | The genre name of this media-item<br/> | Crime |

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,35 @@
# 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
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
| Name | Value |
| ---------------------- | ---------------------- |
| `Movie` | 1 |
| `TvShow` | 2 |
| `Season` | 3 |
| `Episode` | 4 |
| `Artist` | 5 |
| `Album` | 6 |
| `Track` | 7 |
| `PhotoAlbum` | 8 |
| `Photo` | 9 |
| - | `Unrecognized<number>` |

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,18 @@
# GetActorsLibraryResponse
## Example Usage
```typescript
import { GetActorsLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetActorsLibraryResponse = {};
```
## 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

@@ -3,60 +3,55 @@
## Example Usage ## Example Usage
```typescript ```typescript
import { GetAllLibrariesDirectory } from "@lukehagar/plexjs/sdk/models/operations"; import { GetAllLibrariesDirectory, GetAllLibrariesType, Hidden } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllLibrariesDirectory = { let value: GetAllLibrariesDirectory = {
allowSync: true, allowSync: false,
art: "/:/resources/movie-fanart.jpg", art: "/:/resources/show-fanart.jpg",
composite: "/library/sections/1/composite/1705615584", composite: "/library/sections/1/composite/1743824484",
filters: true, filters: true,
refreshing: false, refreshing: true,
thumb: "/:/resources/movie.png", thumb: "/:/resources/show.png",
key: "1", key: "1",
type: "movie", type: GetAllLibrariesType.Movie,
title: "Movies", title: "Movies",
agent: "tv.plex.agents.movie", agent: "tv.plex.agents.movie",
scanner: "Plex Movie", scanner: "Plex Movie",
language: "en-US", language: "en-US",
uuid: "322a231a-b7f7-49f5-920f-14c61199cd30", uuid: "e69655a2-ef48-4aba-bb19-01e7d3cc34d6",
updatedAt: 1556281940, updatedAt: 1556281940,
createdAt: 1556281940, createdAt: 1556281940,
scannedAt: 1556281940, scannedAt: 1556281940,
content: true, content: true,
directory: true, directory: true,
contentChangedAt: 1556281940, contentChangedAt: 9173960,
hidden: 0, hidden: Hidden.ExcludeHomeScreen,
location: [ location: [],
{
id: 1,
path: "/movies",
},
],
}; };
``` ```
## Fields ## Fields
| Field | Type | Required | Description | Example | | Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `allowSync` | *boolean* | :heavy_check_mark: | N/A | true | | `allowSync` | *boolean* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
| `art` | *string* | :heavy_check_mark: | N/A | /:/resources/movie-fanart.jpg | | `art` | *string* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
| `composite` | *string* | :heavy_check_mark: | N/A | /library/sections/1/composite/1705615584 | | `composite` | *string* | :heavy_check_mark: | The relative path to the composite media item. | /library/sections/1/composite/1743824484 |
| `filters` | *boolean* | :heavy_check_mark: | N/A | true | | `filters` | *boolean* | :heavy_check_mark: | UNKNOWN | true |
| `refreshing` | *boolean* | :heavy_check_mark: | N/A | false | | `refreshing` | *boolean* | :heavy_check_mark: | Indicates whether the library is currently being refreshed or updated | true |
| `thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/movie.png | | `thumb` | *string* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png |
| `key` | *string* | :heavy_check_mark: | N/A | 1 | | `key` | *string* | :heavy_check_mark: | The library key representing the unique identifier | 1 |
| `type` | *string* | :heavy_check_mark: | N/A | movie | | `type` | [operations.GetAllLibrariesType](../../../sdk/models/operations/getalllibrariestype.md) | :heavy_check_mark: | N/A | movie |
| `title` | *string* | :heavy_check_mark: | N/A | Movies | | `title` | *string* | :heavy_check_mark: | The title of the library | Movies |
| `agent` | *string* | :heavy_check_mark: | N/A | tv.plex.agents.movie | | `agent` | *string* | :heavy_check_mark: | The Plex agent used to match and retrieve media metadata. | tv.plex.agents.movie |
| `scanner` | *string* | :heavy_check_mark: | N/A | Plex Movie | | `scanner` | *string* | :heavy_check_mark: | UNKNOWN | Plex Movie |
| `language` | *string* | :heavy_check_mark: | N/A | en-US | | `language` | *string* | :heavy_check_mark: | The Plex library language that has been set | en-US |
| `uuid` | *string* | :heavy_check_mark: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 | | `uuid` | *string* | :heavy_check_mark: | The universally unique identifier for the library. | e69655a2-ef48-4aba-bb19-01e7d3cc34d6 |
| `updatedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | | `updatedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
| `createdAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | | `createdAt` | *number* | :heavy_minus_sign: | N/A | 1556281940 |
| `scannedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | | `scannedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
| `content` | *boolean* | :heavy_check_mark: | N/A | true | | `content` | *boolean* | :heavy_check_mark: | UNKNOWN | true |
| `directory` | *boolean* | :heavy_check_mark: | N/A | true | | `directory` | *boolean* | :heavy_check_mark: | UNKNOWN | true |
| `contentChangedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | | `contentChangedAt` | *number* | :heavy_check_mark: | Timestamp (in seconds) representing the last time the content was modified.<br/>NOTE: Some Plex server have some absurd values for this field, like 8457612157633039800 so it should be int64<br/> | 9173960 |
| `hidden` | *number* | :heavy_check_mark: | N/A | 0 | | `hidden` | [operations.Hidden](../../../sdk/models/operations/hidden.md) | :heavy_minus_sign: | The Plex library visibility setting | 1 |
| `location` | [operations.GetAllLibrariesLocation](../../../sdk/models/operations/getalllibrarieslocation.md)[] | :heavy_check_mark: | N/A | | | `location` | [operations.GetAllLibrariesLocation](../../../sdk/models/operations/getalllibrarieslocation.md)[] | :heavy_check_mark: | N/A | |

View File

@@ -7,13 +7,13 @@ import { GetAllLibrariesLocation } from "@lukehagar/plexjs/sdk/models/operations
let value: GetAllLibrariesLocation = { let value: GetAllLibrariesLocation = {
id: 1, id: 1,
path: "/movies", path: "/Movies",
}; };
``` ```
## Fields ## Fields
| Field | Type | Required | Description | Example | | Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | | --------------------------- | --------------------------- | --------------------------- | --------------------------- | --------------------------- |
| `id` | *number* | :heavy_check_mark: | N/A | 1 | | `id` | *number* | :heavy_check_mark: | The ID of the location. | 1 |
| `path` | *string* | :heavy_check_mark: | N/A | /movies | | `path` | *string* | :heavy_check_mark: | The path to the media item. | /Movies |

View File

@@ -3,38 +3,38 @@
## Example Usage ## Example Usage
```typescript ```typescript
import { GetAllLibrariesMediaContainer } from "@lukehagar/plexjs/sdk/models/operations"; import { GetAllLibrariesMediaContainer, GetAllLibrariesType, Hidden } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllLibrariesMediaContainer = { let value: GetAllLibrariesMediaContainer = {
size: 5, size: 50,
allowSync: false, allowSync: false,
title1: "Plex Library", title1: "TV Series",
directory: [ directory: [
{ {
allowSync: true, allowSync: false,
art: "/:/resources/movie-fanart.jpg", art: "/:/resources/show-fanart.jpg",
composite: "/library/sections/1/composite/1705615584", composite: "/library/sections/1/composite/1743824484",
filters: true, filters: true,
refreshing: false, refreshing: true,
thumb: "/:/resources/movie.png", thumb: "/:/resources/show.png",
key: "1", key: "1",
type: "movie", type: GetAllLibrariesType.Movie,
title: "Movies", title: "Movies",
agent: "tv.plex.agents.movie", agent: "tv.plex.agents.movie",
scanner: "Plex Movie", scanner: "Plex Movie",
language: "en-US", language: "en-US",
uuid: "322a231a-b7f7-49f5-920f-14c61199cd30", uuid: "e69655a2-ef48-4aba-bb19-01e7d3cc34d6",
updatedAt: 1556281940, updatedAt: 1556281940,
createdAt: 1556281940, createdAt: 1556281940,
scannedAt: 1556281940, scannedAt: 1556281940,
content: true, content: true,
directory: true, directory: true,
contentChangedAt: 1556281940, contentChangedAt: 9173960,
hidden: 0, hidden: Hidden.ExcludeHomeScreen,
location: [ location: [
{ {
id: 1, id: 1,
path: "/movies", path: "/Movies",
}, },
], ],
}, },
@@ -46,7 +46,7 @@ let value: GetAllLibrariesMediaContainer = {
| Field | Type | Required | Description | Example | | Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `size` | *number* | :heavy_check_mark: | N/A | 5 | | `size` | *number* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
| `allowSync` | *boolean* | :heavy_check_mark: | N/A | false | | `allowSync` | *boolean* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
| `title1` | *string* | :heavy_check_mark: | N/A | Plex Library | | `title1` | *string* | :heavy_check_mark: | The primary title of the media container. | TV Series |
| `directory` | [operations.GetAllLibrariesDirectory](../../../sdk/models/operations/getalllibrariesdirectory.md)[] | :heavy_check_mark: | N/A | | | `directory` | [operations.GetAllLibrariesDirectory](../../../sdk/models/operations/getalllibrariesdirectory.md)[] | :heavy_minus_sign: | N/A | |

View File

@@ -5,50 +5,7 @@
```typescript ```typescript
import { GetAllLibrariesResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { GetAllLibrariesResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllLibrariesResponse = { let value: GetAllLibrariesResponse = {};
contentType: "<value>",
statusCode: 308,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
mediaContainer: {
size: 5,
allowSync: false,
title1: "Plex Library",
directory: [
{
allowSync: true,
art: "/:/resources/movie-fanart.jpg",
composite: "/library/sections/1/composite/1705615584",
filters: true,
refreshing: false,
thumb: "/:/resources/movie.png",
key: "1",
type: "movie",
title: "Movies",
agent: "tv.plex.agents.movie",
scanner: "Plex Movie",
language: "en-US",
uuid: "322a231a-b7f7-49f5-920f-14c61199cd30",
updatedAt: 1556281940,
createdAt: 1556281940,
scannedAt: 1556281940,
content: true,
directory: true,
contentChangedAt: 1556281940,
hidden: 0,
location: [
{
id: 1,
path: "/movies",
},
],
},
],
},
},
};
``` ```
## Fields ## Fields

View File

@@ -5,39 +5,39 @@ The libraries available on the Server
## Example Usage ## Example Usage
```typescript ```typescript
import { GetAllLibrariesResponseBody } from "@lukehagar/plexjs/sdk/models/operations"; import { GetAllLibrariesResponseBody, GetAllLibrariesType, Hidden } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllLibrariesResponseBody = { let value: GetAllLibrariesResponseBody = {
mediaContainer: { mediaContainer: {
size: 5, size: 50,
allowSync: false, allowSync: false,
title1: "Plex Library", title1: "TV Series",
directory: [ directory: [
{ {
allowSync: true, allowSync: false,
art: "/:/resources/movie-fanart.jpg", art: "/:/resources/show-fanart.jpg",
composite: "/library/sections/1/composite/1705615584", composite: "/library/sections/1/composite/1743824484",
filters: true, filters: true,
refreshing: false, refreshing: true,
thumb: "/:/resources/movie.png", thumb: "/:/resources/show.png",
key: "1", key: "1",
type: "movie", type: GetAllLibrariesType.Movie,
title: "Movies", title: "Movies",
agent: "tv.plex.agents.movie", agent: "tv.plex.agents.movie",
scanner: "Plex Movie", scanner: "Plex Movie",
language: "en-US", language: "en-US",
uuid: "322a231a-b7f7-49f5-920f-14c61199cd30", uuid: "e69655a2-ef48-4aba-bb19-01e7d3cc34d6",
updatedAt: 1556281940, updatedAt: 1556281940,
createdAt: 1556281940, createdAt: 1556281940,
scannedAt: 1556281940, scannedAt: 1556281940,
content: true, content: true,
directory: true, directory: true,
contentChangedAt: 1556281940, contentChangedAt: 9173960,
hidden: 0, hidden: Hidden.ExcludeHomeScreen,
location: [ location: [
{ {
id: 1, id: 1,
path: "/movies", path: "/Movies",
}, },
], ],
}, },
@@ -50,4 +50,4 @@ let value: GetAllLibrariesResponseBody = {
| Field | Type | Required | Description | | Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `mediaContainer` | [operations.GetAllLibrariesMediaContainer](../../../sdk/models/operations/getalllibrariesmediacontainer.md) | :heavy_check_mark: | N/A | | `mediaContainer` | [operations.GetAllLibrariesMediaContainer](../../../sdk/models/operations/getalllibrariesmediacontainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -0,0 +1,29 @@
# GetAllLibrariesType
The library type
## Example Usage
```typescript
import { GetAllLibrariesType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllLibrariesType = GetAllLibrariesType.Movie;
```
## Values
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
| Name | Value |
| ---------------------- | ---------------------- |
| `Movie` | movie |
| `TvShow` | show |
| `Season` | season |
| `Episode` | episode |
| `Artist` | artist |
| `Album` | album |
| `Track` | track |
| `PhotoAlbum` | photoalbum |
| `Photo` | photo |
| `Collection` | collection |
| - | `Unrecognized<string>` |

View File

@@ -5,34 +5,7 @@
```typescript ```typescript
import { GetAvailableClientsResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { GetAvailableClientsResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAvailableClientsResponse = { let value: GetAvailableClientsResponse = {};
contentType: "<value>",
statusCode: 305,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
mediaContainer: {
size: 1,
server: [
{
name: "iPad",
host: "10.10.10.102",
address: "10.10.10.102",
port: 32500,
machineIdentifier: "A2E901F8-E016-43A7-ADFB-EF8CA8A4AC05",
version: "8.17",
protocol: "plex",
product: "Plex for iOS",
deviceClass: "tablet",
protocolVersion: 2,
protocolCapabilities:
"playback,playqueues,timeline,provider-playback",
},
],
},
},
};
``` ```
## Fields ## Fields

View File

@@ -5,49 +5,7 @@
```typescript ```typescript
import { GetBandwidthStatisticsResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { GetBandwidthStatisticsResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetBandwidthStatisticsResponse = { let value: GetBandwidthStatisticsResponse = {};
contentType: "<value>",
statusCode: 101,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
mediaContainer: {
size: 5497,
device: [
{
id: 208,
name: "Roku Express",
platform: "Roku",
clientIdentifier: "793095d235660625108ef785cc7646e9",
createdAt: 1706470556,
},
],
account: [
{
id: 238960586,
key: "/accounts/238960586",
name: "Diane",
defaultAudioLanguage: "en",
autoSelectAudio: true,
defaultSubtitleLanguage: "en",
subtitleMode: 1,
thumb: "https://plex.tv/users/50d83634246da1de/avatar?c=1707110967",
},
],
statisticsBandwidth: [
{
accountID: 238960586,
deviceID: 208,
timespan: 6,
at: 1718387650,
lan: true,
bytes: 22,
},
],
},
},
};
``` ```
## Fields ## Fields

View File

@@ -5,26 +5,7 @@
```typescript ```typescript
import { GetButlerTasksResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { GetButlerTasksResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetButlerTasksResponse = { let value: GetButlerTasksResponse = {};
contentType: "<value>",
statusCode: 431,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
butlerTasks: {
butlerTask: [
{
name: "BackupDatabase",
interval: 3,
title: "Backup Database",
description:
"Create a backup copy of the server's database in the configured backup directory",
},
],
},
},
};
``` ```
## Fields ## Fields

View File

@@ -5,23 +5,7 @@
```typescript ```typescript
import { GetCompanionsDataResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { GetCompanionsDataResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetCompanionsDataResponse = { let value: GetCompanionsDataResponse = {};
contentType: "<value>",
statusCode: 308,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
responseBodies: [
{
identifier: "tv.plex.sonos",
baseURL: "https://sonos.plex.tv",
title: "Sonos",
linkURL: "https://sonos.plex.tv/link",
provides: "client,player",
token: "<value>",
},
],
};
``` ```
## Fields ## Fields

View File

@@ -0,0 +1,21 @@
# GetCountriesLibraryDirectory
## Example Usage
```typescript
import { GetCountriesLibraryDirectory } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetCountriesLibraryDirectory = {
fastKey: "/library/sections/2/all?country=15491",
key: "15491",
title: "Japan",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- |
| `fastKey` | *string* | :heavy_check_mark: | N/A | /library/sections/2/all?country=15491 |
| `key` | *string* | :heavy_check_mark: | N/A | 15491 |
| `title` | *string* | :heavy_check_mark: | N/A | Japan |

View File

@@ -0,0 +1,47 @@
# GetCountriesLibraryMediaContainer
## Example Usage
```typescript
import { GetCountriesLibraryMediaContainer } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetCountriesLibraryMediaContainer = {
size: 50,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
content: "secondary",
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",
directory: [
{
fastKey: "/library/sections/2/all?country=15491",
key: "15491",
title: "Japan",
},
],
};
```
## 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 |
| `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 |
| `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 |
| `directory` | [operations.GetCountriesLibraryDirectory](../../../sdk/models/operations/getcountrieslibrarydirectory.md)[] | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,35 @@
# GetCountriesLibraryQueryParamType
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 { GetCountriesLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetCountriesLibraryQueryParamType =
GetCountriesLibraryQueryParamType.TvShow;
```
## Values
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
| Name | Value |
| ---------------------- | ---------------------- |
| `Movie` | 1 |
| `TvShow` | 2 |
| `Season` | 3 |
| `Episode` | 4 |
| `Artist` | 5 |
| `Album` | 6 |
| `Track` | 7 |
| `PhotoAlbum` | 8 |
| `Photo` | 9 |
| - | `Unrecognized<number>` |

View File

@@ -0,0 +1,19 @@
# GetCountriesLibraryRequest
## Example Usage
```typescript
import { GetCountriesLibraryQueryParamType, GetCountriesLibraryRequest } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetCountriesLibraryRequest = {
sectionKey: 9518,
type: GetCountriesLibraryQueryParamType.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.GetCountriesLibraryQueryParamType](../../../sdk/models/operations/getcountrieslibraryqueryparamtype.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,18 @@
# GetCountriesLibraryResponse
## Example Usage
```typescript
import { GetCountriesLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetCountriesLibraryResponse = {};
```
## 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.GetCountriesLibraryResponseBody](../../../sdk/models/operations/getcountrieslibraryresponsebody.md) | :heavy_minus_sign: | Successful response containing media container data. |

View File

@@ -0,0 +1,39 @@
# GetCountriesLibraryResponseBody
Successful response containing media container data.
## Example Usage
```typescript
import { GetCountriesLibraryResponseBody } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetCountriesLibraryResponseBody = {
mediaContainer: {
size: 50,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
content: "secondary",
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",
directory: [
{
fastKey: "/library/sections/2/all?country=15491",
key: "15491",
title: "Japan",
},
],
},
};
```
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `mediaContainer` | [operations.GetCountriesLibraryMediaContainer](../../../sdk/models/operations/getcountrieslibrarymediacontainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -5,27 +5,7 @@
```typescript ```typescript
import { GetDevicesResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { GetDevicesResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetDevicesResponse = { let value: GetDevicesResponse = {};
contentType: "<value>",
statusCode: 308,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
object: {
mediaContainer: {
size: 151,
identifier: "com.plexapp.system.devices",
device: [
{
id: 1,
name: "iPhone",
platform: "iOS",
createdAt: 1654131230,
},
],
},
},
};
``` ```
## Fields ## Fields

View File

@@ -5,13 +5,7 @@
```typescript ```typescript
import { GetFileHashResponse } from "@lukehagar/plexjs/sdk/models/operations"; import { GetFileHashResponse } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetFileHashResponse = { let value: GetFileHashResponse = {};
contentType: "<value>",
statusCode: 305,
rawResponse: new Response("{\"message\": \"hello world\"}", {
headers: { "Content-Type": "application/json" },
}),
};
``` ```
## Fields ## Fields

View File

@@ -0,0 +1,23 @@
# GetGenresLibraryDirectory
## Example Usage
```typescript
import { GetGenresLibraryDirectory } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetGenresLibraryDirectory = {
fastKey: "/library/sections/10/all?genre=89",
key: "89",
title: "Action",
type: "genre",
};
```
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- |
| `fastKey` | *string* | :heavy_check_mark: | N/A | /library/sections/10/all?genre=89 |
| `key` | *string* | :heavy_check_mark: | N/A | 89 |
| `title` | *string* | :heavy_check_mark: | N/A | Action |
| `type` | *string* | :heavy_check_mark: | N/A | genre |

View File

@@ -0,0 +1,48 @@
# GetGenresLibraryMediaContainer
## Example Usage
```typescript
import { GetGenresLibraryMediaContainer } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetGenresLibraryMediaContainer = {
size: 50,
allowSync: false,
art: "/:/resources/show-fanart.jpg",
content: "secondary",
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",
directory: [
{
fastKey: "/library/sections/10/all?genre=89",
key: "89",
title: "Action",
type: "genre",
},
],
};
```
## 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 |
| `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 |
| `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 |
| `directory` | [operations.GetGenresLibraryDirectory](../../../sdk/models/operations/getgenreslibrarydirectory.md)[] | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,35 @@
# GetGenresLibraryQueryParamType
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 { GetGenresLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetGenresLibraryQueryParamType =
GetGenresLibraryQueryParamType.TvShow;
```
## Values
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
| Name | Value |
| ---------------------- | ---------------------- |
| `Movie` | 1 |
| `TvShow` | 2 |
| `Season` | 3 |
| `Episode` | 4 |
| `Artist` | 5 |
| `Album` | 6 |
| `Track` | 7 |
| `PhotoAlbum` | 8 |
| `Photo` | 9 |
| - | `Unrecognized<number>` |

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