mirror of
https://github.com/LukeHagar/plexjs.git
synced 2025-12-06 12:37:46 +00:00
Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
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:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
registry_package:
|
||||
types: [published]
|
||||
|
||||
jobs:
|
||||
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 }}
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -1,3 +1,6 @@
|
||||
/sdk/models/errors
|
||||
/sdk/types
|
||||
/__tests__
|
||||
/funcs
|
||||
/core.*
|
||||
/esm
|
||||
|
||||
@@ -7,3 +7,4 @@
|
||||
/cjs
|
||||
/.tshy
|
||||
/.tshy-*
|
||||
/__tests__
|
||||
|
||||
2674
.speakeasy/gen.lock
2674
.speakeasy/gen.lock
File diff suppressed because it is too large
Load Diff
@@ -12,7 +12,7 @@ generation:
|
||||
auth:
|
||||
oAuth2ClientCredentialsEnabled: true
|
||||
typescript:
|
||||
version: 0.20.0
|
||||
version: 0.22.2
|
||||
additionalDependencies:
|
||||
dependencies: {}
|
||||
devDependencies: {}
|
||||
@@ -25,11 +25,11 @@ typescript:
|
||||
imports:
|
||||
option: openapi
|
||||
paths:
|
||||
callbacks: ""
|
||||
errors: ""
|
||||
operations: ""
|
||||
shared: ""
|
||||
webhooks: ""
|
||||
callbacks: sdk/models/callbacks
|
||||
errors: sdk/models/errors
|
||||
operations: sdk/models/operations
|
||||
shared: sdk/models/shared
|
||||
webhooks: sdk/models/webhooks
|
||||
inputModelSuffix: input
|
||||
maxMethodParams: 4
|
||||
methodArguments: require-security-and-request
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
speakeasyVersion: 1.390.7
|
||||
speakeasyVersion: 1.396.2
|
||||
sources:
|
||||
my-source:
|
||||
sourceNamespace: my-source
|
||||
sourceRevisionDigest: sha256:fff67c8d70fdb1711caf3e9c61cdc91a4c88ac98b3419c1d287db6ca95c7278b
|
||||
sourceBlobDigest: sha256:235067aeeeba40f6a4b062d9b9e6816a6e1282023f9664b46cbc1af6495b4c53
|
||||
sourceRevisionDigest: sha256:1f43c28112982f7603d8fed99ad5b2d14de397325c20863fb693a4f89f96e3c6
|
||||
sourceBlobDigest: sha256:f7e2709f52370dff16c1851a7a4e44a89f2e978e9cae335bffc10625950b3bd9
|
||||
tags:
|
||||
- latest
|
||||
- main
|
||||
@@ -11,10 +11,10 @@ targets:
|
||||
plexjs:
|
||||
source: my-source
|
||||
sourceNamespace: my-source
|
||||
sourceRevisionDigest: sha256:fff67c8d70fdb1711caf3e9c61cdc91a4c88ac98b3419c1d287db6ca95c7278b
|
||||
sourceBlobDigest: sha256:235067aeeeba40f6a4b062d9b9e6816a6e1282023f9664b46cbc1af6495b4c53
|
||||
sourceRevisionDigest: sha256:1f43c28112982f7603d8fed99ad5b2d14de397325c20863fb693a4f89f96e3c6
|
||||
sourceBlobDigest: sha256:f7e2709f52370dff16c1851a7a4e44a89f2e978e9cae335bffc10625950b3bd9
|
||||
codeSamplesNamespace: code-samples-typescript-plexjs
|
||||
codeSamplesRevisionDigest: sha256:18919b4d52e4482e8771f2e3657d74cae7f332e481471d177e5b248a9ffc99bd
|
||||
codeSamplesRevisionDigest: sha256:828feb501a2eb665fe7666da267e21509de3ac1c1d3333b14e7e88abf0d0cb71
|
||||
outLocation: /github/workspace/repo
|
||||
workflow:
|
||||
workflowVersion: 1.0.0
|
||||
@@ -22,16 +22,14 @@ workflow:
|
||||
sources:
|
||||
my-source:
|
||||
inputs:
|
||||
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
|
||||
registry:
|
||||
location: registry.speakeasyapi.dev/lukehagar/lukehagar/my-source
|
||||
- location: registry.speakeasyapi.dev/lukehagar/lukehagar/plex-api:main
|
||||
targets:
|
||||
plexjs:
|
||||
target: typescript
|
||||
source: my-source
|
||||
publish:
|
||||
npm:
|
||||
token: $NPM_TOKEN
|
||||
token: $npm_token
|
||||
codeSamples:
|
||||
output: codeSamples.yaml
|
||||
registry:
|
||||
|
||||
@@ -3,16 +3,14 @@ speakeasyVersion: latest
|
||||
sources:
|
||||
my-source:
|
||||
inputs:
|
||||
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
|
||||
registry:
|
||||
location: registry.speakeasyapi.dev/lukehagar/lukehagar/my-source
|
||||
- location: registry.speakeasyapi.dev/lukehagar/lukehagar/plex-api:main
|
||||
targets:
|
||||
plexjs:
|
||||
target: typescript
|
||||
source: my-source
|
||||
publish:
|
||||
npm:
|
||||
token: $NPM_TOKEN
|
||||
token: $npm_token
|
||||
codeSamples:
|
||||
output: codeSamples.yaml
|
||||
registry:
|
||||
|
||||
@@ -21,7 +21,7 @@ specific category of applications.
|
||||
```typescript
|
||||
import { PlexAPICore } from "@lukehagar/plexjs/core.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.
|
||||
// You can create one instance of it to use across an application.
|
||||
|
||||
225
README.md
225
README.md
@@ -72,15 +72,15 @@ yarn add @lukehagar/plexjs zod
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
@@ -189,10 +189,10 @@ run();
|
||||
|
||||
### [authentication](docs/sdks/authentication/README.md)
|
||||
|
||||
* [getTransientToken](docs/sdks/authentication/README.md#gettransienttoken) - Get a Transient Token.
|
||||
* [getTransientToken](docs/sdks/authentication/README.md#gettransienttoken) - Get a Transient Token
|
||||
* [getSourceConnectionInformation](docs/sdks/authentication/README.md#getsourceconnectioninformation) - Get Source Connection Information
|
||||
* [getUserDetails](docs/sdks/authentication/README.md#getuserdetails) - Get User Data By Token
|
||||
* [postUsersSignInData](docs/sdks/authentication/README.md#postuserssignindata) - Get User SignIn Data
|
||||
* [getTokenDetails](docs/sdks/authentication/README.md#gettokendetails) - Get Token Details
|
||||
* [postUsersSignInData](docs/sdks/authentication/README.md#postuserssignindata) - Get User Sign In Data
|
||||
|
||||
### [statistics](docs/sdks/statistics/README.md)
|
||||
|
||||
@@ -219,49 +219,59 @@ run();
|
||||
|
||||
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.
|
||||
|
||||
| Error Object | Status Code | Content Type |
|
||||
| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
|
||||
| models.GetServerCapabilitiesServerResponseBody | 401 | application/json |
|
||||
| models.SDKError | 4xx-5xx | */* |
|
||||
| Error Object | Status Code | Content Type |
|
||||
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
|
||||
| errors.GetServerCapabilitiesBadRequest | 400 | application/json |
|
||||
| errors.GetServerCapabilitiesUnauthorized | 401 | application/json |
|
||||
| errors.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.
|
||||
|
||||
|
||||
```typescript
|
||||
import { GetServerCapabilitiesServerResponseBody, PlexAPI } from "@lukehagar/plexjs";
|
||||
import { SDKValidationError } from "@lukehagar/plexjs/models";
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
import {
|
||||
GetServerCapabilitiesBadRequest,
|
||||
GetServerCapabilitiesUnauthorized,
|
||||
SDKValidationError,
|
||||
} from "@lukehagar/plexjs/sdk/models/errors";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
let result;
|
||||
try {
|
||||
result = await plexAPI.server.getServerCapabilities();
|
||||
let result;
|
||||
try {
|
||||
result = await plexAPI.server.getServerCapabilities();
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
} catch (err) {
|
||||
switch (true) {
|
||||
case err instanceof SDKValidationError: {
|
||||
// Validation errors can be pretty-printed
|
||||
console.error(err.pretty());
|
||||
// Raw value may also be inspected
|
||||
console.error(err.rawValue);
|
||||
return;
|
||||
}
|
||||
case err instanceof GetServerCapabilitiesServerResponseBody: {
|
||||
// Handle err.data$: GetServerCapabilitiesServerResponseBodyData
|
||||
console.error(err);
|
||||
return;
|
||||
}
|
||||
default: {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
} catch (err) {
|
||||
switch (true) {
|
||||
case (err instanceof SDKValidationError): {
|
||||
// Validation errors can be pretty-printed
|
||||
console.error(err.pretty());
|
||||
// Raw value may also be inspected
|
||||
console.error(err.rawValue);
|
||||
return;
|
||||
}
|
||||
case (err instanceof GetServerCapabilitiesBadRequest): {
|
||||
// Handle err.data$: GetServerCapabilitiesBadRequestData
|
||||
console.error(err);
|
||||
return;
|
||||
}
|
||||
case (err instanceof GetServerCapabilitiesUnauthorized): {
|
||||
// Handle err.data$: GetServerCapabilitiesUnauthorizedData
|
||||
console.error(err);
|
||||
return;
|
||||
}
|
||||
default: {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
run();
|
||||
@@ -284,16 +294,16 @@ You can override the default server globally by passing a server index to the `s
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
serverIdx: 0,
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
serverIdx: 0,
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
@@ -315,16 +325,16 @@ The default server can also be overridden globally by passing a URL to the `serv
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
serverURL: "{protocol}://{ip}:{port}",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
serverURL: "{protocol}://{ip}:{port}",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
@@ -338,17 +348,17 @@ The server URL can also be overridden on a per-operation basis, provided a serve
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
const result = await plexAPI.plex.getCompanionsData({
|
||||
serverURL: "https://plex.tv/api/v2",
|
||||
});
|
||||
const result = await plexAPI.plex.getCompanionsData({
|
||||
serverURL: "https://plex.tv/api/v2/",
|
||||
});
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
@@ -421,15 +431,15 @@ To authenticate with the API the `accessToken` parameter must be set when initia
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
@@ -461,8 +471,8 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
|
||||
- [activitiesCancelServerActivities](docs/sdks/activities/README.md#cancelserveractivities)
|
||||
- [activitiesGetServerActivities](docs/sdks/activities/README.md#getserveractivities)
|
||||
- [authenticationGetSourceConnectionInformation](docs/sdks/authentication/README.md#getsourceconnectioninformation)
|
||||
- [authenticationGetTokenDetails](docs/sdks/authentication/README.md#gettokendetails)
|
||||
- [authenticationGetTransientToken](docs/sdks/authentication/README.md#gettransienttoken)
|
||||
- [authenticationGetUserDetails](docs/sdks/authentication/README.md#getuserdetails)
|
||||
- [authenticationPostUsersSignInData](docs/sdks/authentication/README.md#postuserssignindata)
|
||||
- [butlerGetButlerTasks](docs/sdks/butler/README.md#getbutlertasks)
|
||||
- [butlerStartAllTasks](docs/sdks/butler/README.md#startalltasks)
|
||||
@@ -560,23 +570,28 @@ This is used to track the client application and its usage
|
||||
### Example
|
||||
|
||||
```typescript
|
||||
import { IncludeHttps, IncludeIPv6, IncludeRelay, PlexAPI } from "@lukehagar/plexjs";
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
import {
|
||||
IncludeHttps,
|
||||
IncludeIPv6,
|
||||
IncludeRelay,
|
||||
} from "@lukehagar/plexjs/sdk/models/operations";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
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,
|
||||
});
|
||||
const result = await plexAPI.plex.getServerResources(
|
||||
"gcgzw5rz2xovp84b4vha3a40",
|
||||
IncludeHttps.One,
|
||||
IncludeRelay.One,
|
||||
IncludeIPv6.One,
|
||||
);
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
@@ -594,26 +609,26 @@ To change the default retry strategy for a single API call, simply provide a ret
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
const result = await plexAPI.server.getServerCapabilities({
|
||||
retries: {
|
||||
strategy: "backoff",
|
||||
backoff: {
|
||||
initialInterval: 1,
|
||||
maxInterval: 50,
|
||||
exponent: 1.1,
|
||||
maxElapsedTime: 100,
|
||||
},
|
||||
retryConnectionErrors: false,
|
||||
},
|
||||
});
|
||||
const result = await plexAPI.server.getServerCapabilities({
|
||||
retries: {
|
||||
strategy: "backoff",
|
||||
backoff: {
|
||||
initialInterval: 1,
|
||||
maxInterval: 50,
|
||||
exponent: 1.1,
|
||||
maxElapsedTime: 100,
|
||||
},
|
||||
retryConnectionErrors: false,
|
||||
},
|
||||
});
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
@@ -625,25 +640,25 @@ If you'd like to override the default retry strategy for all operations that sup
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
retryConfig: {
|
||||
strategy: "backoff",
|
||||
backoff: {
|
||||
initialInterval: 1,
|
||||
maxInterval: 50,
|
||||
exponent: 1.1,
|
||||
maxElapsedTime: 100,
|
||||
},
|
||||
retryConnectionErrors: false,
|
||||
retryConfig: {
|
||||
strategy: "backoff",
|
||||
backoff: {
|
||||
initialInterval: 1,
|
||||
maxInterval: 50,
|
||||
exponent: 1.1,
|
||||
maxElapsedTime: 100,
|
||||
},
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
retryConnectionErrors: false,
|
||||
},
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
|
||||
62
RELEASES.md
62
RELEASES.md
@@ -948,4 +948,64 @@ Based on:
|
||||
### Generated
|
||||
- [typescript v0.20.0] .
|
||||
### 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 - .
|
||||
10
USAGE.md
10
USAGE.md
@@ -3,15 +3,15 @@
|
||||
import { PlexAPI } from "@lukehagar/plexjs";
|
||||
|
||||
const plexAPI = new PlexAPI({
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
accessToken: "<YOUR_API_KEY_HERE>",
|
||||
xPlexClientIdentifier: "gcgzw5rz2xovp84b4vha3a40",
|
||||
});
|
||||
|
||||
async function run() {
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
const result = await plexAPI.server.getServerCapabilities();
|
||||
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
// Handle the result
|
||||
console.log(result);
|
||||
}
|
||||
|
||||
run();
|
||||
|
||||
768
codeSamples.yaml
768
codeSamples.yaml
@@ -3,447 +3,447 @@ info:
|
||||
title: CodeSamples overlay for typescript target
|
||||
version: 0.0.0
|
||||
actions:
|
||||
- target: $["paths"]["/security/resources"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getSourceConnectionInformation
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.authentication.getSourceConnectionInformation(\"server://client-identifier\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/status/sessions"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getSessions
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.sessions.getSessions();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/servers"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getServerList
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getServerList();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/butler"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: stopAllTasks
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.stopAllTasks();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/butler/{taskName}"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: startTask
|
||||
source: "import { PlexAPI, TaskName } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.startTask(TaskName.CleanOldBundles);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/home"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getHomeData
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getHomeData();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}"]["put"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: updatePlaylist
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.updatePlaylist(3915);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/metadata/{ratingKey}/children"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getMetadataChildren
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getMetadataChildren(1539.14, \"Stream\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/users/signin"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: data
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.authentication.postUsersSignInData(\"gcgzw5rz2xovp84b4vha3a40\", {\n login: \"username@email.com\",\n password: \"password123\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/statistics/bandwidth"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getBandwidthStatistics
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.statistics.getBandwidthStatistics(4);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/user"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getUserDetails
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.authentication.getUserDetails(\"CV5xoxjTpFKUzBTShsaf\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/pins"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getPin
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getPin(\"gcgzw5rz2xovp84b4vha3a40\", \"Plex Web\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}/{tag}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: items
|
||||
source: "import { IncludeGuids, IncludeMeta, PlexAPI, Tag, Type } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getLibraryItems({\n sectionKey: 9518,\n tag: Tag.Edition,\n includeGuids: IncludeGuids.One,\n includeMeta: IncludeMeta.One,\n type: Type.Two,\n xPlexContainerStart: 0,\n xPlexContainerSize: 50,\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/all/top"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTopWatchedContent
|
||||
source: "import { GetTopWatchedContentQueryParamType, PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getTopWatchedContent(GetTopWatchedContentQueryParamType.Two, 1);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: createPlaylist
|
||||
source: "import { CreatePlaylistQueryParamType, PlexAPI, Smart } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.createPlaylist({\n title: \"<value>\",\n type: CreatePlaylistQueryParamType.Photo,\n smart: Smart.One,\n uri: \"https://inborn-brochure.biz\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}/items"]["put"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: addPlaylistContents
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.addPlaylistContents(8502.01, \"server://12345/com.plexapp.plugins.library/library/metadata/1\", 123);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/media/providers"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: providers
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getMediaProviders(\"CV5xoxjTpFKUzBTShsaf\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/hubs/sections/{sectionId}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getLibraryHubs
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.hubs.getLibraryHubs(6728.76);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/hubs/search/voice"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: performVoiceSearch
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.search.performVoiceSearch(\"dead+poop\", 5);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: details
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getLibraryDetails(9518);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/watchlist/{filter}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: list
|
||||
source: "import { Filter, PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.watchlist.getWatchList({\n filter: Filter.Available,\n xPlexContainerStart: 0,\n xPlexContainerSize: 50,\n xPlexToken: \"CV5xoxjTpFKUzBTShsaf\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getServerCapabilities
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getServerCapabilities();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: deletePlaylist
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.deletePlaylist(216.22);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/butler"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getButlerTasks
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.getButlerTasks();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: libraries
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getAllLibraries();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/log"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: logLine
|
||||
source: "import { Level, PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.log.logLine(Level.Three, \"Test log message\", \"Postman\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/clients"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getAvailableClients
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getAvailableClients();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/devices"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getDevices
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getDevices();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/photo/:/transcode"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getResizedPhoto
|
||||
source: "import { MinSize, PlexAPI, Upscale } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getResizedPhoto({\n width: 110,\n height: 165,\n opacity: 100,\n blur: 20,\n minSize: MinSize.One,\n upscale: Upscale.Zero,\n url: \"/library/metadata/49564/thumb/1654258204\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/metadata/{ratingKey}/thumb"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: image
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.getThumbImage({\n ratingKey: 9518,\n width: 396,\n height: 396,\n minSize: 1,\n upscale: 1,\n xPlexToken: \"CV5xoxjTpFKUzBTShsaf\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/activities"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getServerActivities
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.activities.getServerActivities();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}/items"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getPlaylistContents
|
||||
source: "import { GetPlaylistContentsQueryParamType, PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.getPlaylistContents(5004.46, GetPlaylistContentsQueryParamType.Two);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}/items"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: clearPlaylistContents
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.clearPlaylistContents(1893.18);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/statistics/media"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getStatistics
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.statistics.getStatistics(4);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/transcode/sessions"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTranscodeSessions
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.sessions.getTranscodeSessions();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/updater/apply"]["put"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: applyUpdates
|
||||
source: "import { PlexAPI, Skip, Tonight } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.updater.applyUpdates(Tonight.One, Skip.One);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getPlaylists
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.getPlaylists();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/statistics/resources"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getResourcesStatistics
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.statistics.getResourcesStatistics(4);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/status/sessions/history/all"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getSessionHistory
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.sessions.getSessionHistory(\"viewedAt:desc\", 1, {}, 12);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/video/:/transcode/universal/start.mpd"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: startUniversalTranscode
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.video.startUniversalTranscode({\n hasMDE: 1,\n path: \"/library/metadata/23409\",\n mediaIndex: 0,\n partIndex: 0,\n protocol: \"hls\",\n fastSeek: 0,\n directPlay: 0,\n directStream: 0,\n subtitleSize: 100,\n subtites: \"burn\",\n audioBoost: 100,\n location: \"lan\",\n mediaBufferSize: 102400,\n session: \"zvcage8b7rkioqcm8f4uns4c\",\n addDebugOverlay: 0,\n autoAdjustQuality: 0,\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/butler/{taskName}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: stopTask
|
||||
source: "import { PathParamTaskName, PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.stopTask(PathParamTaskName.BackupDatabase);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/pins/{pinID}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTokenByPinId
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getTokenByPinId(408895, \"gcgzw5rz2xovp84b4vha3a40\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/hubs/search"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: performSearch
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.search.performSearch(\"arnold\", 5);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/search"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getSearchResults
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.search.getSearchResults(\"110\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/updater/check"]["put"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: checkForUpdates
|
||||
source: "import { Download, PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.updater.checkForUpdates(Download.One);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/identity"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: identity
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getServerIdentity();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/:/scrobble"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: markPlayed
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.markPlayed(59398);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/resources"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: resources
|
||||
source: "import { IncludeHttps, IncludeIPv6, IncludeRelay, PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getServerResources({\n xPlexToken: \"CV5xoxjTpFKUzBTShsaf\",\n includeHttps: IncludeHttps.One,\n includeRelay: IncludeRelay.One,\n includeIPv6: IncludeIPv6.One,\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}/refresh"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: metadata
|
||||
source: "import { Force, PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getRefreshLibraryMetadata(9518, Force.One);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/security/token"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTransientToken
|
||||
source: "import { GetTransientTokenQueryParamType, PlexAPI, Scope } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.authentication.getTransientToken(GetTransientTokenQueryParamType.Delegation, Scope.All);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/:/prefs"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getServerPreferences
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getServerPreferences();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/recentlyAdded"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getRecentlyAdded
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getRecentlyAdded(0, 50);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: deleteLibrary
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.deleteLibrary(9518);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}/search"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: library
|
||||
source: "import { PlexAPI, QueryParamType } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getSearchLibrary(9518, QueryParamType.Two);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/log/networked"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: enablePaperTrail
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.log.enablePaperTrail();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/transcode/sessions/{sessionKey}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: stopTranscodeSession
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.sessions.stopTranscodeSession(\"zz7llzqlx8w9vnrsbnwhbmep\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/myplex/account"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getMyPlexAccount
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getMyPlexAccount();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/:/unscrobble"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: markUnplayed
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.markUnplayed(59398);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/geoip"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getGeoData
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getGeoData();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/hubs"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getGlobalHubs
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.hubs.getGlobalHubs();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/metadata/{ratingKey}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: key
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getMetaDataByRatingKey(9518);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/:/progress"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: updatePlayProgress
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.updatePlayProgress(\"<key>\", 90000, \"played\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/onDeck"]["get"]
|
||||
- target: $["paths"]["/:/scrobble"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getOnDeck
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getOnDeck();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}"]["get"]
|
||||
label: markPlayed
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.markPlayed(59398);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/:/timeline"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getPlaylist
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.getPlaylist(4109.48);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/metadata/{ratingKey}/banner"]["get"]
|
||||
label: getTimeline
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { State } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.video.getTimeline({\n ratingKey: 23409,\n key: \"/library/metadata/23409\",\n state: State.Playing,\n hasMDE: 1,\n time: 2000,\n duration: 10000,\n context: \"home:hub.continueWatching\",\n playQueueItemID: 1,\n playBackTime: 2000,\n row: 1,\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/:/unscrobble"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: image
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.getBannerImage({\n ratingKey: 9518,\n width: 396,\n height: 396,\n minSize: 1,\n upscale: 1,\n xPlexToken: \"CV5xoxjTpFKUzBTShsaf\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/friends"]["get"]
|
||||
label: markUnplayed
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.markUnplayed(59398);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/activities"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getUserFriends
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getUserFriends();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/log"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: logMultiLine
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.log.logMultiLine(\"level=4&message=Test%20message%201&source=postman\\n\" +\n \"level=3&message=Test%20message%202&source=postman\\n\" +\n \"level=1&message=Test%20message%203&source=postman\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/updater/status"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getUpdateStatus
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.updater.getUpdateStatus();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
label: getServerActivities
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.activities.getServerActivities();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/activities/{activityUUID}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: cancelServerActivities
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.activities.cancelServerActivities(\"25b71ed5-0f9d-461c-baa7-d404e9e10d3e\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/upload"]["post"]
|
||||
- target: $["paths"]["/butler"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: uploadPlaylist
|
||||
source: "import { PlexAPI, QueryParamForce } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.uploadPlaylist(\"/home/barkley/playlist.m3u\", QueryParamForce.Zero);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/:/timeline"]["get"]
|
||||
label: stopAllTasks
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.stopAllTasks();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/butler"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTimeline
|
||||
source: "import { PlexAPI, State } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.video.getTimeline({\n ratingKey: 23409,\n key: \"/library/metadata/23409\",\n state: State.Playing,\n hasMDE: 1,\n time: 2000,\n duration: 10000,\n context: \"home:hub.continueWatching\",\n playQueueItemID: 1,\n playBackTime: 2000,\n row: 1,\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
label: getButlerTasks
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.getButlerTasks();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/butler"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: startAllTasks
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.startAllTasks();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/butler/{taskName}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: stopTask
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { PathParamTaskName } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.stopTask(PathParamTaskName.BackupDatabase);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/butler/{taskName}"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: startTask
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { TaskName } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.butler.startTask(TaskName.CleanOldBundles);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/clients"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getAvailableClients
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getAvailableClients();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/companions"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getCompanionsData
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getCompanionsData();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/devices"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getDevices
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getDevices();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/friends"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getUserFriends
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getUserFriends();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/geoip"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getGeoData
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getGeoData();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/home"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getHomeData
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getHomeData();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/hubs"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getGlobalHubs
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.hubs.getGlobalHubs();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/hubs/search"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: performSearch
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.search.performSearch(\"dylan\", 5);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/hubs/search/voice"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: performVoiceSearch
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.search.performVoiceSearch(\"dead+poop\", 5);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/hubs/sections/{sectionId}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getLibraryHubs
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.hubs.getLibraryHubs(6728.76);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/identity"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: identity
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getServerIdentity();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/all/top"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTopWatchedContent
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { GetTopWatchedContentQueryParamType } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getTopWatchedContent(GetTopWatchedContentQueryParamType.Two, 1);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/hashes"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getFileHash
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getFileHash(\"file://C:\\Image.png&type=13\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/metadata/{ratingKey}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: key
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getMetaDataByRatingKey(9518);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/metadata/{ratingKey}/banner"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: image
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.getBannerImage({\n ratingKey: 9518,\n width: 396,\n height: 396,\n minSize: 1,\n upscale: 1,\n xPlexToken: \"CV5xoxjTpFKUzBTShsaf\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/metadata/{ratingKey}/children"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getMetadataChildren
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getMetadataChildren(1539.14, \"Stream\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/metadata/{ratingKey}/thumb"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: image
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.media.getThumbImage({\n ratingKey: 9518,\n width: 396,\n height: 396,\n minSize: 1,\n upscale: 1,\n xPlexToken: \"CV5xoxjTpFKUzBTShsaf\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/onDeck"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getOnDeck
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getOnDeck();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/recentlyAdded"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getRecentlyAdded
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getRecentlyAdded(0, 50);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: libraries
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getAllLibraries();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/watchlist/{filter}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: list
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Filter } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.watchlist.getWatchList({\n filter: Filter.Available,\n xPlexContainerStart: 0,\n xPlexContainerSize: 50,\n xPlexToken: \"CV5xoxjTpFKUzBTShsaf\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: deleteLibrary
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.deleteLibrary(9518);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: details
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getLibraryDetails(9518);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}/refresh"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: metadata
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Force } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getRefreshLibraryMetadata(9518, Force.One);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}/search"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: library
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { QueryParamType } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getSearchLibrary(9518, QueryParamType.Two);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/library/sections/{sectionKey}/{tag}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: items
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { IncludeGuids, IncludeMeta, Tag, Type } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.library.getLibraryItems({\n sectionKey: 9518,\n tag: Tag.Edition,\n includeGuids: IncludeGuids.One,\n includeMeta: IncludeMeta.One,\n type: Type.Two,\n xPlexContainerStart: 0,\n xPlexContainerSize: 50,\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/log"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: logLine
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Level } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.log.logLine(Level.Three, \"Test log message\", \"Postman\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/log"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: logMultiLine
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.log.logMultiLine(\"level=4&message=Test%20message%201&source=postman\\n\" +\n \"level=3&message=Test%20message%202&source=postman\\n\" +\n \"level=1&message=Test%20message%203&source=postman\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/log/networked"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: enablePaperTrail
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.log.enablePaperTrail();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/media/providers"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: providers
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getMediaProviders(\"CV5xoxjTpFKUzBTShsaf\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/myplex/account"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getMyPlexAccount
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getMyPlexAccount();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/photo/:/transcode"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getResizedPhoto
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { MinSize, Upscale } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getResizedPhoto({\n width: 110,\n height: 165,\n opacity: 100,\n blur: 20,\n minSize: MinSize.One,\n upscale: Upscale.One,\n url: \"/library/metadata/49564/thumb/1654258204\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/pins"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getPin
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getPin(\"gcgzw5rz2xovp84b4vha3a40\", \"Plex Web\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/pins/{pinID}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTokenByPinId
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getTokenByPinId(408895, \"gcgzw5rz2xovp84b4vha3a40\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getPlaylists
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.getPlaylists();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: createPlaylist
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { CreatePlaylistQueryParamType, Smart } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.createPlaylist({\n title: \"<value>\",\n type: CreatePlaylistQueryParamType.Photo,\n smart: Smart.One,\n uri: \"https://inborn-brochure.biz\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/upload"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: uploadPlaylist
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { QueryParamForce } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.uploadPlaylist(\"/home/barkley/playlist.m3u\", QueryParamForce.Zero);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: deletePlaylist
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.deletePlaylist(216.22);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getPlaylist
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.getPlaylist(4109.48);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}"]["put"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: updatePlaylist
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.updatePlaylist(3915);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}/items"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: clearPlaylistContents
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.clearPlaylistContents(1893.18);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}/items"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getPlaylistContents
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { GetPlaylistContentsQueryParamType } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.getPlaylistContents(5004.46, GetPlaylistContentsQueryParamType.Two);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/playlists/{playlistID}/items"]["put"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: addPlaylistContents
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.playlists.addPlaylistContents(8502.01, \"server://12345/com.plexapp.plugins.library/library/metadata/1\", 123);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/resources"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: resources
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { IncludeHttps, IncludeIPv6, IncludeRelay } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.plex.getServerResources(\"gcgzw5rz2xovp84b4vha3a40\", IncludeHttps.One, IncludeRelay.One, IncludeIPv6.One);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/search"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getSearchResults
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.search.getSearchResults(\"110\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/security/resources"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getSourceConnectionInformation
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.authentication.getSourceConnectionInformation(\"server://client-identifier\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/security/token"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTransientToken
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { GetTransientTokenQueryParamType, Scope } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.authentication.getTransientToken(GetTransientTokenQueryParamType.Delegation, Scope.All);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/servers"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getServerList
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.server.getServerList();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/statistics/bandwidth"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getBandwidthStatistics
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.statistics.getBandwidthStatistics(4);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/statistics/media"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getStatistics
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.statistics.getStatistics(4);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/statistics/resources"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getResourcesStatistics
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.statistics.getResourcesStatistics(4);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/status/sessions"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getSessions
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.sessions.getSessions();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/status/sessions/history/all"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getSessionHistory
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.sessions.getSessionHistory(\"viewedAt:desc\", 1, {}, 12);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/transcode/sessions"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTranscodeSessions
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.sessions.getTranscodeSessions();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/transcode/sessions/{sessionKey}"]["delete"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: stopTranscodeSession
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.sessions.stopTranscodeSession(\"zz7llzqlx8w9vnrsbnwhbmep\");\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/updater/apply"]["put"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: applyUpdates
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Skip, Tonight } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.updater.applyUpdates(Tonight.One, Skip.One);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/updater/check"]["put"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: checkForUpdates
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\nimport { Download } from \"@lukehagar/plexjs/sdk/models/operations\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.updater.checkForUpdates(Download.One);\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/updater/status"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getUpdateStatus
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.updater.getUpdateStatus();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/user"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: getTokenDetails
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.authentication.getTokenDetails();\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/users/signin"]["post"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: data
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.authentication.postUsersSignInData(\"gcgzw5rz2xovp84b4vha3a40\", {\n login: \"username@email.com\",\n password: \"password123\",\n verificationCode: \"123456\",\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
- target: $["paths"]["/video/:/transcode/universal/start.mpd"]["get"]
|
||||
update:
|
||||
x-codeSamples:
|
||||
- lang: typescript
|
||||
label: startUniversalTranscode
|
||||
source: "import { PlexAPI } from \"@lukehagar/plexjs\";\n\nconst plexAPI = new PlexAPI({\n accessToken: \"<YOUR_API_KEY_HERE>\",\n xPlexClientIdentifier: \"gcgzw5rz2xovp84b4vha3a40\",\n});\n\nasync function run() {\n const result = await plexAPI.video.startUniversalTranscode({\n hasMDE: 1,\n path: \"/library/metadata/23409\",\n mediaIndex: 0,\n partIndex: 0,\n protocol: \"hls\",\n fastSeek: 0,\n directPlay: 0,\n directStream: 0,\n subtitleSize: 100,\n subtites: \"burn\",\n audioBoost: 100,\n location: \"lan\",\n mediaBufferSize: 102400,\n session: \"zvcage8b7rkioqcm8f4uns4c\",\n addDebugOverlay: 0,\n autoAdjustQuality: 0,\n });\n \n // Handle the result\n console.log(result)\n}\n\nrun();"
|
||||
|
||||
@@ -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,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,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,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,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 |
|
||||
@@ -1,18 +0,0 @@
|
||||
# GetLibraryItemsLibraryResponseBody
|
||||
|
||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
||||
|
||||
## Example Usage
|
||||
|
||||
```typescript
|
||||
import { GetLibraryItemsLibraryResponseBody } from "@lukehagar/plexjs";
|
||||
|
||||
// No examples available for this model
|
||||
```
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
||||
| `errors` | [models.GetLibraryItemsErrors](../models/getlibraryitemserrors.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,53 +0,0 @@
|
||||
# GetLibraryItemsMedia
|
||||
|
||||
## Example Usage
|
||||
|
||||
```typescript
|
||||
import { GetLibraryItemsMedia } from "@lukehagar/plexjs";
|
||||
|
||||
let value: GetLibraryItemsMedia = {
|
||||
id: 119534,
|
||||
duration: 11558112,
|
||||
bitrate: 25025,
|
||||
width: 3840,
|
||||
height: 2072,
|
||||
aspectRatio: 1.85,
|
||||
audioChannels: 6,
|
||||
audioCodec: "eac3",
|
||||
videoCodec: "hevc",
|
||||
videoResolution: "4k",
|
||||
container: "mkv",
|
||||
videoFrameRate: "24p",
|
||||
videoProfile: "main 10",
|
||||
part: [
|
||||
{
|
||||
id: 119542,
|
||||
key: "/library/parts/119542/1680457526/file.mkv",
|
||||
duration: 11558112,
|
||||
file: "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv",
|
||||
size: 36158371307,
|
||||
container: "mkv",
|
||||
videoProfile: "main 10",
|
||||
},
|
||||
],
|
||||
};
|
||||
```
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- |
|
||||
| `id` | *number* | :heavy_minus_sign: | N/A | 119534 |
|
||||
| `duration` | *number* | :heavy_minus_sign: | N/A | 11558112 |
|
||||
| `bitrate` | *number* | :heavy_minus_sign: | N/A | 25025 |
|
||||
| `width` | *number* | :heavy_minus_sign: | N/A | 3840 |
|
||||
| `height` | *number* | :heavy_minus_sign: | N/A | 2072 |
|
||||
| `aspectRatio` | *number* | :heavy_minus_sign: | N/A | 1.85 |
|
||||
| `audioChannels` | *number* | :heavy_minus_sign: | N/A | 6 |
|
||||
| `audioCodec` | *string* | :heavy_minus_sign: | N/A | eac3 |
|
||||
| `videoCodec` | *string* | :heavy_minus_sign: | N/A | hevc |
|
||||
| `videoResolution` | *string* | :heavy_minus_sign: | N/A | 4k |
|
||||
| `container` | *string* | :heavy_minus_sign: | N/A | mkv |
|
||||
| `videoFrameRate` | *string* | :heavy_minus_sign: | N/A | 24p |
|
||||
| `videoProfile` | *string* | :heavy_minus_sign: | N/A | main 10 |
|
||||
| `part` | [models.GetLibraryItemsPart](../models/getlibraryitemspart.md)[] | :heavy_minus_sign: | N/A | |
|
||||
@@ -1,155 +0,0 @@
|
||||
# GetLibraryItemsMediaContainer
|
||||
|
||||
## Example Usage
|
||||
|
||||
```typescript
|
||||
import { GetLibraryItemsMediaContainer } from "@lukehagar/plexjs";
|
||||
import { RFCDate } from "@lukehagar/plexjs/types";
|
||||
|
||||
let value: GetLibraryItemsMediaContainer = {
|
||||
size: 70,
|
||||
allowSync: true,
|
||||
art: "/:/resources/movie-fanart.jpg",
|
||||
identifier: "com.plexapp.plugins.library",
|
||||
librarySectionTitle: "Movies",
|
||||
librarySectionUUID: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
||||
mediaTagVersion: 1701731894,
|
||||
thumb: "/:/resources/movie.png",
|
||||
title1: "Movies",
|
||||
title2: "Recently Released",
|
||||
viewGroup: "movie",
|
||||
viewMode: 65592,
|
||||
mixedParents: true,
|
||||
metadata: [
|
||||
{
|
||||
ratingKey: "58683",
|
||||
key: "/library/metadata/58683",
|
||||
guid: "plex://movie/5d7768ba96b655001fdc0408",
|
||||
studio: "20th Century Studios",
|
||||
type: "movie",
|
||||
title: "Avatar: The Way of Water",
|
||||
contentRating: "PG-13",
|
||||
summary:
|
||||
"Jake Sully lives with his newfound family formed on the extrasolar moon Pandora. Once a familiar threat returns to finish what was previously started, Jake must work with Neytiri and the army of the Na'vi race to protect their home.",
|
||||
rating: 7.6,
|
||||
audienceRating: 9.2,
|
||||
year: 2022,
|
||||
tagline: "Return to Pandora.",
|
||||
thumb: "/library/metadata/58683/thumb/1703239236",
|
||||
art: "/library/metadata/58683/art/1703239236",
|
||||
duration: 11558112,
|
||||
originallyAvailableAt: new RFCDate("2022-12-14T00:00:00Z"),
|
||||
addedAt: 1680457607,
|
||||
updatedAt: 1703239236,
|
||||
audienceRatingImage: "rottentomatoes://image.rating.upright",
|
||||
chapterSource: "media",
|
||||
primaryExtraKey: "/library/metadata/58684",
|
||||
ratingImage: "rottentomatoes://image.rating.ripe",
|
||||
grandparentRatingKey: "66",
|
||||
grandparentGuid: "plex://show/5d9c081b170e24001f2a7be4",
|
||||
grandparentKey: "/library/metadata/66",
|
||||
grandparentTitle: "Caprica",
|
||||
grandparentThumb: "/library/metadata/66/thumb/1705716261",
|
||||
grandparentArt: "/library/metadata/66/art/1705716261",
|
||||
grandparentTheme: "/library/metadata/66/theme/1705716261",
|
||||
media: [
|
||||
{
|
||||
id: 119534,
|
||||
duration: 11558112,
|
||||
bitrate: 25025,
|
||||
width: 3840,
|
||||
height: 2072,
|
||||
aspectRatio: 1.85,
|
||||
audioChannels: 6,
|
||||
audioCodec: "eac3",
|
||||
videoCodec: "hevc",
|
||||
videoResolution: "4k",
|
||||
container: "mkv",
|
||||
videoFrameRate: "24p",
|
||||
videoProfile: "main 10",
|
||||
part: [
|
||||
{
|
||||
id: 119542,
|
||||
key: "/library/parts/119542/1680457526/file.mkv",
|
||||
duration: 11558112,
|
||||
file: "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv",
|
||||
size: 36158371307,
|
||||
container: "mkv",
|
||||
videoProfile: "main 10",
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
genre: [
|
||||
{
|
||||
tag: "Adventure",
|
||||
},
|
||||
],
|
||||
country: [
|
||||
{
|
||||
tag: "United States of America",
|
||||
},
|
||||
],
|
||||
director: [
|
||||
{
|
||||
tag: "James Cameron",
|
||||
},
|
||||
],
|
||||
writer: [
|
||||
{
|
||||
tag: "James Cameron",
|
||||
},
|
||||
],
|
||||
role: [
|
||||
{
|
||||
tag: "Sigourney Weaver",
|
||||
},
|
||||
],
|
||||
titleSort: "Whale",
|
||||
viewCount: 1,
|
||||
lastViewedAt: 1682752242,
|
||||
originalTitle: "映画 ブラッククローバー 魔法帝の剣",
|
||||
viewOffset: 5222500,
|
||||
skipCount: 1,
|
||||
index: 1,
|
||||
theme: "/library/metadata/1/theme/1705636920",
|
||||
leafCount: 14,
|
||||
viewedLeafCount: 0,
|
||||
childCount: 1,
|
||||
hasPremiumExtras: "1",
|
||||
hasPremiumPrimaryExtra: "1",
|
||||
parentRatingKey: "66",
|
||||
parentGuid: "plex://show/5d9c081b170e24001f2a7be4",
|
||||
parentStudio: "UCP",
|
||||
parentKey: "/library/metadata/66",
|
||||
parentTitle: "Caprica",
|
||||
parentIndex: 1,
|
||||
parentYear: 2010,
|
||||
parentThumb: "/library/metadata/66/thumb/1705716261",
|
||||
parentTheme: "/library/metadata/66/theme/1705716261",
|
||||
},
|
||||
],
|
||||
};
|
||||
```
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
|
||||
| `size` | *number* | :heavy_minus_sign: | N/A | 70 |
|
||||
| `allowSync` | *boolean* | :heavy_minus_sign: | N/A | true |
|
||||
| `art` | *string* | :heavy_minus_sign: | N/A | /:/resources/movie-fanart.jpg |
|
||||
| `identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library |
|
||||
| `librarySectionID` | *models.LibrarySectionID* | :heavy_minus_sign: | N/A | |
|
||||
| `librarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies |
|
||||
| `librarySectionUUID` | *string* | :heavy_minus_sign: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 |
|
||||
| `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 |
|
||||
| `title2` | *string* | :heavy_minus_sign: | N/A | Recently Released |
|
||||
| `viewGroup` | *string* | :heavy_minus_sign: | N/A | movie |
|
||||
| `viewMode` | *number* | :heavy_minus_sign: | N/A | 65592 |
|
||||
| `mixedParents` | *boolean* | :heavy_minus_sign: | N/A | true |
|
||||
| `metadata` | [models.GetLibraryItemsMetadata](../models/getlibraryitemsmetadata.md)[] | :heavy_minus_sign: | N/A | |
|
||||
@@ -1,152 +0,0 @@
|
||||
# GetLibraryItemsResponse
|
||||
|
||||
## Example Usage
|
||||
|
||||
```typescript
|
||||
import { GetLibraryItemsResponse } from "@lukehagar/plexjs";
|
||||
import { RFCDate } from "@lukehagar/plexjs/types";
|
||||
|
||||
let value: GetLibraryItemsResponse = {
|
||||
contentType: "<value>",
|
||||
statusCode: 666767,
|
||||
rawResponse: new Response('{"message": "hello world"}', {
|
||||
headers: { "Content-Type": "application/json" },
|
||||
}),
|
||||
object: {
|
||||
mediaContainer: {
|
||||
size: 70,
|
||||
allowSync: true,
|
||||
art: "/:/resources/movie-fanart.jpg",
|
||||
identifier: "com.plexapp.plugins.library",
|
||||
librarySectionTitle: "Movies",
|
||||
librarySectionUUID: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
||||
mediaTagVersion: 1701731894,
|
||||
thumb: "/:/resources/movie.png",
|
||||
title1: "Movies",
|
||||
title2: "Recently Released",
|
||||
viewGroup: "movie",
|
||||
viewMode: 65592,
|
||||
mixedParents: true,
|
||||
metadata: [
|
||||
{
|
||||
ratingKey: "58683",
|
||||
key: "/library/metadata/58683",
|
||||
guid: "plex://movie/5d7768ba96b655001fdc0408",
|
||||
studio: "20th Century Studios",
|
||||
type: "movie",
|
||||
title: "Avatar: The Way of Water",
|
||||
contentRating: "PG-13",
|
||||
summary:
|
||||
"Jake Sully lives with his newfound family formed on the extrasolar moon Pandora. Once a familiar threat returns to finish what was previously started, Jake must work with Neytiri and the army of the Na'vi race to protect their home.",
|
||||
rating: 7.6,
|
||||
audienceRating: 9.2,
|
||||
year: 2022,
|
||||
tagline: "Return to Pandora.",
|
||||
thumb: "/library/metadata/58683/thumb/1703239236",
|
||||
art: "/library/metadata/58683/art/1703239236",
|
||||
duration: 11558112,
|
||||
originallyAvailableAt: new RFCDate("2022-12-14T00:00:00Z"),
|
||||
addedAt: 1680457607,
|
||||
updatedAt: 1703239236,
|
||||
audienceRatingImage: "rottentomatoes://image.rating.upright",
|
||||
chapterSource: "media",
|
||||
primaryExtraKey: "/library/metadata/58684",
|
||||
ratingImage: "rottentomatoes://image.rating.ripe",
|
||||
grandparentRatingKey: "66",
|
||||
grandparentGuid: "plex://show/5d9c081b170e24001f2a7be4",
|
||||
grandparentKey: "/library/metadata/66",
|
||||
grandparentTitle: "Caprica",
|
||||
grandparentThumb: "/library/metadata/66/thumb/1705716261",
|
||||
grandparentArt: "/library/metadata/66/art/1705716261",
|
||||
grandparentTheme: "/library/metadata/66/theme/1705716261",
|
||||
media: [
|
||||
{
|
||||
id: 119534,
|
||||
duration: 11558112,
|
||||
bitrate: 25025,
|
||||
width: 3840,
|
||||
height: 2072,
|
||||
aspectRatio: 1.85,
|
||||
audioChannels: 6,
|
||||
audioCodec: "eac3",
|
||||
videoCodec: "hevc",
|
||||
videoResolution: "4k",
|
||||
container: "mkv",
|
||||
videoFrameRate: "24p",
|
||||
videoProfile: "main 10",
|
||||
part: [
|
||||
{
|
||||
id: 119542,
|
||||
key: "/library/parts/119542/1680457526/file.mkv",
|
||||
duration: 11558112,
|
||||
file: "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv",
|
||||
size: 36158371307,
|
||||
container: "mkv",
|
||||
videoProfile: "main 10",
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
genre: [
|
||||
{
|
||||
tag: "Adventure",
|
||||
},
|
||||
],
|
||||
country: [
|
||||
{
|
||||
tag: "United States of America",
|
||||
},
|
||||
],
|
||||
director: [
|
||||
{
|
||||
tag: "James Cameron",
|
||||
},
|
||||
],
|
||||
writer: [
|
||||
{
|
||||
tag: "James Cameron",
|
||||
},
|
||||
],
|
||||
role: [
|
||||
{
|
||||
tag: "Sigourney Weaver",
|
||||
},
|
||||
],
|
||||
titleSort: "Whale",
|
||||
viewCount: 1,
|
||||
lastViewedAt: 1682752242,
|
||||
originalTitle: "映画 ブラッククローバー 魔法帝の剣",
|
||||
viewOffset: 5222500,
|
||||
skipCount: 1,
|
||||
index: 1,
|
||||
theme: "/library/metadata/1/theme/1705636920",
|
||||
leafCount: 14,
|
||||
viewedLeafCount: 0,
|
||||
childCount: 1,
|
||||
hasPremiumExtras: "1",
|
||||
hasPremiumPrimaryExtra: "1",
|
||||
parentRatingKey: "66",
|
||||
parentGuid: "plex://show/5d9c081b170e24001f2a7be4",
|
||||
parentStudio: "UCP",
|
||||
parentKey: "/library/metadata/66",
|
||||
parentTitle: "Caprica",
|
||||
parentIndex: 1,
|
||||
parentYear: 2010,
|
||||
parentThumb: "/library/metadata/66/thumb/1705716261",
|
||||
parentTheme: "/library/metadata/66/theme/1705716261",
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
};
|
||||
```
|
||||
|
||||
## 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.GetLibraryItemsResponseBody](../models/getlibraryitemsresponsebody.md) | :heavy_minus_sign: | The contents of the library by section and tag |
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user