mirror of
https://github.com/LukeHagar/plexjs.git
synced 2025-12-06 12:37:46 +00:00
Compare commits
25 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7e3dca8466 | ||
|
|
8a2d3e04ab | ||
|
|
6c8a73ae84 | ||
|
|
c839d9f6c7 | ||
|
|
77b0ef9507 | ||
|
|
1cfbd17f28 | ||
|
|
2492807c65 | ||
|
|
ead0a8773c | ||
|
|
e254f82e06 | ||
|
|
a4369c999a | ||
|
|
c50b85f29a | ||
|
|
496ebda695 | ||
|
|
d436fc3452 | ||
|
|
99cdf6effe | ||
|
|
fa2ba82f62 | ||
|
|
fd8095a8df | ||
|
|
9911164ab0 | ||
|
|
ffedf47cad | ||
|
|
39d3a40524 | ||
|
|
8dc802ca50 | ||
|
|
5465f1e74c | ||
|
|
2d100b8e75 | ||
|
|
0533836427 | ||
|
|
f0b08b9bd9 | ||
|
|
244adab882 |
5
.github/workflows/publish-jsr.yaml
vendored
5
.github/workflows/publish-jsr.yaml
vendored
@@ -7,9 +7,8 @@ permissions:
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
push:
|
registry_package:
|
||||||
branches:
|
types: [published]
|
||||||
- main
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
publish:
|
publish:
|
||||||
|
|||||||
30
.github/workflows/sdk_generation.yaml
vendored
Normal file
30
.github/workflows/sdk_generation.yaml
vendored
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
name: Generate
|
||||||
|
permissions:
|
||||||
|
checks: write
|
||||||
|
contents: write
|
||||||
|
pull-requests: write
|
||||||
|
statuses: write
|
||||||
|
"on":
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
force:
|
||||||
|
description: Force generation of SDKs
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
set_version:
|
||||||
|
description: optionally set a specific SDK version
|
||||||
|
type: string
|
||||||
|
schedule:
|
||||||
|
- cron: 0 0 * * *
|
||||||
|
jobs:
|
||||||
|
generate:
|
||||||
|
uses: speakeasy-api/sdk-generation-action/.github/workflows/workflow-executor.yaml@v15
|
||||||
|
with:
|
||||||
|
force: ${{ github.event.inputs.force }}
|
||||||
|
mode: direct
|
||||||
|
set_version: ${{ github.event.inputs.set_version }}
|
||||||
|
speakeasy_version: latest
|
||||||
|
secrets:
|
||||||
|
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
npm_token: ${{ secrets.NPM_TOKEN }}
|
||||||
|
speakeasy_api_key: ${{ secrets.SPEAKEASY_API_KEY }}
|
||||||
31
.github/workflows/speakeasy_sdk_generation.yml
vendored
31
.github/workflows/speakeasy_sdk_generation.yml
vendored
@@ -1,31 +0,0 @@
|
|||||||
name: Generate
|
|
||||||
permissions:
|
|
||||||
checks: write
|
|
||||||
contents: write
|
|
||||||
pull-requests: write
|
|
||||||
statuses: write
|
|
||||||
"on":
|
|
||||||
workflow_dispatch:
|
|
||||||
inputs:
|
|
||||||
force:
|
|
||||||
description: Force generation of SDKs
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
push_code_samples_only:
|
|
||||||
description: Force push only code samples from SDK generation
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
schedule:
|
|
||||||
- cron: 0 0 * * *
|
|
||||||
jobs:
|
|
||||||
generate:
|
|
||||||
uses: speakeasy-api/sdk-generation-action/.github/workflows/workflow-executor.yaml@v15
|
|
||||||
with:
|
|
||||||
force: ${{ github.event.inputs.force }}
|
|
||||||
mode: direct
|
|
||||||
push_code_samples_only: ${{ fromJSON(github.event.inputs.push_code_samples_only != '' && github.event.inputs.push_code_samples_only || 'false') }}
|
|
||||||
speakeasy_version: latest
|
|
||||||
secrets:
|
|
||||||
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
npm_token: ${{ secrets.NPM_TOKEN }}
|
|
||||||
speakeasy_api_key: ${{ secrets.SPEAKEASY_API_KEY }}
|
|
||||||
20
.github/workflows/tagging.yaml
vendored
20
.github/workflows/tagging.yaml
vendored
@@ -1,20 +0,0 @@
|
|||||||
name: Speakeasy Tagging
|
|
||||||
permissions:
|
|
||||||
checks: write
|
|
||||||
contents: write
|
|
||||||
pull-requests: write
|
|
||||||
statuses: write
|
|
||||||
"on":
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
paths: []
|
|
||||||
workflow_dispatch: {}
|
|
||||||
jobs:
|
|
||||||
tag:
|
|
||||||
uses: speakeasy-api/sdk-generation-action/.github/workflows/tag.yaml@v15
|
|
||||||
with:
|
|
||||||
registry_tags: main
|
|
||||||
secrets:
|
|
||||||
github_access_token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
speakeasy_api_key: ${{ secrets.SPEAKEASY_API_KEY }}
|
|
||||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -1,3 +1,7 @@
|
|||||||
|
/react-query
|
||||||
|
/sdk/models/errors
|
||||||
|
/sdk/types
|
||||||
|
/__tests__
|
||||||
/funcs
|
/funcs
|
||||||
/core.*
|
/core.*
|
||||||
/esm
|
/esm
|
||||||
|
|||||||
@@ -7,3 +7,4 @@
|
|||||||
/cjs
|
/cjs
|
||||||
/.tshy
|
/.tshy
|
||||||
/.tshy-*
|
/.tshy-*
|
||||||
|
/__tests__
|
||||||
|
|||||||
2931
.speakeasy/gen.lock
2931
.speakeasy/gen.lock
File diff suppressed because one or more lines are too long
@@ -12,7 +12,7 @@ generation:
|
|||||||
auth:
|
auth:
|
||||||
oAuth2ClientCredentialsEnabled: true
|
oAuth2ClientCredentialsEnabled: true
|
||||||
typescript:
|
typescript:
|
||||||
version: 0.20.0
|
version: 0.31.1
|
||||||
additionalDependencies:
|
additionalDependencies:
|
||||||
dependencies: {}
|
dependencies: {}
|
||||||
devDependencies: {}
|
devDependencies: {}
|
||||||
@@ -20,16 +20,19 @@ typescript:
|
|||||||
additionalPackageJSON: {}
|
additionalPackageJSON: {}
|
||||||
author: LukeHagar
|
author: LukeHagar
|
||||||
clientServerStatusCodesAsErrors: true
|
clientServerStatusCodesAsErrors: true
|
||||||
|
defaultErrorName: SDKError
|
||||||
|
enableReactQuery: false
|
||||||
enumFormat: enum
|
enumFormat: enum
|
||||||
flattenGlobalSecurity: true
|
flattenGlobalSecurity: true
|
||||||
|
flatteningOrder: body-first
|
||||||
imports:
|
imports:
|
||||||
option: openapi
|
option: openapi
|
||||||
paths:
|
paths:
|
||||||
callbacks: ""
|
callbacks: sdk/models/callbacks
|
||||||
errors: ""
|
errors: sdk/models/errors
|
||||||
operations: ""
|
operations: sdk/models/operations
|
||||||
shared: ""
|
shared: sdk/models/shared
|
||||||
webhooks: ""
|
webhooks: sdk/models/webhooks
|
||||||
inputModelSuffix: input
|
inputModelSuffix: input
|
||||||
maxMethodParams: 4
|
maxMethodParams: 4
|
||||||
methodArguments: require-security-and-request
|
methodArguments: require-security-and-request
|
||||||
|
|||||||
@@ -1,38 +1,42 @@
|
|||||||
speakeasyVersion: 1.390.7
|
speakeasyVersion: 1.405.6
|
||||||
sources:
|
sources:
|
||||||
my-source:
|
my-source:
|
||||||
sourceNamespace: my-source
|
sourceNamespace: my-source
|
||||||
sourceRevisionDigest: sha256:fff67c8d70fdb1711caf3e9c61cdc91a4c88ac98b3419c1d287db6ca95c7278b
|
sourceRevisionDigest: sha256:1b8840d540c66b58d1009ec2581fb18464158ec9aa00464eac05ba737f31207e
|
||||||
sourceBlobDigest: sha256:235067aeeeba40f6a4b062d9b9e6816a6e1282023f9664b46cbc1af6495b4c53
|
sourceBlobDigest: sha256:f7e2709f52370dff16c1851a7a4e44a89f2e978e9cae335bffc10625950b3bd9
|
||||||
|
tags:
|
||||||
|
- latest
|
||||||
|
- main
|
||||||
|
plexapi:
|
||||||
|
sourceNamespace: plexapi
|
||||||
|
sourceRevisionDigest: sha256:96b3b0311346892a8d70f88e27dd59e3cba616e9f79b1662c89e341ebd49a666
|
||||||
|
sourceBlobDigest: sha256:290473ebc909cada80ff428c685b897f4621cf121397e1417355e06d334e7206
|
||||||
tags:
|
tags:
|
||||||
- latest
|
- latest
|
||||||
- main
|
- main
|
||||||
targets:
|
targets:
|
||||||
plexjs:
|
plexjs:
|
||||||
source: my-source
|
source: plexapi
|
||||||
sourceNamespace: my-source
|
sourceNamespace: plexapi
|
||||||
sourceRevisionDigest: sha256:fff67c8d70fdb1711caf3e9c61cdc91a4c88ac98b3419c1d287db6ca95c7278b
|
sourceRevisionDigest: sha256:96b3b0311346892a8d70f88e27dd59e3cba616e9f79b1662c89e341ebd49a666
|
||||||
sourceBlobDigest: sha256:235067aeeeba40f6a4b062d9b9e6816a6e1282023f9664b46cbc1af6495b4c53
|
sourceBlobDigest: sha256:290473ebc909cada80ff428c685b897f4621cf121397e1417355e06d334e7206
|
||||||
codeSamplesNamespace: code-samples-typescript-plexjs
|
codeSamplesNamespace: code-samples-typescript-plexjs
|
||||||
codeSamplesRevisionDigest: sha256:18919b4d52e4482e8771f2e3657d74cae7f332e481471d177e5b248a9ffc99bd
|
codeSamplesRevisionDigest: sha256:bb437db16afb78fc5469b890d2e5aecf927949325fa9cbfb091761e460319bfd
|
||||||
outLocation: /github/workspace/repo
|
|
||||||
workflow:
|
workflow:
|
||||||
workflowVersion: 1.0.0
|
workflowVersion: 1.0.0
|
||||||
speakeasyVersion: latest
|
speakeasyVersion: latest
|
||||||
sources:
|
sources:
|
||||||
my-source:
|
plexapi:
|
||||||
inputs:
|
inputs:
|
||||||
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
|
- location: registry.speakeasyapi.dev/plexapi/plexapi/plexapi:main
|
||||||
registry:
|
|
||||||
location: registry.speakeasyapi.dev/lukehagar/lukehagar/my-source
|
|
||||||
targets:
|
targets:
|
||||||
plexjs:
|
plexjs:
|
||||||
target: typescript
|
target: typescript
|
||||||
source: my-source
|
source: plexapi
|
||||||
publish:
|
publish:
|
||||||
npm:
|
npm:
|
||||||
token: $NPM_TOKEN
|
token: $npm_token
|
||||||
codeSamples:
|
codeSamples:
|
||||||
output: codeSamples.yaml
|
output: codeSamples.yaml
|
||||||
registry:
|
registry:
|
||||||
location: registry.speakeasyapi.dev/lukehagar/lukehagar/code-samples-typescript-plexjs
|
location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs
|
||||||
|
|||||||
@@ -1,19 +1,17 @@
|
|||||||
workflowVersion: 1.0.0
|
workflowVersion: 1.0.0
|
||||||
speakeasyVersion: latest
|
speakeasyVersion: latest
|
||||||
sources:
|
sources:
|
||||||
my-source:
|
plexapi:
|
||||||
inputs:
|
inputs:
|
||||||
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
|
- location: registry.speakeasyapi.dev/plexapi/plexapi/plexapi:main
|
||||||
registry:
|
|
||||||
location: registry.speakeasyapi.dev/lukehagar/lukehagar/my-source
|
|
||||||
targets:
|
targets:
|
||||||
plexjs:
|
plexjs:
|
||||||
target: typescript
|
target: typescript
|
||||||
source: my-source
|
source: plexapi
|
||||||
publish:
|
publish:
|
||||||
npm:
|
npm:
|
||||||
token: $NPM_TOKEN
|
token: $npm_token
|
||||||
codeSamples:
|
codeSamples:
|
||||||
output: codeSamples.yaml
|
output: codeSamples.yaml
|
||||||
registry:
|
registry:
|
||||||
location: registry.speakeasyapi.dev/lukehagar/lukehagar/code-samples-typescript-plexjs
|
location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs
|
||||||
|
|||||||
10
FUNCTIONS.md
10
FUNCTIONS.md
@@ -21,13 +21,17 @@ 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/models/sdkvalidationerror.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.
|
||||||
const plexAPI = new PlexAPICore({
|
const plexAPI = new PlexAPICore({
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
@@ -53,7 +57,7 @@ async function run() {
|
|||||||
const { value: result } = res;
|
const { value: result } = res;
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result)
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
|
|||||||
432
README.md
432
README.md
@@ -11,6 +11,31 @@
|
|||||||
## Summary
|
## Summary
|
||||||
|
|
||||||
Plex-API: An Open API Spec for interacting with Plex.tv and Plex Media Server
|
Plex-API: An Open API Spec for interacting with Plex.tv and Plex Media Server
|
||||||
|
|
||||||
|
# Plex Media Server OpenAPI Specification
|
||||||
|
|
||||||
|
An Open Source OpenAPI Specification for Plex Media Server
|
||||||
|
|
||||||
|
Automation and SDKs provided by [Speakeasy](https://speakeasyapi.dev/)
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
|
||||||
|
[API Documentation](https://plexapi.dev)
|
||||||
|
|
||||||
|
## SDKs
|
||||||
|
|
||||||
|
The following SDKs are generated from the OpenAPI Specification. They are automatically generated and may not be fully tested. If you find any issues, please open an issue on the [main specification Repository](https://github.com/LukeHagar/plex-api-spec).
|
||||||
|
|
||||||
|
| Language | Repository | Releases | Other |
|
||||||
|
| --------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------- |
|
||||||
|
| Python | [GitHub](https://github.com/LukeHagar/plexpy) | [PyPI](https://pypi.org/project/plex-api-client/) | - |
|
||||||
|
| JavaScript/TypeScript | [GitHub](https://github.com/LukeHagar/plexjs) | [NPM](https://www.npmjs.com/package/@lukehagar/plexjs) \ [JSR](https://jsr.io/@lukehagar/plexjs) | - |
|
||||||
|
| Go | [GitHub](https://github.com/LukeHagar/plexgo) | [Releases](https://github.com/LukeHagar/plexgo/releases) | [GoDoc](https://pkg.go.dev/github.com/LukeHagar/plexgo) |
|
||||||
|
| Ruby | [GitHub](https://github.com/LukeHagar/plexruby) | [Releases](https://github.com/LukeHagar/plexruby/releases) | - |
|
||||||
|
| Swift | [GitHub](https://github.com/LukeHagar/plexswift) | [Releases](https://github.com/LukeHagar/plexswift/releases) | - |
|
||||||
|
| PHP | [GitHub](https://github.com/LukeHagar/plexphp) | [Releases](https://github.com/LukeHagar/plexphp/releases) | - |
|
||||||
|
| Java | [GitHub](https://github.com/LukeHagar/plexjava) | [Releases](https://github.com/LukeHagar/plexjava/releases) | - |
|
||||||
|
| C# | [GitHub](https://github.com/LukeHagar/plexcsharp) | [Releases](https://github.com/LukeHagar/plexcsharp/releases) | -
|
||||||
<!-- End Summary [summary] -->
|
<!-- End Summary [summary] -->
|
||||||
|
|
||||||
<!-- Start Table of Contents [toc] -->
|
<!-- Start Table of Contents [toc] -->
|
||||||
@@ -21,7 +46,6 @@ Plex-API: An Open API Spec for interacting with Plex.tv and Plex Media Server
|
|||||||
* [SDK Example Usage](#sdk-example-usage)
|
* [SDK Example Usage](#sdk-example-usage)
|
||||||
* [Available Resources and Operations](#available-resources-and-operations)
|
* [Available Resources and Operations](#available-resources-and-operations)
|
||||||
* [Standalone functions](#standalone-functions)
|
* [Standalone functions](#standalone-functions)
|
||||||
* [Global Parameters](#global-parameters)
|
|
||||||
* [Retries](#retries)
|
* [Retries](#retries)
|
||||||
* [Error Handling](#error-handling)
|
* [Error Handling](#error-handling)
|
||||||
* [Server Selection](#server-selection)
|
* [Server Selection](#server-selection)
|
||||||
@@ -72,15 +96,19 @@ yarn add @lukehagar/plexjs zod
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
@@ -91,36 +119,21 @@ run();
|
|||||||
<!-- Start Available Resources and Operations [operations] -->
|
<!-- Start Available Resources and Operations [operations] -->
|
||||||
## Available Resources and Operations
|
## Available Resources and Operations
|
||||||
|
|
||||||
### [server](docs/sdks/server/README.md)
|
<details open>
|
||||||
|
<summary>Available methods</summary>
|
||||||
* [getServerCapabilities](docs/sdks/server/README.md#getservercapabilities) - Get Server Capabilities
|
|
||||||
* [getServerPreferences](docs/sdks/server/README.md#getserverpreferences) - Get Server Preferences
|
|
||||||
* [getAvailableClients](docs/sdks/server/README.md#getavailableclients) - Get Available Clients
|
|
||||||
* [getDevices](docs/sdks/server/README.md#getdevices) - Get Devices
|
|
||||||
* [getServerIdentity](docs/sdks/server/README.md#getserveridentity) - Get Server Identity
|
|
||||||
* [getMyPlexAccount](docs/sdks/server/README.md#getmyplexaccount) - Get MyPlex Account
|
|
||||||
* [getResizedPhoto](docs/sdks/server/README.md#getresizedphoto) - Get a Resized Photo
|
|
||||||
* [getMediaProviders](docs/sdks/server/README.md#getmediaproviders) - Get Media Providers
|
|
||||||
* [getServerList](docs/sdks/server/README.md#getserverlist) - Get Server List
|
|
||||||
|
|
||||||
### [media](docs/sdks/media/README.md)
|
|
||||||
|
|
||||||
* [markPlayed](docs/sdks/media/README.md#markplayed) - Mark Media Played
|
|
||||||
* [markUnplayed](docs/sdks/media/README.md#markunplayed) - Mark Media Unplayed
|
|
||||||
* [updatePlayProgress](docs/sdks/media/README.md#updateplayprogress) - Update Media Play Progress
|
|
||||||
* [getBannerImage](docs/sdks/media/README.md#getbannerimage) - Get Banner Image
|
|
||||||
* [getThumbImage](docs/sdks/media/README.md#getthumbimage) - Get Thumb Image
|
|
||||||
|
|
||||||
### [video](docs/sdks/video/README.md)
|
|
||||||
|
|
||||||
* [getTimeline](docs/sdks/video/README.md#gettimeline) - Get the timeline for a media item
|
|
||||||
* [startUniversalTranscode](docs/sdks/video/README.md#startuniversaltranscode) - Start Universal Transcode
|
|
||||||
|
|
||||||
### [activities](docs/sdks/activities/README.md)
|
### [activities](docs/sdks/activities/README.md)
|
||||||
|
|
||||||
* [getServerActivities](docs/sdks/activities/README.md#getserveractivities) - Get Server Activities
|
* [getServerActivities](docs/sdks/activities/README.md#getserveractivities) - Get Server Activities
|
||||||
* [cancelServerActivities](docs/sdks/activities/README.md#cancelserveractivities) - Cancel Server Activities
|
* [cancelServerActivities](docs/sdks/activities/README.md#cancelserveractivities) - Cancel Server Activities
|
||||||
|
|
||||||
|
### [authentication](docs/sdks/authentication/README.md)
|
||||||
|
|
||||||
|
* [getTransientToken](docs/sdks/authentication/README.md#gettransienttoken) - Get a Transient Token
|
||||||
|
* [getSourceConnectionInformation](docs/sdks/authentication/README.md#getsourceconnectioninformation) - Get Source Connection Information
|
||||||
|
* [getTokenDetails](docs/sdks/authentication/README.md#gettokendetails) - Get Token Details
|
||||||
|
* [postUsersSignInData](docs/sdks/authentication/README.md#postuserssignindata) - Get User Sign In Data
|
||||||
|
|
||||||
### [butler](docs/sdks/butler/README.md)
|
### [butler](docs/sdks/butler/README.md)
|
||||||
|
|
||||||
* [getButlerTasks](docs/sdks/butler/README.md#getbutlertasks) - Get Butler tasks
|
* [getButlerTasks](docs/sdks/butler/README.md#getbutlertasks) - Get Butler tasks
|
||||||
@@ -129,52 +142,42 @@ run();
|
|||||||
* [startTask](docs/sdks/butler/README.md#starttask) - Start a single Butler task
|
* [startTask](docs/sdks/butler/README.md#starttask) - Start a single Butler task
|
||||||
* [stopTask](docs/sdks/butler/README.md#stoptask) - Stop a single Butler task
|
* [stopTask](docs/sdks/butler/README.md#stoptask) - Stop a single Butler task
|
||||||
|
|
||||||
### [plex](docs/sdks/plex/README.md)
|
|
||||||
|
|
||||||
* [getCompanionsData](docs/sdks/plex/README.md#getcompanionsdata) - Get Companions Data
|
|
||||||
* [getUserFriends](docs/sdks/plex/README.md#getuserfriends) - Get list of friends of the user logged in
|
|
||||||
* [getGeoData](docs/sdks/plex/README.md#getgeodata) - Get Geo Data
|
|
||||||
* [getHomeData](docs/sdks/plex/README.md#gethomedata) - Get Plex Home Data
|
|
||||||
* [getServerResources](docs/sdks/plex/README.md#getserverresources) - Get Server Resources
|
|
||||||
* [getPin](docs/sdks/plex/README.md#getpin) - Get a Pin
|
|
||||||
* [getTokenByPinId](docs/sdks/plex/README.md#gettokenbypinid) - Get Access Token by PinId
|
|
||||||
|
|
||||||
### [hubs](docs/sdks/hubs/README.md)
|
### [hubs](docs/sdks/hubs/README.md)
|
||||||
|
|
||||||
* [getGlobalHubs](docs/sdks/hubs/README.md#getglobalhubs) - Get Global Hubs
|
* [getGlobalHubs](docs/sdks/hubs/README.md#getglobalhubs) - Get Global Hubs
|
||||||
|
* [getRecentlyAdded](docs/sdks/hubs/README.md#getrecentlyadded) - Get Recently Added
|
||||||
* [getLibraryHubs](docs/sdks/hubs/README.md#getlibraryhubs) - Get library specific hubs
|
* [getLibraryHubs](docs/sdks/hubs/README.md#getlibraryhubs) - Get library specific hubs
|
||||||
|
|
||||||
### [search](docs/sdks/search/README.md)
|
|
||||||
|
|
||||||
* [performSearch](docs/sdks/search/README.md#performsearch) - Perform a search
|
|
||||||
* [performVoiceSearch](docs/sdks/search/README.md#performvoicesearch) - Perform a voice search
|
|
||||||
* [getSearchResults](docs/sdks/search/README.md#getsearchresults) - Get Search Results
|
|
||||||
|
|
||||||
### [library](docs/sdks/library/README.md)
|
### [library](docs/sdks/library/README.md)
|
||||||
|
|
||||||
* [getFileHash](docs/sdks/library/README.md#getfilehash) - Get Hash Value
|
* [getFileHash](docs/sdks/library/README.md#getfilehash) - Get Hash Value
|
||||||
* [getRecentlyAdded](docs/sdks/library/README.md#getrecentlyadded) - Get Recently Added
|
* [getRecentlyAddedLibrary](docs/sdks/library/README.md#getrecentlyaddedlibrary) - Get Recently Added
|
||||||
* [getAllLibraries](docs/sdks/library/README.md#getalllibraries) - Get All Libraries
|
* [getAllLibraries](docs/sdks/library/README.md#getalllibraries) - Get All Libraries
|
||||||
* [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
|
||||||
* [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
|
||||||
|
* [getSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
|
||||||
* [getMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey) - Get Metadata by RatingKey
|
* [getMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey) - Get Metadata by RatingKey
|
||||||
* [getMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
|
* [getMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
|
||||||
* [getTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
|
* [getTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
|
||||||
* [getOnDeck](docs/sdks/library/README.md#getondeck) - Get On Deck
|
* [getOnDeck](docs/sdks/library/README.md#getondeck) - Get On Deck
|
||||||
|
|
||||||
### [watchlist](docs/sdks/watchlist/README.md)
|
|
||||||
|
|
||||||
* [getWatchList](docs/sdks/watchlist/README.md#getwatchlist) - Get User Watchlist
|
|
||||||
|
|
||||||
### [log](docs/sdks/log/README.md)
|
### [log](docs/sdks/log/README.md)
|
||||||
|
|
||||||
* [logLine](docs/sdks/log/README.md#logline) - Logging a single line message.
|
* [logLine](docs/sdks/log/README.md#logline) - Logging a single line message.
|
||||||
* [logMultiLine](docs/sdks/log/README.md#logmultiline) - Logging a multi-line message
|
* [logMultiLine](docs/sdks/log/README.md#logmultiline) - Logging a multi-line message
|
||||||
* [enablePaperTrail](docs/sdks/log/README.md#enablepapertrail) - Enabling Papertrail
|
* [enablePaperTrail](docs/sdks/log/README.md#enablepapertrail) - Enabling Papertrail
|
||||||
|
|
||||||
|
### [media](docs/sdks/media/README.md)
|
||||||
|
|
||||||
|
* [markPlayed](docs/sdks/media/README.md#markplayed) - Mark Media Played
|
||||||
|
* [markUnplayed](docs/sdks/media/README.md#markunplayed) - Mark Media Unplayed
|
||||||
|
* [updatePlayProgress](docs/sdks/media/README.md#updateplayprogress) - Update Media Play Progress
|
||||||
|
* [getBannerImage](docs/sdks/media/README.md#getbannerimage) - Get Banner Image
|
||||||
|
* [getThumbImage](docs/sdks/media/README.md#getthumbimage) - Get Thumb Image
|
||||||
|
|
||||||
### [playlists](docs/sdks/playlists/README.md)
|
### [playlists](docs/sdks/playlists/README.md)
|
||||||
|
|
||||||
* [createPlaylist](docs/sdks/playlists/README.md#createplaylist) - Create a Playlist
|
* [createPlaylist](docs/sdks/playlists/README.md#createplaylist) - Create a Playlist
|
||||||
@@ -187,18 +190,34 @@ run();
|
|||||||
* [addPlaylistContents](docs/sdks/playlists/README.md#addplaylistcontents) - Adding to a Playlist
|
* [addPlaylistContents](docs/sdks/playlists/README.md#addplaylistcontents) - Adding to a Playlist
|
||||||
* [uploadPlaylist](docs/sdks/playlists/README.md#uploadplaylist) - Upload Playlist
|
* [uploadPlaylist](docs/sdks/playlists/README.md#uploadplaylist) - Upload Playlist
|
||||||
|
|
||||||
### [authentication](docs/sdks/authentication/README.md)
|
### [plex](docs/sdks/plex/README.md)
|
||||||
|
|
||||||
* [getTransientToken](docs/sdks/authentication/README.md#gettransienttoken) - Get a Transient Token.
|
* [getCompanionsData](docs/sdks/plex/README.md#getcompanionsdata) - Get Companions Data
|
||||||
* [getSourceConnectionInformation](docs/sdks/authentication/README.md#getsourceconnectioninformation) - Get Source Connection Information
|
* [getUserFriends](docs/sdks/plex/README.md#getuserfriends) - Get list of friends of the user logged in
|
||||||
* [getUserDetails](docs/sdks/authentication/README.md#getuserdetails) - Get User Data By Token
|
* [getGeoData](docs/sdks/plex/README.md#getgeodata) - Get Geo Data
|
||||||
* [postUsersSignInData](docs/sdks/authentication/README.md#postuserssignindata) - Get User SignIn Data
|
* [getHomeData](docs/sdks/plex/README.md#gethomedata) - Get Plex Home Data
|
||||||
|
* [getServerResources](docs/sdks/plex/README.md#getserverresources) - Get Server Resources
|
||||||
|
* [getPin](docs/sdks/plex/README.md#getpin) - Get a Pin
|
||||||
|
* [getTokenByPinId](docs/sdks/plex/README.md#gettokenbypinid) - Get Access Token by PinId
|
||||||
|
|
||||||
### [statistics](docs/sdks/statistics/README.md)
|
|
||||||
|
|
||||||
* [getStatistics](docs/sdks/statistics/README.md#getstatistics) - Get Media Statistics
|
### [search](docs/sdks/search/README.md)
|
||||||
* [getResourcesStatistics](docs/sdks/statistics/README.md#getresourcesstatistics) - Get Resources Statistics
|
|
||||||
* [getBandwidthStatistics](docs/sdks/statistics/README.md#getbandwidthstatistics) - Get Bandwidth Statistics
|
* [performSearch](docs/sdks/search/README.md#performsearch) - Perform a search
|
||||||
|
* [performVoiceSearch](docs/sdks/search/README.md#performvoicesearch) - Perform a voice search
|
||||||
|
* [getSearchResults](docs/sdks/search/README.md#getsearchresults) - Get Search Results
|
||||||
|
|
||||||
|
### [server](docs/sdks/server/README.md)
|
||||||
|
|
||||||
|
* [getServerCapabilities](docs/sdks/server/README.md#getservercapabilities) - Get Server Capabilities
|
||||||
|
* [getServerPreferences](docs/sdks/server/README.md#getserverpreferences) - Get Server Preferences
|
||||||
|
* [getAvailableClients](docs/sdks/server/README.md#getavailableclients) - Get Available Clients
|
||||||
|
* [getDevices](docs/sdks/server/README.md#getdevices) - Get Devices
|
||||||
|
* [getServerIdentity](docs/sdks/server/README.md#getserveridentity) - Get Server Identity
|
||||||
|
* [getMyPlexAccount](docs/sdks/server/README.md#getmyplexaccount) - Get MyPlex Account
|
||||||
|
* [getResizedPhoto](docs/sdks/server/README.md#getresizedphoto) - Get a Resized Photo
|
||||||
|
* [getMediaProviders](docs/sdks/server/README.md#getmediaproviders) - Get Media Providers
|
||||||
|
* [getServerList](docs/sdks/server/README.md#getserverlist) - Get Server List
|
||||||
|
|
||||||
### [sessions](docs/sdks/sessions/README.md)
|
### [sessions](docs/sdks/sessions/README.md)
|
||||||
|
|
||||||
@@ -207,66 +226,108 @@ run();
|
|||||||
* [getTranscodeSessions](docs/sdks/sessions/README.md#gettranscodesessions) - Get Transcode Sessions
|
* [getTranscodeSessions](docs/sdks/sessions/README.md#gettranscodesessions) - Get Transcode Sessions
|
||||||
* [stopTranscodeSession](docs/sdks/sessions/README.md#stoptranscodesession) - Stop a Transcode Session
|
* [stopTranscodeSession](docs/sdks/sessions/README.md#stoptranscodesession) - Stop a Transcode Session
|
||||||
|
|
||||||
|
### [statistics](docs/sdks/statistics/README.md)
|
||||||
|
|
||||||
|
* [getStatistics](docs/sdks/statistics/README.md#getstatistics) - Get Media Statistics
|
||||||
|
* [getResourcesStatistics](docs/sdks/statistics/README.md#getresourcesstatistics) - Get Resources Statistics
|
||||||
|
* [getBandwidthStatistics](docs/sdks/statistics/README.md#getbandwidthstatistics) - Get Bandwidth Statistics
|
||||||
|
|
||||||
### [updater](docs/sdks/updater/README.md)
|
### [updater](docs/sdks/updater/README.md)
|
||||||
|
|
||||||
* [getUpdateStatus](docs/sdks/updater/README.md#getupdatestatus) - Querying status of updates
|
* [getUpdateStatus](docs/sdks/updater/README.md#getupdatestatus) - Querying status of updates
|
||||||
* [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
|
||||||
|
|
||||||
|
### [video](docs/sdks/video/README.md)
|
||||||
|
|
||||||
|
* [getTimeline](docs/sdks/video/README.md#gettimeline) - Get the timeline for a media item
|
||||||
|
* [startUniversalTranscode](docs/sdks/video/README.md#startuniversaltranscode) - Start Universal Transcode
|
||||||
|
|
||||||
|
### [watchlist](docs/sdks/watchlist/README.md)
|
||||||
|
|
||||||
|
* [getWatchList](docs/sdks/watchlist/README.md#getwatchlist) - Get User Watchlist
|
||||||
|
|
||||||
|
</details>
|
||||||
<!-- End Available Resources and Operations [operations] -->
|
<!-- End Available Resources and Operations [operations] -->
|
||||||
|
|
||||||
<!-- Start Error Handling [errors] -->
|
<!-- Start Error Handling [errors] -->
|
||||||
## Error Handling
|
## Error Handling
|
||||||
|
|
||||||
All SDK methods return a response object or throw an error. If Error objects are specified in your OpenAPI Spec, the SDK will throw the appropriate Error type.
|
All SDK methods return a response object or throw an error. By default, an API error will throw a `errors.SDKError`.
|
||||||
|
|
||||||
| Error Object | Status Code | Content Type |
|
If a HTTP request fails, an operation my also throw an error from the `sdk/models/errors/httpclienterrors.ts` module:
|
||||||
| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
|
|
||||||
| models.GetServerCapabilitiesServerResponseBody | 401 | application/json |
|
|
||||||
| models.SDKError | 4xx-5xx | */* |
|
|
||||||
|
|
||||||
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 string since validation errors can list many issues and the plain error string may be difficult read when debugging.
|
| HTTP Client Error | Description |
|
||||||
|
| ---------------------------------------------------- | ---------------------------------------------------- |
|
||||||
|
| RequestAbortedError | HTTP request was aborted by the client |
|
||||||
|
| RequestTimeoutError | HTTP request timed out due to an AbortSignal signal |
|
||||||
|
| ConnectionError | HTTP client was unable to make a request to a server |
|
||||||
|
| InvalidRequestError | Any input used to create a request is invalid |
|
||||||
|
| UnexpectedClientError | Unrecognised or unexpected error |
|
||||||
|
|
||||||
|
In addition, when custom error responses are specified for an operation, the SDK may throw their associated Error type. You can refer to respective *Errors* tables in SDK docs for more details on possible error types for each operation. For example, the `getServerCapabilities` method may throw the following errors:
|
||||||
|
|
||||||
|
| Error Type | Status Code | Content Type |
|
||||||
|
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
|
||||||
|
| errors.GetServerCapabilitiesBadRequest | 400 | application/json |
|
||||||
|
| errors.GetServerCapabilitiesUnauthorized | 401 | application/json |
|
||||||
|
| errors.SDKError | 4XX, 5XX | \*/\* |
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetServerCapabilitiesServerResponseBody, PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import { SDKValidationError } from "@lukehagar/plexjs/models";
|
import {
|
||||||
|
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>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
let result;
|
let result;
|
||||||
try {
|
try {
|
||||||
result = await plexAPI.server.getServerCapabilities();
|
result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
switch (true) {
|
switch (true) {
|
||||||
case err instanceof SDKValidationError: {
|
case (err instanceof SDKValidationError): {
|
||||||
// Validation errors can be pretty-printed
|
// Validation errors can be pretty-printed
|
||||||
console.error(err.pretty());
|
console.error(err.pretty());
|
||||||
// Raw value may also be inspected
|
// Raw value may also be inspected
|
||||||
console.error(err.rawValue);
|
console.error(err.rawValue);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
case err instanceof GetServerCapabilitiesServerResponseBody: {
|
case (err instanceof GetServerCapabilitiesBadRequest): {
|
||||||
// Handle err.data$: GetServerCapabilitiesServerResponseBodyData
|
// Handle err.data$: GetServerCapabilitiesBadRequestData
|
||||||
console.error(err);
|
console.error(err);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
default: {
|
case (err instanceof GetServerCapabilitiesUnauthorized): {
|
||||||
throw err;
|
// Handle err.data$: GetServerCapabilitiesUnauthorizedData
|
||||||
}
|
console.error(err);
|
||||||
}
|
return;
|
||||||
|
}
|
||||||
|
default: {
|
||||||
|
throw err;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
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 string since validation errors can list many issues and the plain error string may be difficult read when debugging.
|
||||||
<!-- End Error Handling [errors] -->
|
<!-- End Error Handling [errors] -->
|
||||||
|
|
||||||
<!-- Start Server Selection [server] -->
|
<!-- Start Server Selection [server] -->
|
||||||
@@ -284,16 +345,20 @@ You can override the default server globally by passing a server index to the `s
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
serverIdx: 0,
|
serverIdx: 0,
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
@@ -315,16 +380,20 @@ The default server can also be overridden globally by passing a URL to the `serv
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
serverURL: "{protocol}://{ip}:{port}",
|
serverURL: "{protocol}://{ip}:{port}",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
@@ -338,17 +407,21 @@ The server URL can also be overridden on a per-operation basis, provided a serve
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.plex.getCompanionsData({
|
const result = await plexAPI.plex.getCompanionsData({
|
||||||
serverURL: "https://plex.tv/api/v2",
|
serverURL: "https://plex.tv/api/v2",
|
||||||
});
|
});
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
@@ -421,15 +494,19 @@ To authenticate with the API the `accessToken` parameter must be set when initia
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
@@ -461,8 +538,8 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
|
|||||||
- [activitiesCancelServerActivities](docs/sdks/activities/README.md#cancelserveractivities)
|
- [activitiesCancelServerActivities](docs/sdks/activities/README.md#cancelserveractivities)
|
||||||
- [activitiesGetServerActivities](docs/sdks/activities/README.md#getserveractivities)
|
- [activitiesGetServerActivities](docs/sdks/activities/README.md#getserveractivities)
|
||||||
- [authenticationGetSourceConnectionInformation](docs/sdks/authentication/README.md#getsourceconnectioninformation)
|
- [authenticationGetSourceConnectionInformation](docs/sdks/authentication/README.md#getsourceconnectioninformation)
|
||||||
|
- [authenticationGetTokenDetails](docs/sdks/authentication/README.md#gettokendetails)
|
||||||
- [authenticationGetTransientToken](docs/sdks/authentication/README.md#gettransienttoken)
|
- [authenticationGetTransientToken](docs/sdks/authentication/README.md#gettransienttoken)
|
||||||
- [authenticationGetUserDetails](docs/sdks/authentication/README.md#getuserdetails)
|
|
||||||
- [authenticationPostUsersSignInData](docs/sdks/authentication/README.md#postuserssignindata)
|
- [authenticationPostUsersSignInData](docs/sdks/authentication/README.md#postuserssignindata)
|
||||||
- [butlerGetButlerTasks](docs/sdks/butler/README.md#getbutlertasks)
|
- [butlerGetButlerTasks](docs/sdks/butler/README.md#getbutlertasks)
|
||||||
- [butlerStartAllTasks](docs/sdks/butler/README.md#startalltasks)
|
- [butlerStartAllTasks](docs/sdks/butler/README.md#startalltasks)
|
||||||
@@ -471,6 +548,7 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
|
|||||||
- [butlerStopTask](docs/sdks/butler/README.md#stoptask)
|
- [butlerStopTask](docs/sdks/butler/README.md#stoptask)
|
||||||
- [hubsGetGlobalHubs](docs/sdks/hubs/README.md#getglobalhubs)
|
- [hubsGetGlobalHubs](docs/sdks/hubs/README.md#getglobalhubs)
|
||||||
- [hubsGetLibraryHubs](docs/sdks/hubs/README.md#getlibraryhubs)
|
- [hubsGetLibraryHubs](docs/sdks/hubs/README.md#getlibraryhubs)
|
||||||
|
- [hubsGetRecentlyAdded](docs/sdks/hubs/README.md#getrecentlyadded)
|
||||||
- [libraryDeleteLibrary](docs/sdks/library/README.md#deletelibrary)
|
- [libraryDeleteLibrary](docs/sdks/library/README.md#deletelibrary)
|
||||||
- [libraryGetAllLibraries](docs/sdks/library/README.md#getalllibraries)
|
- [libraryGetAllLibraries](docs/sdks/library/README.md#getalllibraries)
|
||||||
- [libraryGetFileHash](docs/sdks/library/README.md#getfilehash)
|
- [libraryGetFileHash](docs/sdks/library/README.md#getfilehash)
|
||||||
@@ -479,8 +557,9 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
|
|||||||
- [libraryGetMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey)
|
- [libraryGetMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey)
|
||||||
- [libraryGetMetadataChildren](docs/sdks/library/README.md#getmetadatachildren)
|
- [libraryGetMetadataChildren](docs/sdks/library/README.md#getmetadatachildren)
|
||||||
- [libraryGetOnDeck](docs/sdks/library/README.md#getondeck)
|
- [libraryGetOnDeck](docs/sdks/library/README.md#getondeck)
|
||||||
- [libraryGetRecentlyAdded](docs/sdks/library/README.md#getrecentlyadded)
|
- [libraryGetRecentlyAddedLibrary](docs/sdks/library/README.md#getrecentlyaddedlibrary)
|
||||||
- [libraryGetRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata)
|
- [libraryGetRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata)
|
||||||
|
- [libraryGetSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries)
|
||||||
- [libraryGetSearchLibrary](docs/sdks/library/README.md#getsearchlibrary)
|
- [libraryGetSearchLibrary](docs/sdks/library/README.md#getsearchlibrary)
|
||||||
- [libraryGetTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent)
|
- [libraryGetTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent)
|
||||||
- [logEnablePaperTrail](docs/sdks/log/README.md#enablepapertrail)
|
- [logEnablePaperTrail](docs/sdks/log/README.md#enablepapertrail)
|
||||||
@@ -537,53 +616,6 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
|
|||||||
</details>
|
</details>
|
||||||
<!-- End Standalone functions [standalone-funcs] -->
|
<!-- End Standalone functions [standalone-funcs] -->
|
||||||
|
|
||||||
<!-- Start Global Parameters [global-parameters] -->
|
|
||||||
## Global Parameters
|
|
||||||
|
|
||||||
A parameter is configured globally. This parameter may be set on the SDK client instance itself during initialization. When configured as an option during SDK initialization, This global value will be used as the default on the operations that use it. When such operations are called, there is a place in each to override the global value, if needed.
|
|
||||||
|
|
||||||
For example, you can set `X-Plex-Client-Identifier` to `"gcgzw5rz2xovp84b4vha3a40"` at SDK initialization and then you do not have to pass the same value on calls to operations like `getServerResources`. But if you want to do so you may, which will locally override the global setting. See the example code below for a demonstration.
|
|
||||||
|
|
||||||
|
|
||||||
### Available Globals
|
|
||||||
|
|
||||||
The following global parameter is available.
|
|
||||||
|
|
||||||
| Name | Type | Required | Description |
|
|
||||||
| ---- | ---- |:--------:| ----------- |
|
|
||||||
| xPlexClientIdentifier | string | | The unique identifier for the client application
|
|
||||||
This is used to track the client application and its usage
|
|
||||||
(UUID, serial number, or other number unique per device)
|
|
||||||
|
|
|
||||||
|
|
||||||
|
|
||||||
### Example
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { IncludeHttps, IncludeIPv6, IncludeRelay, PlexAPI } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
|
||||||
});
|
|
||||||
|
|
||||||
async function run() {
|
|
||||||
const result = await plexAPI.plex.getServerResources({
|
|
||||||
xPlexToken: "CV5xoxjTpFKUzBTShsaf",
|
|
||||||
includeHttps: IncludeHttps.One,
|
|
||||||
includeRelay: IncludeRelay.One,
|
|
||||||
includeIPv6: IncludeIPv6.One,
|
|
||||||
});
|
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
|
||||||
}
|
|
||||||
|
|
||||||
run();
|
|
||||||
|
|
||||||
```
|
|
||||||
<!-- End Global Parameters [global-parameters] -->
|
|
||||||
|
|
||||||
<!-- Start Retries [retries] -->
|
<!-- Start Retries [retries] -->
|
||||||
## Retries
|
## Retries
|
||||||
|
|
||||||
@@ -594,26 +626,30 @@ To change the default retry strategy for a single API call, simply provide a ret
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities({
|
const result = await plexAPI.server.getServerCapabilities({
|
||||||
retries: {
|
retries: {
|
||||||
strategy: "backoff",
|
strategy: "backoff",
|
||||||
backoff: {
|
backoff: {
|
||||||
initialInterval: 1,
|
initialInterval: 1,
|
||||||
maxInterval: 50,
|
maxInterval: 50,
|
||||||
exponent: 1.1,
|
exponent: 1.1,
|
||||||
maxElapsedTime: 100,
|
maxElapsedTime: 100,
|
||||||
},
|
},
|
||||||
retryConnectionErrors: false,
|
retryConnectionErrors: false,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
@@ -625,25 +661,29 @@ If you'd like to override the default retry strategy for all operations that sup
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
retryConfig: {
|
retryConfig: {
|
||||||
strategy: "backoff",
|
strategy: "backoff",
|
||||||
backoff: {
|
backoff: {
|
||||||
initialInterval: 1,
|
initialInterval: 1,
|
||||||
maxInterval: 50,
|
maxInterval: 50,
|
||||||
exponent: 1.1,
|
exponent: 1.1,
|
||||||
maxElapsedTime: 100,
|
maxElapsedTime: 100,
|
||||||
},
|
|
||||||
retryConnectionErrors: false,
|
|
||||||
},
|
},
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
retryConnectionErrors: false,
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
},
|
||||||
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
|
|||||||
200
RELEASES.md
200
RELEASES.md
@@ -949,3 +949,203 @@ Based on:
|
|||||||
- [typescript v0.20.0] .
|
- [typescript v0.20.0] .
|
||||||
### Releases
|
### Releases
|
||||||
- [NPM v0.20.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.20.0 - .
|
- [NPM v0.20.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.20.0 - .
|
||||||
|
|
||||||
|
## 2024-09-08 03:21:12
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.392.1 (2.411.9) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.20.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.20.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.20.2 - .
|
||||||
|
|
||||||
|
## 2024-09-08 17:37:50
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.392.1 (2.411.9) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.21.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.21.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.21.0 - .
|
||||||
|
|
||||||
|
## 2024-09-09 00:09:42
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.392.1 (2.411.9) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.21.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.21.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.21.1 - .
|
||||||
|
|
||||||
|
## 2024-09-10 00:09:01
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.394.0 (2.413.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.22.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.22.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.22.0 - .
|
||||||
|
|
||||||
|
## 2024-09-11 00:09:01
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.395.1 (2.415.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.22.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.22.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.22.1 - .
|
||||||
|
|
||||||
|
## 2024-09-12 00:09:10
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.396.2 (2.415.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.22.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.22.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.22.2 - .
|
||||||
|
|
||||||
|
## 2024-09-13 00:09:09
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.396.6 (2.415.6) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.23.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.23.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.23.0 - .
|
||||||
|
|
||||||
|
## 2024-09-14 00:08:56
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.396.9 (2.415.7) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.23.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.23.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.23.1 - .
|
||||||
|
|
||||||
|
## 2024-09-15 00:10:25
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.396.9 (2.415.7) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.23.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.23.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.23.2 - .
|
||||||
|
|
||||||
|
## 2024-09-16 00:09:42
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.396.9 (2.415.7) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.23.3] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.23.3] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.23.3 - .
|
||||||
|
|
||||||
|
## 2024-09-16 17:59:12
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.397.2 (2.415.8) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.23.4] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.23.4] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.23.4 - .
|
||||||
|
|
||||||
|
## 2024-09-17 00:08:25
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.398.0 (2.415.8) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.23.5] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.23.5] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.23.5 - .
|
||||||
|
|
||||||
|
## 2024-10-01 00:10:47
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.405.6 (2.428.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.24.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.24.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.24.0 - .
|
||||||
|
|
||||||
|
## 2024-10-01 15:35:33
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.405.6 (2.428.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.24.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.24.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.24.1 - .
|
||||||
|
|
||||||
|
## 2024-10-02 02:28:25
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.405.6 (2.428.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.24.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.24.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.24.2 - .
|
||||||
|
|
||||||
|
## 2024-10-03 00:09:30
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.406.0 (2.429.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.25.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.25.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.25.1 - .
|
||||||
|
|
||||||
|
## 2024-10-03 12:26:50
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.406.0 (2.429.0) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.26.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.26.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.26.1 - .
|
||||||
|
|
||||||
|
## 2024-11-11 20:28:21
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.405.6 (2.428.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.28.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.28.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.28.0 - .
|
||||||
|
|
||||||
|
## 2024-11-14 00:09:39
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.405.6 (2.428.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.30.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.30.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.30.0 - .
|
||||||
|
|
||||||
|
## 2024-12-16 22:17:52
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.405.6 (2.428.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.31.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.31.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.31.1 - .
|
||||||
14
USAGE.md
14
USAGE.md
@@ -3,15 +3,19 @@
|
|||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
clientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||||
|
clientName: "Plex for Roku",
|
||||||
|
clientVersion: "2.4.1",
|
||||||
|
platform: "Roku",
|
||||||
|
deviceNickname: "Roku 3",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
// Handle the result
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
|
|||||||
2401
codeSamples.yaml
2401
codeSamples.yaml
File diff suppressed because it is too large
Load Diff
@@ -1,22 +0,0 @@
|
|||||||
# Activity
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { Activity } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: Activity = {};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- |
|
|
||||||
| `uuid` | *string* | :heavy_minus_sign: | N/A |
|
|
||||||
| `type` | *string* | :heavy_minus_sign: | N/A |
|
|
||||||
| `cancellable` | *boolean* | :heavy_minus_sign: | N/A |
|
|
||||||
| `userID` | *number* | :heavy_minus_sign: | N/A |
|
|
||||||
| `title` | *string* | :heavy_minus_sign: | N/A |
|
|
||||||
| `subtitle` | *string* | :heavy_minus_sign: | N/A |
|
|
||||||
| `progress` | *number* | :heavy_minus_sign: | N/A |
|
|
||||||
| `context` | [models.Context](../models/context.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
# AddPlaylistContentsMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { AddPlaylistContentsMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: AddPlaylistContentsMediaContainer = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `leafCountAdded` | *number* | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `leafCountRequested` | *number* | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `metadata` | [models.AddPlaylistContentsMetadata](../models/addplaylistcontentsmetadata.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# AddPlaylistContentsPlaylistsResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { AddPlaylistContentsPlaylistsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.AddPlaylistContentsErrors](../models/addplaylistcontentserrors.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 |
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
# AddPlaylistContentsResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { AddPlaylistContentsResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: AddPlaylistContentsResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 820994,
|
|
||||||
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
|
|
||||||
|
|
||||||
| 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` | [models.AddPlaylistContentsResponseBody](../models/addplaylistcontentsresponsebody.md) | :heavy_minus_sign: | Playlist Updated |
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
# AddPlaylistContentsResponseBody
|
|
||||||
|
|
||||||
Playlist Updated
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { AddPlaylistContentsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: AddPlaylistContentsResponseBody = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
|
||||||
| `mediaContainer` | [models.AddPlaylistContentsMediaContainer](../models/addplaylistcontentsmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# ApplyUpdatesResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { ApplyUpdatesResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.ApplyUpdatesErrors](../models/applyupdateserrors.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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# AutoSelectSubtitle
|
|
||||||
|
|
||||||
The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { AutoSelectSubtitle } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: AutoSelectSubtitle = AutoSelectSubtitle.One;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| ------ | ------ |
|
|
||||||
| `Zero` | 0 |
|
|
||||||
| `One` | 1 |
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
# Billing
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { Billing } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: Billing = {
|
|
||||||
internalPaymentMethod: {},
|
|
||||||
paymentMethodId: 317983,
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
|
|
||||||
| `internalPaymentMethod` | [models.InternalPaymentMethod](../models/internalpaymentmethod.md) | :heavy_check_mark: | N/A |
|
|
||||||
| `paymentMethodId` | *number* | :heavy_check_mark: | N/A |
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
# ButlerTasks
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { ButlerTasks } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: 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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
|
|
||||||
| `butlerTask` | [models.ButlerTask](../models/butlertask.md)[] | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# CancelServerActivitiesResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { CancelServerActivitiesResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.CancelServerActivitiesErrors](../models/cancelserveractivitieserrors.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 |
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
# CheckForUpdatesRequest
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { CheckForUpdatesRequest, Download } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: CheckForUpdatesRequest = {
|
|
||||||
download: Download.One,
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- |
|
|
||||||
| `download` | [models.Download](../models/download.md) | :heavy_minus_sign: | Indicate that you want to start download any updates found. | 1 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# CheckForUpdatesResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { CheckForUpdatesResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.CheckForUpdatesErrors](../models/checkforupdateserrors.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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# ClearPlaylistContentsResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { ClearPlaylistContentsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.ClearPlaylistContentsErrors](../models/clearplaylistcontentserrors.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 |
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
# Connections
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { Connections } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: Connections = {
|
|
||||||
protocol: "<value>",
|
|
||||||
address: "971 Strosin Wall",
|
|
||||||
port: 4736.08,
|
|
||||||
uri: "https://starry-initialise.name",
|
|
||||||
local: false,
|
|
||||||
relay: false,
|
|
||||||
iPv6: false,
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------ | ------------------ | ------------------ | ------------------ |
|
|
||||||
| `protocol` | *string* | :heavy_check_mark: | N/A |
|
|
||||||
| `address` | *string* | :heavy_check_mark: | N/A |
|
|
||||||
| `port` | *number* | :heavy_check_mark: | N/A |
|
|
||||||
| `uri` | *string* | :heavy_check_mark: | N/A |
|
|
||||||
| `local` | *boolean* | :heavy_check_mark: | N/A |
|
|
||||||
| `relay` | *boolean* | :heavy_check_mark: | N/A |
|
|
||||||
| `iPv6` | *boolean* | :heavy_check_mark: | N/A |
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
# CreatePlaylistMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { CreatePlaylistMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: CreatePlaylistMediaContainer = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 7 |
|
|
||||||
| `metadata` | [models.CreatePlaylistMetadata](../models/createplaylistmetadata.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# CreatePlaylistPlaylistsResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { CreatePlaylistPlaylistsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.CreatePlaylistErrors](../models/createplaylisterrors.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 |
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
# CreatePlaylistRequest
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { CreatePlaylistQueryParamType, CreatePlaylistRequest, Smart } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: CreatePlaylistRequest = {
|
|
||||||
title: "<value>",
|
|
||||||
type: CreatePlaylistQueryParamType.Photo,
|
|
||||||
smart: Smart.One,
|
|
||||||
uri: "https://exotic-harm.info",
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
|
|
||||||
| `title` | *string* | :heavy_check_mark: | name of the playlist |
|
|
||||||
| `type` | [models.CreatePlaylistQueryParamType](../models/createplaylistqueryparamtype.md) | :heavy_check_mark: | type of playlist to create |
|
|
||||||
| `smart` | [models.Smart](../models/smart.md) | :heavy_check_mark: | whether the playlist is smart or not |
|
|
||||||
| `uri` | *string* | :heavy_check_mark: | the content URI for the playlist |
|
|
||||||
| `playQueueID` | *number* | :heavy_minus_sign: | the play queue to copy to a playlist |
|
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
# CreatePlaylistResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { CreatePlaylistResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: CreatePlaylistResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 474697,
|
|
||||||
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
|
|
||||||
|
|
||||||
| 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` | [models.CreatePlaylistResponseBody](../models/createplaylistresponsebody.md) | :heavy_minus_sign: | returns all playlists |
|
|
||||||
@@ -1,41 +0,0 @@
|
|||||||
# CreatePlaylistResponseBody
|
|
||||||
|
|
||||||
returns all playlists
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { CreatePlaylistResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: CreatePlaylistResponseBody = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
|
|
||||||
| `mediaContainer` | [models.CreatePlaylistMediaContainer](../models/createplaylistmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# DefaultSubtitleForced
|
|
||||||
|
|
||||||
The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles)
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { DefaultSubtitleForced } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: DefaultSubtitleForced = DefaultSubtitleForced.One;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| ------ | ------ |
|
|
||||||
| `Zero` | 0 |
|
|
||||||
| `One` | 1 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# DeleteLibraryErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { DeleteLibraryErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: DeleteLibraryErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# DeletePlaylistErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { DeletePlaylistErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: DeletePlaylistErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# DeletePlaylistResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { DeletePlaylistResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.DeletePlaylistErrors](../models/deleteplaylisterrors.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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# EnablePaperTrailErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { EnablePaperTrailErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: EnablePaperTrailErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# EnablePaperTrailResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { EnablePaperTrailResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.EnablePaperTrailErrors](../models/enablepapertrailerrors.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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# Errors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { Errors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: Errors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
# Feature
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { Feature } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: Feature = {};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
|
|
||||||
| `key` | *string* | :heavy_minus_sign: | N/A |
|
|
||||||
| `type` | *string* | :heavy_minus_sign: | N/A |
|
|
||||||
| `directory` | [models.GetMediaProvidersDirectory](../models/getmediaprovidersdirectory.md)[] | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
# Features
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { Features } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: Features = Features.WatchTogetherInvite;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| --------------------------------------- | --------------------------------------- |
|
|
||||||
| `AndroidDolbyVision` | Android - Dolby Vision |
|
|
||||||
| `AndroidPiP` | Android - PiP |
|
|
||||||
| `CUSunset` | CU Sunset |
|
|
||||||
| `HRKEnableEUR` | HRK_enable_EUR |
|
|
||||||
| `TREBLEShowFeatures` | TREBLE-show-features |
|
|
||||||
| `AdCountdownTimer` | ad-countdown-timer |
|
|
||||||
| `AdaptiveBitrate` | adaptive_bitrate |
|
|
||||||
| `AmazonLoopDebug` | amazon-loop-debug |
|
|
||||||
| `AvodAdAnalysis` | avod-ad-analysis |
|
|
||||||
| `AvodNewMedia` | avod-new-media |
|
|
||||||
| `BlacklistGetSignin` | blacklist_get_signin |
|
|
||||||
| `ClientRadioStations` | client-radio-stations |
|
|
||||||
| `CloudflareTurnstileRequired` | cloudflare-turnstile-required |
|
|
||||||
| `Collections` | collections |
|
|
||||||
| `CommentsAndRepliesPushNotifications` | comments_and_replies_push_notifications |
|
|
||||||
| `CommunityAccessPlexTv` | community_access_plex_tv |
|
|
||||||
| `CompanionsSonos` | companions_sonos |
|
|
||||||
| `CustomHomeRemoval` | custom-home-removal |
|
|
||||||
| `DisableHomeUserFriendships` | disable_home_user_friendships |
|
|
||||||
| `DisableSharingFriendships` | disable_sharing_friendships |
|
|
||||||
| `DrmSupport` | drm_support |
|
|
||||||
| `ExcludeRestrictions` | exclude restrictions |
|
|
||||||
| `FederatedAuth` | federated-auth |
|
|
||||||
| `FriendRequestPushNotifications` | friend_request_push_notifications |
|
|
||||||
| `GuidedUpgrade` | guided-upgrade |
|
|
||||||
| `Home` | home |
|
|
||||||
| `IncreasePasswordComplexity` | increase-password-complexity |
|
|
||||||
| `Ios14PrivacyBanner` | ios14-privacy-banner |
|
|
||||||
| `IterableNotificationTokens` | iterable-notification-tokens |
|
|
||||||
| `KeepPaymentMethod` | keep-payment-method |
|
|
||||||
| `KevinBacon` | kevin-bacon |
|
|
||||||
| `KoreaConsent` | korea-consent |
|
|
||||||
| `LeIsrgRootX1` | le_isrg_root_x1 |
|
|
||||||
| `LetsEncrypt` | lets_encrypt |
|
|
||||||
| `LightningDvrPivot` | lightning-dvr-pivot |
|
|
||||||
| `LiveTvSupportIncompleteSegments` | live-tv-support-incomplete-segments |
|
|
||||||
| `Livetv` | livetv |
|
|
||||||
| `MetadataSearch` | metadata_search |
|
|
||||||
| `NewPlexPassPrices` | new_plex_pass_prices |
|
|
||||||
| `NewsProviderSunsetModal` | news-provider-sunset-modal |
|
|
||||||
| `PhotosFavorites` | photos-favorites |
|
|
||||||
| `PhotosMetadataEdition` | photos-metadata-edition |
|
|
||||||
| `PmsHealth` | pms_health |
|
|
||||||
| `Radio` | radio |
|
|
||||||
| `RateLimitClientToken` | rate-limit-client-token |
|
|
||||||
| `ScrobblingServicePlexTv` | scrobbling-service-plex-tv |
|
|
||||||
| `SharedServerNotification` | shared_server_notification |
|
|
||||||
| `SharedSourceNotification` | shared_source_notification |
|
|
||||||
| `SigninWithApple` | signin_with_apple |
|
|
||||||
| `SpringServeAdProvider` | spring_serve_ad_provider |
|
|
||||||
| `TranscoderCache` | transcoder_cache |
|
|
||||||
| `TunerSharing` | tuner-sharing |
|
|
||||||
| `TwoFactorAuthentication` | two-factor-authentication |
|
|
||||||
| `Unsupportedtuners` | unsupportedtuners |
|
|
||||||
| `Upgrade3ds2` | upgrade-3ds2 |
|
|
||||||
| `VodSchema` | vod-schema |
|
|
||||||
| `VodCloudflare` | vod_cloudflare |
|
|
||||||
| `WatchTogetherInvite` | watch-together-invite |
|
|
||||||
| `WebServerDashboard` | web_server_dashboard |
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
# FieldType
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { FieldType } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: FieldType = {
|
|
||||||
type: "resolution",
|
|
||||||
operator: [
|
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ |
|
|
||||||
| `type` | *string* | :heavy_minus_sign: | N/A | resolution |
|
|
||||||
| `operator` | [models.Operator](../models/operator.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
# Friend
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { Friend, Status } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: Friend = {
|
|
||||||
email: "username@email.com",
|
|
||||||
friendlyName: "exampleUser",
|
|
||||||
home: true,
|
|
||||||
id: 0,
|
|
||||||
restricted: false,
|
|
||||||
sharedServers: [{}],
|
|
||||||
sharedSources: [{}],
|
|
||||||
status: Status.Accepted,
|
|
||||||
thumb: "https://plex.tv/users/7d1916e0d8f6e76b/avatar?c=1694481578",
|
|
||||||
title: "username123",
|
|
||||||
username: "username123",
|
|
||||||
uuid: "7d1916e0d8f6e76b",
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- |
|
|
||||||
| `email` | *string* | :heavy_check_mark: | The account email address | username@email.com |
|
|
||||||
| `friendlyName` | *string* | :heavy_check_mark: | The account full name | exampleUser |
|
|
||||||
| `home` | *boolean* | :heavy_check_mark: | If the account is a Plex Home user | |
|
|
||||||
| `id` | *number* | :heavy_check_mark: | The Plex account ID | |
|
|
||||||
| `restricted` | *boolean* | :heavy_minus_sign: | If the account is a Plex Home managed user | |
|
|
||||||
| `sharedServers` | [models.SharedServers](../models/sharedservers.md)[] | :heavy_check_mark: | N/A | |
|
|
||||||
| `sharedSources` | [models.SharedSources](../models/sharedsources.md)[] | :heavy_check_mark: | N/A | |
|
|
||||||
| `status` | [models.Status](../models/status.md) | :heavy_check_mark: | Current friend request status | accepted |
|
|
||||||
| `thumb` | *string* | :heavy_check_mark: | URL of the account thumbnail | https://plex.tv/users/7d1916e0d8f6e76b/avatar?c=1694481578 |
|
|
||||||
| `title` | *string* | :heavy_check_mark: | The title of the account (username or friendly name) | username123 |
|
|
||||||
| `username` | *string* | :heavy_check_mark: | The account username | username123 |
|
|
||||||
| `uuid` | *string* | :heavy_check_mark: | The account Universally Unique Identifier (UUID) | 7d1916e0d8f6e76b |
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
# GetAllLibrariesDirectory
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllLibrariesDirectory } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAllLibrariesDirectory = {
|
|
||||||
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: 3192854,
|
|
||||||
hidden: 0,
|
|
||||||
location: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
path: "/movies",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ |
|
|
||||||
| `allowSync` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `art` | *string* | :heavy_minus_sign: | N/A | /:/resources/movie-fanart.jpg |
|
|
||||||
| `composite` | *string* | :heavy_minus_sign: | N/A | /library/sections/1/composite/1705615584 |
|
|
||||||
| `filters` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `refreshing` | *boolean* | :heavy_minus_sign: | N/A | false |
|
|
||||||
| `thumb` | *string* | :heavy_minus_sign: | N/A | /:/resources/movie.png |
|
|
||||||
| `key` | *string* | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `type` | *string* | :heavy_minus_sign: | N/A | movie |
|
|
||||||
| `title` | *string* | :heavy_minus_sign: | N/A | Movies |
|
|
||||||
| `agent` | *string* | :heavy_minus_sign: | N/A | tv.plex.agents.movie |
|
|
||||||
| `scanner` | *string* | :heavy_minus_sign: | N/A | Plex Movie |
|
|
||||||
| `language` | *string* | :heavy_minus_sign: | N/A | en-US |
|
|
||||||
| `uuid` | *string* | :heavy_minus_sign: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 |
|
|
||||||
| `updatedAt` | *number* | :heavy_minus_sign: | Unix epoch datetime | 1556281940 |
|
|
||||||
| `createdAt` | *number* | :heavy_minus_sign: | Unix epoch datetime | 1556281940 |
|
|
||||||
| `scannedAt` | *number* | :heavy_minus_sign: | Unix epoch datetime | 1556281940 |
|
|
||||||
| `content` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `directory` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `contentChangedAt` | *number* | :heavy_minus_sign: | N/A | 3192854 |
|
|
||||||
| `hidden` | *number* | :heavy_minus_sign: | N/A | 0 |
|
|
||||||
| `location` | [models.Location](../models/location.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetAllLibrariesErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllLibrariesErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAllLibrariesErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetAllLibrariesLibraryResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllLibrariesLibraryResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetAllLibrariesErrors](../models/getalllibrarieserrors.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 |
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
# GetAllLibrariesMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllLibrariesMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAllLibrariesMediaContainer = {
|
|
||||||
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: 3192854,
|
|
||||||
hidden: 0,
|
|
||||||
location: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
path: "/movies",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
|
|
||||||
| `size` | *number* | :heavy_check_mark: | N/A | 5 |
|
|
||||||
| `allowSync` | *boolean* | :heavy_check_mark: | N/A | false |
|
|
||||||
| `title1` | *string* | :heavy_check_mark: | N/A | Plex Library |
|
|
||||||
| `directory` | [models.GetAllLibrariesDirectory](../models/getalllibrariesdirectory.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,61 +0,0 @@
|
|||||||
# GetAllLibrariesResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllLibrariesResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAllLibrariesResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 613064,
|
|
||||||
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: 3192854,
|
|
||||||
hidden: 0,
|
|
||||||
location: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
path: "/movies",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## 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` | [models.GetAllLibrariesResponseBody](../models/getalllibrariesresponsebody.md) | :heavy_minus_sign: | The libraries available on the Server |
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
# GetAllLibrariesResponseBody
|
|
||||||
|
|
||||||
The libraries available on the Server
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllLibrariesResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAllLibrariesResponseBody = {
|
|
||||||
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: 3192854,
|
|
||||||
hidden: 0,
|
|
||||||
location: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
path: "/movies",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
|
|
||||||
| `mediaContainer` | [models.GetAllLibrariesMediaContainer](../models/getalllibrariesmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetAvailableClientsErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAvailableClientsErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAvailableClientsErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# GetAvailableClientsMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAvailableClientsMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAvailableClientsMediaContainer = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `server` | [models.GetAvailableClientsServer](../models/getavailableclientsserver.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
# GetAvailableClientsResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAvailableClientsResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAvailableClientsResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 715190,
|
|
||||||
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
|
|
||||||
|
|
||||||
| 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` | [models.GetAvailableClientsResponseBody](../models/getavailableclientsresponsebody.md) | :heavy_minus_sign: | Available Clients |
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
# GetAvailableClientsResponseBody
|
|
||||||
|
|
||||||
Available Clients
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAvailableClientsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetAvailableClientsResponseBody = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
|
||||||
| `mediaContainer` | [models.GetAvailableClientsMediaContainer](../models/getavailableclientsmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetAvailableClientsServerResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAvailableClientsServerResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetAvailableClientsErrors](../models/getavailableclientserrors.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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetBandwidthStatisticsErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetBandwidthStatisticsErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetBandwidthStatisticsErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
# GetBandwidthStatisticsMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetBandwidthStatisticsMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetBandwidthStatisticsMediaContainer = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 5497 |
|
|
||||||
| `device` | [models.GetBandwidthStatisticsDevice](../models/getbandwidthstatisticsdevice.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `account` | [models.GetBandwidthStatisticsAccount](../models/getbandwidthstatisticsaccount.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `statisticsBandwidth` | [models.StatisticsBandwidth](../models/statisticsbandwidth.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
# GetBandwidthStatisticsResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetBandwidthStatisticsResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetBandwidthStatisticsResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 916723,
|
|
||||||
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
|
|
||||||
|
|
||||||
| 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` | [models.GetBandwidthStatisticsResponseBody](../models/getbandwidthstatisticsresponsebody.md) | :heavy_minus_sign: | Bandwidth Statistics |
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
# GetBandwidthStatisticsResponseBody
|
|
||||||
|
|
||||||
Bandwidth Statistics
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetBandwidthStatisticsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetBandwidthStatisticsResponseBody = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
|
|
||||||
| `mediaContainer` | [models.GetBandwidthStatisticsMediaContainer](../models/getbandwidthstatisticsmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetBandwidthStatisticsStatisticsResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetBandwidthStatisticsStatisticsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetBandwidthStatisticsErrors](../models/getbandwidthstatisticserrors.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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetBannerImageErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetBannerImageErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetBannerImageErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetBannerImageResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetBannerImageResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetBannerImageErrors](../models/getbannerimageerrors.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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetButlerTasksButlerResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetButlerTasksButlerResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetButlerTasksErrors](../models/getbutlertaskserrors.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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetButlerTasksErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetButlerTasksErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetButlerTasksErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
# GetButlerTasksResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetButlerTasksResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetButlerTasksResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 812169,
|
|
||||||
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
|
|
||||||
|
|
||||||
| 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` | [models.GetButlerTasksResponseBody](../models/getbutlertasksresponsebody.md) | :heavy_minus_sign: | All butler tasks |
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
# GetButlerTasksResponseBody
|
|
||||||
|
|
||||||
All butler tasks
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetButlerTasksResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetButlerTasksResponseBody = {
|
|
||||||
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
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
|
|
||||||
| `butlerTasks` | [models.ButlerTasks](../models/butlertasks.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetCompanionsDataErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetCompanionsDataErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetCompanionsDataErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
# GetCompanionsDataResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetCompanionsDataResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetCompanionsDataResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 87129,
|
|
||||||
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
|
|
||||||
|
|
||||||
| 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 |
|
|
||||||
| `responseBodies` | [models.ResponseBody](../models/responsebody.md)[] | :heavy_minus_sign: | Companions Data |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetCompanionsDataResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetCompanionsDataResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
|
|
||||||
| `errors` | [models.GetCompanionsDataErrors](../models/getcompanionsdataerrors.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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetDevicesErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetDevicesErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetDevicesErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
# GetDevicesMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetDevicesMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetDevicesMediaContainer = {
|
|
||||||
size: 151,
|
|
||||||
identifier: "com.plexapp.system.devices",
|
|
||||||
device: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
name: "iPhone",
|
|
||||||
platform: "iOS",
|
|
||||||
createdAt: 1654131230,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 151 |
|
|
||||||
| `identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.system.devices |
|
|
||||||
| `device` | [models.Device](../models/device.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
# GetDevicesResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetDevicesResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetDevicesResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 844266,
|
|
||||||
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
|
|
||||||
|
|
||||||
| 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` | [models.GetDevicesResponseBody](../models/getdevicesresponsebody.md) | :heavy_minus_sign: | Devices |
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
# GetDevicesResponseBody
|
|
||||||
|
|
||||||
Devices
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetDevicesResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetDevicesResponseBody = {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 151,
|
|
||||||
identifier: "com.plexapp.system.devices",
|
|
||||||
device: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
name: "iPhone",
|
|
||||||
platform: "iOS",
|
|
||||||
createdAt: 1654131230,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
|
|
||||||
| `mediaContainer` | [models.GetDevicesMediaContainer](../models/getdevicesmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetDevicesServerResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetDevicesServerResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetDevicesErrors](../models/getdeviceserrors.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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetFileHashErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetFileHashErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetFileHashErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetGeoDataErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetGeoDataErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetGeoDataErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetGeoDataResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetGeoDataResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetGeoDataErrors](../models/getgeodataerrors.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 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetGlobalHubsErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetGlobalHubsErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetGlobalHubsErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetGlobalHubsHubsResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetGlobalHubsHubsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetGlobalHubsErrors](../models/getglobalhubserrors.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 |
|
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
# GetGlobalHubsMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetGlobalHubsMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetGlobalHubsMediaContainer = {
|
|
||||||
size: 8,
|
|
||||||
allowSync: true,
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
hub: [
|
|
||||||
{
|
|
||||||
hubKey: "/library/metadata/50768,65523,58188,57341,57302,57070",
|
|
||||||
key: "/playlists/all?type=15&sort=lastViewedAt:desc&playlistType=video,audio",
|
|
||||||
title: "Recent Playlists",
|
|
||||||
type: "playlist",
|
|
||||||
hubIdentifier: "home.playlists",
|
|
||||||
context: "hub.home.playlists",
|
|
||||||
size: 6,
|
|
||||||
more: true,
|
|
||||||
style: "shelf",
|
|
||||||
promoted: true,
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "57070",
|
|
||||||
key: "/playlists/57070/items",
|
|
||||||
guid: "com.plexapp.agents.none://9fee6c5b-3143-4923-813e-57bd0190056c",
|
|
||||||
type: "playlist",
|
|
||||||
title: "November Movie Day",
|
|
||||||
titleSort: "Tracks",
|
|
||||||
summary: "",
|
|
||||||
smart: false,
|
|
||||||
playlistType: "video",
|
|
||||||
composite: "/playlists/57070/composite/1668787730",
|
|
||||||
icon: "playlist://image.smart",
|
|
||||||
viewCount: 2,
|
|
||||||
lastViewedAt: 1668787732,
|
|
||||||
duration: 16873000,
|
|
||||||
leafCount: 3,
|
|
||||||
addedAt: 1668779618,
|
|
||||||
updatedAt: 1668787730,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 8 |
|
|
||||||
| `allowSync` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library |
|
|
||||||
| `hub` | [models.Hub](../models/hub.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
# GetGlobalHubsResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetGlobalHubsResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetGlobalHubsResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 149675,
|
|
||||||
rawResponse: new Response('{"message": "hello world"}', {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 8,
|
|
||||||
allowSync: true,
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
hub: [
|
|
||||||
{
|
|
||||||
hubKey: "/library/metadata/50768,65523,58188,57341,57302,57070",
|
|
||||||
key: "/playlists/all?type=15&sort=lastViewedAt:desc&playlistType=video,audio",
|
|
||||||
title: "Recent Playlists",
|
|
||||||
type: "playlist",
|
|
||||||
hubIdentifier: "home.playlists",
|
|
||||||
context: "hub.home.playlists",
|
|
||||||
size: 6,
|
|
||||||
more: true,
|
|
||||||
style: "shelf",
|
|
||||||
promoted: true,
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "57070",
|
|
||||||
key: "/playlists/57070/items",
|
|
||||||
guid: "com.plexapp.agents.none://9fee6c5b-3143-4923-813e-57bd0190056c",
|
|
||||||
type: "playlist",
|
|
||||||
title: "November Movie Day",
|
|
||||||
titleSort: "Tracks",
|
|
||||||
summary: "",
|
|
||||||
smart: false,
|
|
||||||
playlistType: "video",
|
|
||||||
composite: "/playlists/57070/composite/1668787730",
|
|
||||||
icon: "playlist://image.smart",
|
|
||||||
viewCount: 2,
|
|
||||||
lastViewedAt: 1668787732,
|
|
||||||
duration: 16873000,
|
|
||||||
leafCount: 3,
|
|
||||||
addedAt: 1668779618,
|
|
||||||
updatedAt: 1668787730,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## 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` | [models.GetGlobalHubsResponseBody](../models/getglobalhubsresponsebody.md) | :heavy_minus_sign: | returns global hubs |
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
# GetGlobalHubsResponseBody
|
|
||||||
|
|
||||||
returns global hubs
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetGlobalHubsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetGlobalHubsResponseBody = {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 8,
|
|
||||||
allowSync: true,
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
hub: [
|
|
||||||
{
|
|
||||||
hubKey: "/library/metadata/50768,65523,58188,57341,57302,57070",
|
|
||||||
key: "/playlists/all?type=15&sort=lastViewedAt:desc&playlistType=video,audio",
|
|
||||||
title: "Recent Playlists",
|
|
||||||
type: "playlist",
|
|
||||||
hubIdentifier: "home.playlists",
|
|
||||||
context: "hub.home.playlists",
|
|
||||||
size: 6,
|
|
||||||
more: true,
|
|
||||||
style: "shelf",
|
|
||||||
promoted: true,
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "57070",
|
|
||||||
key: "/playlists/57070/items",
|
|
||||||
guid: "com.plexapp.agents.none://9fee6c5b-3143-4923-813e-57bd0190056c",
|
|
||||||
type: "playlist",
|
|
||||||
title: "November Movie Day",
|
|
||||||
titleSort: "Tracks",
|
|
||||||
summary: "",
|
|
||||||
smart: false,
|
|
||||||
playlistType: "video",
|
|
||||||
composite: "/playlists/57070/composite/1668787730",
|
|
||||||
icon: "playlist://image.smart",
|
|
||||||
viewCount: 2,
|
|
||||||
lastViewedAt: 1668787732,
|
|
||||||
duration: 16873000,
|
|
||||||
leafCount: 3,
|
|
||||||
addedAt: 1668779618,
|
|
||||||
updatedAt: 1668787730,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
|
|
||||||
| `mediaContainer` | [models.GetGlobalHubsMediaContainer](../models/getglobalhubsmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetHomeDataErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetHomeDataErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetHomeDataErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetHomeDataPlexResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetHomeDataPlexResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetHomeDataErrors](../models/gethomedataerrors.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 |
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
# GetHomeDataResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetHomeDataResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetHomeDataResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 368241,
|
|
||||||
rawResponse: new Response('{"message": "hello world"}', {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
id: 1841489,
|
|
||||||
name: "Blindkitty38's home",
|
|
||||||
guestUserID: 58815432,
|
|
||||||
guestUserUUID: "f3df4e01bfca0787",
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## 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` | [models.GetHomeDataResponseBody](../models/gethomedataresponsebody.md) | :heavy_minus_sign: | Home Data |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetLibraryDetailsErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryDetailsErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetLibraryDetailsErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetLibraryDetailsLibraryResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryDetailsLibraryResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
|
|
||||||
| `errors` | [models.GetLibraryDetailsErrors](../models/getlibrarydetailserrors.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 |
|
|
||||||
@@ -1,97 +0,0 @@
|
|||||||
# GetLibraryDetailsMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryDetailsMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetLibraryDetailsMediaContainer = {
|
|
||||||
size: 29,
|
|
||||||
allowSync: false,
|
|
||||||
art: "/:/resources/movie-fanart.jpg",
|
|
||||||
content: "secondary",
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
librarySectionID: 1,
|
|
||||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
|
||||||
mediaTagVersion: 1701731894,
|
|
||||||
thumb: "/:/resources/movie.png",
|
|
||||||
title1: "Movies",
|
|
||||||
viewGroup: "secondary",
|
|
||||||
viewMode: 65592,
|
|
||||||
directory: [
|
|
||||||
{
|
|
||||||
key: "search?type=1",
|
|
||||||
title: "Search...",
|
|
||||||
secondary: true,
|
|
||||||
prompt: "Search Movies",
|
|
||||||
search: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
type: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/1/all?type=1",
|
|
||||||
type: "movie",
|
|
||||||
title: "Movies",
|
|
||||||
active: false,
|
|
||||||
filter: [
|
|
||||||
{
|
|
||||||
filter: "label",
|
|
||||||
filterType: "string",
|
|
||||||
key: "/library/sections/1/label",
|
|
||||||
title: "Labels",
|
|
||||||
type: "filter",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{
|
|
||||||
default: "asc",
|
|
||||||
defaultDirection: "desc",
|
|
||||||
descKey: "random:desc",
|
|
||||||
firstCharacterKey: "/library/sections/1/firstCharacter",
|
|
||||||
key: "random",
|
|
||||||
title: "Randomly",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
field: [
|
|
||||||
{
|
|
||||||
key: "label",
|
|
||||||
title: "Label",
|
|
||||||
type: "tag",
|
|
||||||
subType: "bitrate",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
fieldType: [
|
|
||||||
{
|
|
||||||
type: "resolution",
|
|
||||||
operator: [
|
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 29 |
|
|
||||||
| `allowSync` | *boolean* | :heavy_minus_sign: | N/A | false |
|
|
||||||
| `art` | *string* | :heavy_minus_sign: | N/A | /:/resources/movie-fanart.jpg |
|
|
||||||
| `content` | *string* | :heavy_minus_sign: | N/A | secondary |
|
|
||||||
| `identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library |
|
|
||||||
| `librarySectionID` | *number* | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `mediaTagPrefix` | *string* | :heavy_minus_sign: | N/A | /system/bundle/media/flags/ |
|
|
||||||
| `mediaTagVersion` | *number* | :heavy_minus_sign: | N/A | 1701731894 |
|
|
||||||
| `thumb` | *string* | :heavy_minus_sign: | N/A | /:/resources/movie.png |
|
|
||||||
| `title1` | *string* | :heavy_minus_sign: | N/A | Movies |
|
|
||||||
| `viewGroup` | *string* | :heavy_minus_sign: | N/A | secondary |
|
|
||||||
| `viewMode` | *number* | :heavy_minus_sign: | N/A | 65592 |
|
|
||||||
| `directory` | [models.GetLibraryDetailsDirectory](../models/getlibrarydetailsdirectory.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `type` | [models.GetLibraryDetailsType](../models/getlibrarydetailstype.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `fieldType` | [models.FieldType](../models/fieldtype.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,95 +0,0 @@
|
|||||||
# GetLibraryDetailsResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryDetailsResponse } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetLibraryDetailsResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 902349,
|
|
||||||
rawResponse: new Response('{"message": "hello world"}', {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 29,
|
|
||||||
allowSync: false,
|
|
||||||
art: "/:/resources/movie-fanart.jpg",
|
|
||||||
content: "secondary",
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
librarySectionID: 1,
|
|
||||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
|
||||||
mediaTagVersion: 1701731894,
|
|
||||||
thumb: "/:/resources/movie.png",
|
|
||||||
title1: "Movies",
|
|
||||||
viewGroup: "secondary",
|
|
||||||
viewMode: 65592,
|
|
||||||
directory: [
|
|
||||||
{
|
|
||||||
key: "search?type=1",
|
|
||||||
title: "Search...",
|
|
||||||
secondary: true,
|
|
||||||
prompt: "Search Movies",
|
|
||||||
search: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
type: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/1/all?type=1",
|
|
||||||
type: "movie",
|
|
||||||
title: "Movies",
|
|
||||||
active: false,
|
|
||||||
filter: [
|
|
||||||
{
|
|
||||||
filter: "label",
|
|
||||||
filterType: "string",
|
|
||||||
key: "/library/sections/1/label",
|
|
||||||
title: "Labels",
|
|
||||||
type: "filter",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{
|
|
||||||
default: "asc",
|
|
||||||
defaultDirection: "desc",
|
|
||||||
descKey: "random:desc",
|
|
||||||
firstCharacterKey: "/library/sections/1/firstCharacter",
|
|
||||||
key: "random",
|
|
||||||
title: "Randomly",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
field: [
|
|
||||||
{
|
|
||||||
key: "label",
|
|
||||||
title: "Label",
|
|
||||||
type: "tag",
|
|
||||||
subType: "bitrate",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
fieldType: [
|
|
||||||
{
|
|
||||||
type: "resolution",
|
|
||||||
operator: [
|
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## 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` | [models.GetLibraryDetailsResponseBody](../models/getlibrarydetailsresponsebody.md) | :heavy_minus_sign: | The details of the library |
|
|
||||||
@@ -1,87 +0,0 @@
|
|||||||
# GetLibraryDetailsResponseBody
|
|
||||||
|
|
||||||
The details of the library
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryDetailsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetLibraryDetailsResponseBody = {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 29,
|
|
||||||
allowSync: false,
|
|
||||||
art: "/:/resources/movie-fanart.jpg",
|
|
||||||
content: "secondary",
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
librarySectionID: 1,
|
|
||||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
|
||||||
mediaTagVersion: 1701731894,
|
|
||||||
thumb: "/:/resources/movie.png",
|
|
||||||
title1: "Movies",
|
|
||||||
viewGroup: "secondary",
|
|
||||||
viewMode: 65592,
|
|
||||||
directory: [
|
|
||||||
{
|
|
||||||
key: "search?type=1",
|
|
||||||
title: "Search...",
|
|
||||||
secondary: true,
|
|
||||||
prompt: "Search Movies",
|
|
||||||
search: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
type: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/1/all?type=1",
|
|
||||||
type: "movie",
|
|
||||||
title: "Movies",
|
|
||||||
active: false,
|
|
||||||
filter: [
|
|
||||||
{
|
|
||||||
filter: "label",
|
|
||||||
filterType: "string",
|
|
||||||
key: "/library/sections/1/label",
|
|
||||||
title: "Labels",
|
|
||||||
type: "filter",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{
|
|
||||||
default: "asc",
|
|
||||||
defaultDirection: "desc",
|
|
||||||
descKey: "random:desc",
|
|
||||||
firstCharacterKey: "/library/sections/1/firstCharacter",
|
|
||||||
key: "random",
|
|
||||||
title: "Randomly",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
field: [
|
|
||||||
{
|
|
||||||
key: "label",
|
|
||||||
title: "Label",
|
|
||||||
type: "tag",
|
|
||||||
subType: "bitrate",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
fieldType: [
|
|
||||||
{
|
|
||||||
type: "resolution",
|
|
||||||
operator: [
|
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
|
|
||||||
| `mediaContainer` | [models.GetLibraryDetailsMediaContainer](../models/getlibrarydetailsmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
# GetLibraryDetailsType
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryDetailsType } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetLibraryDetailsType = {
|
|
||||||
key: "/library/sections/1/all?type=1",
|
|
||||||
type: "movie",
|
|
||||||
title: "Movies",
|
|
||||||
active: false,
|
|
||||||
filter: [
|
|
||||||
{
|
|
||||||
filter: "label",
|
|
||||||
filterType: "string",
|
|
||||||
key: "/library/sections/1/label",
|
|
||||||
title: "Labels",
|
|
||||||
type: "filter",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{
|
|
||||||
default: "asc",
|
|
||||||
defaultDirection: "desc",
|
|
||||||
descKey: "random:desc",
|
|
||||||
firstCharacterKey: "/library/sections/1/firstCharacter",
|
|
||||||
key: "random",
|
|
||||||
title: "Randomly",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
field: [
|
|
||||||
{
|
|
||||||
key: "label",
|
|
||||||
title: "Label",
|
|
||||||
type: "tag",
|
|
||||||
subType: "bitrate",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
|
|
||||||
| `key` | *string* | :heavy_minus_sign: | N/A | /library/sections/1/all?type=1 |
|
|
||||||
| `type` | *string* | :heavy_minus_sign: | N/A | movie |
|
|
||||||
| `title` | *string* | :heavy_minus_sign: | N/A | Movies |
|
|
||||||
| `active` | *boolean* | :heavy_minus_sign: | N/A | false |
|
|
||||||
| `filter` | [models.GetLibraryDetailsFilter](../models/getlibrarydetailsfilter.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `sort` | [models.Sort](../models/sort.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `field` | [models.Field](../models/field.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetLibraryHubsErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryHubsErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetLibraryHubsErrors = {
|
|
||||||
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 |
|
|
||||||
@@ -1,131 +0,0 @@
|
|||||||
# GetLibraryHubsHub
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryHubsHub } from "@lukehagar/plexjs";
|
|
||||||
import { RFCDate } from "@lukehagar/plexjs/types";
|
|
||||||
|
|
||||||
let value: GetLibraryHubsHub = {
|
|
||||||
key: "/library/sections/1/all?sort=lastViewedAt:desc&unwatched=0&viewOffset=0",
|
|
||||||
title: "Recently Played Movies",
|
|
||||||
type: "movie",
|
|
||||||
hubIdentifier: "movie.recentlyviewed.1",
|
|
||||||
context: "hub.movie.recentlyviewed",
|
|
||||||
size: 6,
|
|
||||||
more: true,
|
|
||||||
style: "shelf",
|
|
||||||
hubKey: "/library/metadata/66485,66098,57249,11449,5858,14944",
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "14944",
|
|
||||||
key: "/library/metadata/14944",
|
|
||||||
guid: "plex://movie/5d77686eeb5d26001f1eb339",
|
|
||||||
studio: "Walt Disney Animation Studios",
|
|
||||||
type: "movie",
|
|
||||||
title: "Tangled",
|
|
||||||
librarySectionTitle: "Movies",
|
|
||||||
librarySectionID: 1,
|
|
||||||
librarySectionKey: "/library/sections/1",
|
|
||||||
contentRating: "PG",
|
|
||||||
summary:
|
|
||||||
"The magically long-haired Rapunzel has spent her entire life in a tower, but now that a runaway thief has stumbled upon her, she is about to discover the world for the first time, and who she really is.",
|
|
||||||
rating: 8.9,
|
|
||||||
audienceRating: 8.7,
|
|
||||||
viewCount: 1,
|
|
||||||
lastViewedAt: 1704936047,
|
|
||||||
year: 2010,
|
|
||||||
tagline: "They're taking adventure to new lengths.",
|
|
||||||
thumb: "/library/metadata/14944/thumb/1705739847",
|
|
||||||
art: "/library/metadata/14944/art/1705739847",
|
|
||||||
duration: 6017237,
|
|
||||||
originallyAvailableAt: new RFCDate("2010-11-24T00:00:00Z"),
|
|
||||||
addedAt: 1589412494,
|
|
||||||
updatedAt: 1705739847,
|
|
||||||
audienceRatingImage: "rottentomatoes://image.rating.upright",
|
|
||||||
primaryExtraKey: "/library/metadata/14952",
|
|
||||||
ratingImage: "rottentomatoes://image.rating.ripe",
|
|
||||||
media: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
duration: 6017237,
|
|
||||||
bitrate: 2051,
|
|
||||||
width: 1920,
|
|
||||||
height: 1080,
|
|
||||||
aspectRatio: 1.78,
|
|
||||||
audioChannels: 2,
|
|
||||||
audioCodec: "aac",
|
|
||||||
videoCodec: "h264",
|
|
||||||
videoResolution: "1080",
|
|
||||||
container: "mp4",
|
|
||||||
videoFrameRate: "24p",
|
|
||||||
optimizedForStreaming: 1,
|
|
||||||
audioProfile: "lc",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
videoProfile: "high",
|
|
||||||
part: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
key: "/library/parts/38247/1589412494/file.mp4",
|
|
||||||
duration: 6017237,
|
|
||||||
file: "/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4",
|
|
||||||
size: 1545647447,
|
|
||||||
audioProfile: "lc",
|
|
||||||
container: "mp4",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: true,
|
|
||||||
videoProfile: "high",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
genre: [
|
|
||||||
{
|
|
||||||
tag: "Animation",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
country: [
|
|
||||||
{
|
|
||||||
tag: "United States of America",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
director: [
|
|
||||||
{
|
|
||||||
tag: "Nathan Greno",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
role: [
|
|
||||||
{
|
|
||||||
tag: "Donna Murphy",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
writer: [
|
|
||||||
{
|
|
||||||
tag: "Wilhelm Grimm",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
skipCount: 1,
|
|
||||||
chapterSource: "media",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
promoted: true,
|
|
||||||
random: true,
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- |
|
|
||||||
| `key` | *string* | :heavy_minus_sign: | N/A | /library/sections/1/all?sort=lastViewedAt:desc&unwatched=0&viewOffset=0 |
|
|
||||||
| `title` | *string* | :heavy_minus_sign: | N/A | Recently Played Movies |
|
|
||||||
| `type` | *string* | :heavy_minus_sign: | N/A | movie |
|
|
||||||
| `hubIdentifier` | *string* | :heavy_minus_sign: | N/A | movie.recentlyviewed.1 |
|
|
||||||
| `context` | *string* | :heavy_minus_sign: | N/A | hub.movie.recentlyviewed |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 6 |
|
|
||||||
| `more` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `style` | *string* | :heavy_minus_sign: | N/A | shelf |
|
|
||||||
| `hubKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66485,66098,57249,11449,5858,14944 |
|
|
||||||
| `metadata` | [models.GetLibraryHubsMetadata](../models/getlibraryhubsmetadata.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `promoted` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `random` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetLibraryHubsHubsResponseBody
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryHubsHubsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
|
||||||
| `errors` | [models.GetLibraryHubsErrors](../models/getlibraryhubserrors.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 |
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
# GetLibraryHubsMedia
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryHubsMedia } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetLibraryHubsMedia = {
|
|
||||||
id: 38247,
|
|
||||||
duration: 6017237,
|
|
||||||
bitrate: 2051,
|
|
||||||
width: 1920,
|
|
||||||
height: 1080,
|
|
||||||
aspectRatio: 1.78,
|
|
||||||
audioChannels: 2,
|
|
||||||
audioCodec: "aac",
|
|
||||||
videoCodec: "h264",
|
|
||||||
videoResolution: "1080",
|
|
||||||
container: "mp4",
|
|
||||||
videoFrameRate: "24p",
|
|
||||||
optimizedForStreaming: 1,
|
|
||||||
audioProfile: "lc",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
videoProfile: "high",
|
|
||||||
part: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
key: "/library/parts/38247/1589412494/file.mp4",
|
|
||||||
duration: 6017237,
|
|
||||||
file: "/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4",
|
|
||||||
size: 1545647447,
|
|
||||||
audioProfile: "lc",
|
|
||||||
container: "mp4",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: true,
|
|
||||||
videoProfile: "high",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- |
|
|
||||||
| `id` | *number* | :heavy_minus_sign: | N/A | 38247 |
|
|
||||||
| `duration` | *number* | :heavy_minus_sign: | N/A | 6017237 |
|
|
||||||
| `bitrate` | *number* | :heavy_minus_sign: | N/A | 2051 |
|
|
||||||
| `width` | *number* | :heavy_minus_sign: | N/A | 1920 |
|
|
||||||
| `height` | *number* | :heavy_minus_sign: | N/A | 1080 |
|
|
||||||
| `aspectRatio` | *number* | :heavy_minus_sign: | N/A | 1.78 |
|
|
||||||
| `audioChannels` | *number* | :heavy_minus_sign: | N/A | 2 |
|
|
||||||
| `audioCodec` | *string* | :heavy_minus_sign: | N/A | aac |
|
|
||||||
| `videoCodec` | *string* | :heavy_minus_sign: | N/A | h264 |
|
|
||||||
| `videoResolution` | *string* | :heavy_minus_sign: | N/A | 1080 |
|
|
||||||
| `container` | *string* | :heavy_minus_sign: | N/A | mp4 |
|
|
||||||
| `videoFrameRate` | *string* | :heavy_minus_sign: | N/A | 24p |
|
|
||||||
| `optimizedForStreaming` | *number* | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `audioProfile` | *string* | :heavy_minus_sign: | N/A | lc |
|
|
||||||
| `has64bitOffsets` | *boolean* | :heavy_minus_sign: | N/A | false |
|
|
||||||
| `videoProfile` | *string* | :heavy_minus_sign: | N/A | high |
|
|
||||||
| `part` | [models.GetLibraryHubsPart](../models/getlibraryhubspart.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
# GetLibraryHubsMediaContainer
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryHubsMediaContainer } from "@lukehagar/plexjs";
|
|
||||||
import { RFCDate } from "@lukehagar/plexjs/types";
|
|
||||||
|
|
||||||
let value: GetLibraryHubsMediaContainer = {
|
|
||||||
size: 7,
|
|
||||||
allowSync: true,
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
librarySectionID: 1,
|
|
||||||
librarySectionTitle: "Movies",
|
|
||||||
librarySectionUUID: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
|
||||||
hub: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/1/all?sort=lastViewedAt:desc&unwatched=0&viewOffset=0",
|
|
||||||
title: "Recently Played Movies",
|
|
||||||
type: "movie",
|
|
||||||
hubIdentifier: "movie.recentlyviewed.1",
|
|
||||||
context: "hub.movie.recentlyviewed",
|
|
||||||
size: 6,
|
|
||||||
more: true,
|
|
||||||
style: "shelf",
|
|
||||||
hubKey: "/library/metadata/66485,66098,57249,11449,5858,14944",
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "14944",
|
|
||||||
key: "/library/metadata/14944",
|
|
||||||
guid: "plex://movie/5d77686eeb5d26001f1eb339",
|
|
||||||
studio: "Walt Disney Animation Studios",
|
|
||||||
type: "movie",
|
|
||||||
title: "Tangled",
|
|
||||||
librarySectionTitle: "Movies",
|
|
||||||
librarySectionID: 1,
|
|
||||||
librarySectionKey: "/library/sections/1",
|
|
||||||
contentRating: "PG",
|
|
||||||
summary:
|
|
||||||
"The magically long-haired Rapunzel has spent her entire life in a tower, but now that a runaway thief has stumbled upon her, she is about to discover the world for the first time, and who she really is.",
|
|
||||||
rating: 8.9,
|
|
||||||
audienceRating: 8.7,
|
|
||||||
viewCount: 1,
|
|
||||||
lastViewedAt: 1704936047,
|
|
||||||
year: 2010,
|
|
||||||
tagline: "They're taking adventure to new lengths.",
|
|
||||||
thumb: "/library/metadata/14944/thumb/1705739847",
|
|
||||||
art: "/library/metadata/14944/art/1705739847",
|
|
||||||
duration: 6017237,
|
|
||||||
originallyAvailableAt: new RFCDate("2010-11-24T00:00:00Z"),
|
|
||||||
addedAt: 1589412494,
|
|
||||||
updatedAt: 1705739847,
|
|
||||||
audienceRatingImage: "rottentomatoes://image.rating.upright",
|
|
||||||
primaryExtraKey: "/library/metadata/14952",
|
|
||||||
ratingImage: "rottentomatoes://image.rating.ripe",
|
|
||||||
media: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
duration: 6017237,
|
|
||||||
bitrate: 2051,
|
|
||||||
width: 1920,
|
|
||||||
height: 1080,
|
|
||||||
aspectRatio: 1.78,
|
|
||||||
audioChannels: 2,
|
|
||||||
audioCodec: "aac",
|
|
||||||
videoCodec: "h264",
|
|
||||||
videoResolution: "1080",
|
|
||||||
container: "mp4",
|
|
||||||
videoFrameRate: "24p",
|
|
||||||
optimizedForStreaming: 1,
|
|
||||||
audioProfile: "lc",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
videoProfile: "high",
|
|
||||||
part: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
key: "/library/parts/38247/1589412494/file.mp4",
|
|
||||||
duration: 6017237,
|
|
||||||
file: "/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4",
|
|
||||||
size: 1545647447,
|
|
||||||
audioProfile: "lc",
|
|
||||||
container: "mp4",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: true,
|
|
||||||
videoProfile: "high",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
genre: [
|
|
||||||
{
|
|
||||||
tag: "Animation",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
country: [
|
|
||||||
{
|
|
||||||
tag: "United States of America",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
director: [
|
|
||||||
{
|
|
||||||
tag: "Nathan Greno",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
role: [
|
|
||||||
{
|
|
||||||
tag: "Donna Murphy",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
writer: [
|
|
||||||
{
|
|
||||||
tag: "Wilhelm Grimm",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
skipCount: 1,
|
|
||||||
chapterSource: "media",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
promoted: true,
|
|
||||||
random: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
|
|
||||||
| `size` | *number* | :heavy_minus_sign: | N/A | 7 |
|
|
||||||
| `allowSync` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library |
|
|
||||||
| `librarySectionID` | *number* | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `librarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies |
|
|
||||||
| `librarySectionUUID` | *string* | :heavy_minus_sign: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 |
|
|
||||||
| `hub` | [models.GetLibraryHubsHub](../models/getlibraryhubshub.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -1,142 +0,0 @@
|
|||||||
# GetLibraryHubsResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryHubsResponse } from "@lukehagar/plexjs";
|
|
||||||
import { RFCDate } from "@lukehagar/plexjs/types";
|
|
||||||
|
|
||||||
let value: GetLibraryHubsResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 616934,
|
|
||||||
rawResponse: new Response('{"message": "hello world"}', {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 7,
|
|
||||||
allowSync: true,
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
librarySectionID: 1,
|
|
||||||
librarySectionTitle: "Movies",
|
|
||||||
librarySectionUUID: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
|
||||||
hub: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/1/all?sort=lastViewedAt:desc&unwatched=0&viewOffset=0",
|
|
||||||
title: "Recently Played Movies",
|
|
||||||
type: "movie",
|
|
||||||
hubIdentifier: "movie.recentlyviewed.1",
|
|
||||||
context: "hub.movie.recentlyviewed",
|
|
||||||
size: 6,
|
|
||||||
more: true,
|
|
||||||
style: "shelf",
|
|
||||||
hubKey: "/library/metadata/66485,66098,57249,11449,5858,14944",
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "14944",
|
|
||||||
key: "/library/metadata/14944",
|
|
||||||
guid: "plex://movie/5d77686eeb5d26001f1eb339",
|
|
||||||
studio: "Walt Disney Animation Studios",
|
|
||||||
type: "movie",
|
|
||||||
title: "Tangled",
|
|
||||||
librarySectionTitle: "Movies",
|
|
||||||
librarySectionID: 1,
|
|
||||||
librarySectionKey: "/library/sections/1",
|
|
||||||
contentRating: "PG",
|
|
||||||
summary:
|
|
||||||
"The magically long-haired Rapunzel has spent her entire life in a tower, but now that a runaway thief has stumbled upon her, she is about to discover the world for the first time, and who she really is.",
|
|
||||||
rating: 8.9,
|
|
||||||
audienceRating: 8.7,
|
|
||||||
viewCount: 1,
|
|
||||||
lastViewedAt: 1704936047,
|
|
||||||
year: 2010,
|
|
||||||
tagline: "They're taking adventure to new lengths.",
|
|
||||||
thumb: "/library/metadata/14944/thumb/1705739847",
|
|
||||||
art: "/library/metadata/14944/art/1705739847",
|
|
||||||
duration: 6017237,
|
|
||||||
originallyAvailableAt: new RFCDate("2010-11-24T00:00:00Z"),
|
|
||||||
addedAt: 1589412494,
|
|
||||||
updatedAt: 1705739847,
|
|
||||||
audienceRatingImage: "rottentomatoes://image.rating.upright",
|
|
||||||
primaryExtraKey: "/library/metadata/14952",
|
|
||||||
ratingImage: "rottentomatoes://image.rating.ripe",
|
|
||||||
media: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
duration: 6017237,
|
|
||||||
bitrate: 2051,
|
|
||||||
width: 1920,
|
|
||||||
height: 1080,
|
|
||||||
aspectRatio: 1.78,
|
|
||||||
audioChannels: 2,
|
|
||||||
audioCodec: "aac",
|
|
||||||
videoCodec: "h264",
|
|
||||||
videoResolution: "1080",
|
|
||||||
container: "mp4",
|
|
||||||
videoFrameRate: "24p",
|
|
||||||
optimizedForStreaming: 1,
|
|
||||||
audioProfile: "lc",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
videoProfile: "high",
|
|
||||||
part: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
key: "/library/parts/38247/1589412494/file.mp4",
|
|
||||||
duration: 6017237,
|
|
||||||
file: "/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4",
|
|
||||||
size: 1545647447,
|
|
||||||
audioProfile: "lc",
|
|
||||||
container: "mp4",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: true,
|
|
||||||
videoProfile: "high",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
genre: [
|
|
||||||
{
|
|
||||||
tag: "Animation",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
country: [
|
|
||||||
{
|
|
||||||
tag: "United States of America",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
director: [
|
|
||||||
{
|
|
||||||
tag: "Nathan Greno",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
role: [
|
|
||||||
{
|
|
||||||
tag: "Donna Murphy",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
writer: [
|
|
||||||
{
|
|
||||||
tag: "Wilhelm Grimm",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
skipCount: 1,
|
|
||||||
chapterSource: "media",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
promoted: true,
|
|
||||||
random: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## 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` | [models.GetLibraryHubsResponseBody](../models/getlibraryhubsresponsebody.md) | :heavy_minus_sign: | The hubs specific to the library |
|
|
||||||
@@ -1,134 +0,0 @@
|
|||||||
# GetLibraryHubsResponseBody
|
|
||||||
|
|
||||||
The hubs specific to the library
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryHubsResponseBody } from "@lukehagar/plexjs";
|
|
||||||
import { RFCDate } from "@lukehagar/plexjs/types";
|
|
||||||
|
|
||||||
let value: GetLibraryHubsResponseBody = {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 7,
|
|
||||||
allowSync: true,
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
librarySectionID: 1,
|
|
||||||
librarySectionTitle: "Movies",
|
|
||||||
librarySectionUUID: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
|
||||||
hub: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/1/all?sort=lastViewedAt:desc&unwatched=0&viewOffset=0",
|
|
||||||
title: "Recently Played Movies",
|
|
||||||
type: "movie",
|
|
||||||
hubIdentifier: "movie.recentlyviewed.1",
|
|
||||||
context: "hub.movie.recentlyviewed",
|
|
||||||
size: 6,
|
|
||||||
more: true,
|
|
||||||
style: "shelf",
|
|
||||||
hubKey: "/library/metadata/66485,66098,57249,11449,5858,14944",
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "14944",
|
|
||||||
key: "/library/metadata/14944",
|
|
||||||
guid: "plex://movie/5d77686eeb5d26001f1eb339",
|
|
||||||
studio: "Walt Disney Animation Studios",
|
|
||||||
type: "movie",
|
|
||||||
title: "Tangled",
|
|
||||||
librarySectionTitle: "Movies",
|
|
||||||
librarySectionID: 1,
|
|
||||||
librarySectionKey: "/library/sections/1",
|
|
||||||
contentRating: "PG",
|
|
||||||
summary:
|
|
||||||
"The magically long-haired Rapunzel has spent her entire life in a tower, but now that a runaway thief has stumbled upon her, she is about to discover the world for the first time, and who she really is.",
|
|
||||||
rating: 8.9,
|
|
||||||
audienceRating: 8.7,
|
|
||||||
viewCount: 1,
|
|
||||||
lastViewedAt: 1704936047,
|
|
||||||
year: 2010,
|
|
||||||
tagline: "They're taking adventure to new lengths.",
|
|
||||||
thumb: "/library/metadata/14944/thumb/1705739847",
|
|
||||||
art: "/library/metadata/14944/art/1705739847",
|
|
||||||
duration: 6017237,
|
|
||||||
originallyAvailableAt: new RFCDate("2010-11-24T00:00:00Z"),
|
|
||||||
addedAt: 1589412494,
|
|
||||||
updatedAt: 1705739847,
|
|
||||||
audienceRatingImage: "rottentomatoes://image.rating.upright",
|
|
||||||
primaryExtraKey: "/library/metadata/14952",
|
|
||||||
ratingImage: "rottentomatoes://image.rating.ripe",
|
|
||||||
media: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
duration: 6017237,
|
|
||||||
bitrate: 2051,
|
|
||||||
width: 1920,
|
|
||||||
height: 1080,
|
|
||||||
aspectRatio: 1.78,
|
|
||||||
audioChannels: 2,
|
|
||||||
audioCodec: "aac",
|
|
||||||
videoCodec: "h264",
|
|
||||||
videoResolution: "1080",
|
|
||||||
container: "mp4",
|
|
||||||
videoFrameRate: "24p",
|
|
||||||
optimizedForStreaming: 1,
|
|
||||||
audioProfile: "lc",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
videoProfile: "high",
|
|
||||||
part: [
|
|
||||||
{
|
|
||||||
id: 38247,
|
|
||||||
key: "/library/parts/38247/1589412494/file.mp4",
|
|
||||||
duration: 6017237,
|
|
||||||
file: "/movies/Tangled (2010)/Tangled (2010) Bluray-1080p.mp4",
|
|
||||||
size: 1545647447,
|
|
||||||
audioProfile: "lc",
|
|
||||||
container: "mp4",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: true,
|
|
||||||
videoProfile: "high",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
genre: [
|
|
||||||
{
|
|
||||||
tag: "Animation",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
country: [
|
|
||||||
{
|
|
||||||
tag: "United States of America",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
director: [
|
|
||||||
{
|
|
||||||
tag: "Nathan Greno",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
role: [
|
|
||||||
{
|
|
||||||
tag: "Donna Murphy",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
writer: [
|
|
||||||
{
|
|
||||||
tag: "Wilhelm Grimm",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
skipCount: 1,
|
|
||||||
chapterSource: "media",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
promoted: true,
|
|
||||||
random: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
|
|
||||||
| `mediaContainer` | [models.GetLibraryHubsMediaContainer](../models/getlibraryhubsmediacontainer.md) | :heavy_minus_sign: | N/A |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetLibraryItemsErrors
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetLibraryItemsErrors } from "@lukehagar/plexjs";
|
|
||||||
|
|
||||||
let value: GetLibraryItemsErrors = {
|
|
||||||
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 |
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user