mirror of
https://github.com/LukeHagar/plexjs.git
synced 2025-12-06 12:37:46 +00:00
Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2b38478255 | ||
|
|
6bd12d8759 | ||
|
|
891a7d39a1 | ||
|
|
763aa8e800 | ||
|
|
7a950ea773 | ||
|
|
379a408d74 | ||
|
|
2712820397 | ||
|
|
c895213ae8 | ||
|
|
c473c9d326 | ||
|
|
3c13bba9de | ||
|
|
650c5043ef | ||
|
|
0234804578 | ||
|
|
60d913c8f9 |
4
.gitignore
vendored
4
.gitignore
vendored
@@ -1,3 +1,7 @@
|
|||||||
|
.DS_Store
|
||||||
|
**/.speakeasy/temp/
|
||||||
|
**/.speakeasy/logs/
|
||||||
|
.DS_Store
|
||||||
/mcp-server
|
/mcp-server
|
||||||
/bin
|
/bin
|
||||||
/.eslintcache
|
/.eslintcache
|
||||||
|
|||||||
1377
.speakeasy/gen.lock
1377
.speakeasy/gen.lock
File diff suppressed because one or more lines are too long
@@ -4,6 +4,7 @@ generation:
|
|||||||
maintainOpenAPIOrder: true
|
maintainOpenAPIOrder: true
|
||||||
usageSnippets:
|
usageSnippets:
|
||||||
optionalPropertyRendering: withExample
|
optionalPropertyRendering: withExample
|
||||||
|
sdkInitStyle: constructor
|
||||||
useClassNamesForArrayFields: true
|
useClassNamesForArrayFields: true
|
||||||
fixes:
|
fixes:
|
||||||
nameResolutionDec2023: true
|
nameResolutionDec2023: true
|
||||||
@@ -11,11 +12,12 @@ generation:
|
|||||||
parameterOrderingFeb2024: true
|
parameterOrderingFeb2024: true
|
||||||
requestResponseComponentNamesFeb2024: true
|
requestResponseComponentNamesFeb2024: true
|
||||||
securityFeb2025: false
|
securityFeb2025: false
|
||||||
|
sharedErrorComponentsApr2025: false
|
||||||
auth:
|
auth:
|
||||||
oAuth2ClientCredentialsEnabled: true
|
oAuth2ClientCredentialsEnabled: true
|
||||||
oAuth2PasswordEnabled: false
|
oAuth2PasswordEnabled: false
|
||||||
typescript:
|
typescript:
|
||||||
version: 0.35.1
|
version: 0.38.0
|
||||||
additionalDependencies:
|
additionalDependencies:
|
||||||
dependencies: {}
|
dependencies: {}
|
||||||
devDependencies: {}
|
devDependencies: {}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
speakeasyVersion: 1.513.4
|
speakeasyVersion: 1.555.2
|
||||||
sources:
|
sources:
|
||||||
my-source:
|
my-source:
|
||||||
sourceNamespace: my-source
|
sourceNamespace: my-source
|
||||||
@@ -9,20 +9,20 @@ sources:
|
|||||||
- main
|
- main
|
||||||
plexapi:
|
plexapi:
|
||||||
sourceNamespace: plexapi
|
sourceNamespace: plexapi
|
||||||
sourceRevisionDigest: sha256:2066ba94b55e21d651c79003e3cf402fb77c52a0969fc52310b3383fbed038f4
|
sourceRevisionDigest: sha256:78d07ad78ff60d0e9918696208d8c68a562e170d4e9c431797c02995fb8816d0
|
||||||
sourceBlobDigest: sha256:1737023e29cd9cf36c07ccd8c8c48c47e14f47ce22b4d6ba9ee241afbbd8f351
|
sourceBlobDigest: sha256:d38dd2a36c1b2fd73409267f7b30c2d5d45d709616141803ea01db424ec68ae4
|
||||||
tags:
|
tags:
|
||||||
- latest
|
- latest
|
||||||
- speakeasy-sdk-regen-1741478971
|
- speakeasy-sdk-regen-1748995899
|
||||||
- 0.0.3
|
- 0.0.3
|
||||||
targets:
|
targets:
|
||||||
plexjs:
|
plexjs:
|
||||||
source: plexapi
|
source: plexapi
|
||||||
sourceNamespace: plexapi
|
sourceNamespace: plexapi
|
||||||
sourceRevisionDigest: sha256:2066ba94b55e21d651c79003e3cf402fb77c52a0969fc52310b3383fbed038f4
|
sourceRevisionDigest: sha256:78d07ad78ff60d0e9918696208d8c68a562e170d4e9c431797c02995fb8816d0
|
||||||
sourceBlobDigest: sha256:1737023e29cd9cf36c07ccd8c8c48c47e14f47ce22b4d6ba9ee241afbbd8f351
|
sourceBlobDigest: sha256:d38dd2a36c1b2fd73409267f7b30c2d5d45d709616141803ea01db424ec68ae4
|
||||||
codeSamplesNamespace: code-samples-typescript-plexjs
|
codeSamplesNamespace: code-samples-typescript-plexjs
|
||||||
codeSamplesRevisionDigest: sha256:562c355ca997be7103dd50d641d9264002668b79ccbed1d1c259a98c653ce99a
|
codeSamplesRevisionDigest: sha256:132446d6299798fab8378bc875b16290ef126cdb50befe85a0a88bee8bf35799
|
||||||
workflow:
|
workflow:
|
||||||
workflowVersion: 1.0.0
|
workflowVersion: 1.0.0
|
||||||
speakeasyVersion: latest
|
speakeasyVersion: latest
|
||||||
@@ -43,3 +43,5 @@ workflow:
|
|||||||
output: codeSamples.yaml
|
output: codeSamples.yaml
|
||||||
registry:
|
registry:
|
||||||
location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs
|
location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs
|
||||||
|
labelOverride:
|
||||||
|
fixedValue: PlexJS
|
||||||
|
|||||||
@@ -17,3 +17,5 @@ targets:
|
|||||||
output: codeSamples.yaml
|
output: codeSamples.yaml
|
||||||
registry:
|
registry:
|
||||||
location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs
|
location: registry.speakeasyapi.dev/plexapi/plexapi/code-samples-typescript-plexjs
|
||||||
|
labelOverride:
|
||||||
|
fixedValue: PlexJS
|
||||||
|
|||||||
25
FUNCTIONS.md
25
FUNCTIONS.md
@@ -21,7 +21,6 @@ specific category of applications.
|
|||||||
```typescript
|
```typescript
|
||||||
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
|
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
|
||||||
import { serverGetServerCapabilities } from "@lukehagar/plexjs/funcs/serverGetServerCapabilities.js";
|
import { serverGetServerCapabilities } from "@lukehagar/plexjs/funcs/serverGetServerCapabilities.js";
|
||||||
import { SDKValidationError } from "@lukehagar/plexjs/sdk/models/errors/sdkvalidationerror.js";
|
|
||||||
|
|
||||||
// Use `PlexAPICore` for best tree-shaking performance.
|
// Use `PlexAPICore` for best tree-shaking performance.
|
||||||
// You can create one instance of it to use across an application.
|
// You can create one instance of it to use across an application.
|
||||||
@@ -31,28 +30,12 @@ const plexAPI = new PlexAPICore({
|
|||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const res = await serverGetServerCapabilities(plexAPI);
|
const res = await serverGetServerCapabilities(plexAPI);
|
||||||
|
if (res.ok) {
|
||||||
switch (true) {
|
|
||||||
case res.ok:
|
|
||||||
// The success case will be handled outside of the switch block
|
|
||||||
break;
|
|
||||||
case res.error instanceof SDKValidationError:
|
|
||||||
// Pretty-print validation errors.
|
|
||||||
return console.log(res.error.pretty());
|
|
||||||
case res.error instanceof Error:
|
|
||||||
return console.log(res.error);
|
|
||||||
default:
|
|
||||||
// TypeScript's type checking will fail on the following line if the above
|
|
||||||
// cases were not exhaustive.
|
|
||||||
res.error satisfies never;
|
|
||||||
throw new Error("Assertion failed: expected error checks to be exhaustive: " + res.error);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const { value: result } = res;
|
const { value: result } = res;
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
|
} else {
|
||||||
|
console.log("serverGetServerCapabilities failed:", res.error);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
run();
|
run();
|
||||||
|
|||||||
303
README.md
303
README.md
@@ -54,6 +54,7 @@ The following SDKs are generated from the OpenAPI Specification. They are automa
|
|||||||
* [Authentication](#authentication)
|
* [Authentication](#authentication)
|
||||||
* [Requirements](#requirements)
|
* [Requirements](#requirements)
|
||||||
* [Standalone functions](#standalone-functions)
|
* [Standalone functions](#standalone-functions)
|
||||||
|
* [File uploads](#file-uploads)
|
||||||
* [Retries](#retries)
|
* [Retries](#retries)
|
||||||
* [Debugging](#debugging)
|
* [Debugging](#debugging)
|
||||||
* [Development](#development)
|
* [Development](#development)
|
||||||
@@ -110,7 +111,6 @@ const plexAPI = new PlexAPI({
|
|||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -159,7 +159,7 @@ run();
|
|||||||
* [getLibraryDetails](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details
|
* [getLibraryDetails](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details
|
||||||
* [deleteLibrary](docs/sdks/library/README.md#deletelibrary) - Delete Library Section
|
* [deleteLibrary](docs/sdks/library/README.md#deletelibrary) - Delete Library Section
|
||||||
* [getLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
|
* [getLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
|
||||||
* [getAllMediaLibrary](docs/sdks/library/README.md#getallmedialibrary) - Get all media of library
|
* [getLibrarySectionsAll](docs/sdks/library/README.md#getlibrarysectionsall) - Get Library section media by tag ALL
|
||||||
* [getRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
|
* [getRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
|
||||||
* [getSearchLibrary](docs/sdks/library/README.md#getsearchlibrary) - Search Library
|
* [getSearchLibrary](docs/sdks/library/README.md#getsearchlibrary) - Search Library
|
||||||
* [getGenresLibrary](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
|
* [getGenresLibrary](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
|
||||||
@@ -167,6 +167,10 @@ run();
|
|||||||
* [getActorsLibrary](docs/sdks/library/README.md#getactorslibrary) - Get Actors of library media
|
* [getActorsLibrary](docs/sdks/library/README.md#getactorslibrary) - Get Actors of library media
|
||||||
* [getSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
|
* [getSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
|
||||||
* [getMediaMetaData](docs/sdks/library/README.md#getmediametadata) - Get Media Metadata
|
* [getMediaMetaData](docs/sdks/library/README.md#getmediametadata) - Get Media Metadata
|
||||||
|
* [getMediaArts](docs/sdks/library/README.md#getmediaarts) - Get Media Background Artwork
|
||||||
|
* [postMediaArts](docs/sdks/library/README.md#postmediaarts) - Upload Media Background Artwork
|
||||||
|
* [getMediaPosters](docs/sdks/library/README.md#getmediaposters) - Get Media Posters
|
||||||
|
* [postMediaPoster](docs/sdks/library/README.md#postmediaposter) - Upload Media Poster
|
||||||
* [getMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
|
* [getMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
|
||||||
* [getTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
|
* [getTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
|
||||||
|
|
||||||
@@ -263,59 +267,46 @@ run();
|
|||||||
<!-- Start Error Handling [errors] -->
|
<!-- Start Error Handling [errors] -->
|
||||||
## Error Handling
|
## Error Handling
|
||||||
|
|
||||||
Some methods specify known errors which can be thrown. All the known errors are enumerated in the `sdk/models/errors/errors.ts` module. The known errors for a method are documented under the *Errors* tables in SDK docs. For example, the `getServerCapabilities` method may throw the following errors:
|
This table shows properties which are common on error classes. For full details see [error classes](#error-classes).
|
||||||
|
|
||||||
| Error Type | Status Code | Content Type |
|
| Property | Type | Description |
|
||||||
| ---------------------------------------- | ----------- | ---------------- |
|
| ------------------- | ---------- | --------------------------------------------------------------------------------------- |
|
||||||
| errors.GetServerCapabilitiesBadRequest | 400 | application/json |
|
| `error.name` | `string` | Error class name eg `SDKError` |
|
||||||
| errors.GetServerCapabilitiesUnauthorized | 401 | application/json |
|
| `error.message` | `string` | Error message |
|
||||||
| errors.SDKError | 4XX, 5XX | \*/\* |
|
| `error.statusCode` | `number` | HTTP status code eg `404` |
|
||||||
|
| `error.contentType` | `string` | HTTP content type eg `application/json` |
|
||||||
If the method throws an error and it is not captured by the known errors, it will default to throwing a `SDKError`.
|
| `error.body` | `string` | HTTP body. Can be empty string if no body is returned. |
|
||||||
|
| `error.rawResponse` | `Response` | Raw HTTP response. Access to headers and more. |
|
||||||
|
| `error.data$` | | Optional. Some errors may contain structured data. [See Error Classes](#error-classes). |
|
||||||
|
|
||||||
|
### Example
|
||||||
```typescript
|
```typescript
|
||||||
import { PlexAPI } from "@lukehagar/plexjs";
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
import {
|
import * as errors from "@lukehagar/plexjs/sdk/models/errors";
|
||||||
GetServerCapabilitiesBadRequest,
|
|
||||||
GetServerCapabilitiesUnauthorized,
|
|
||||||
SDKValidationError,
|
|
||||||
} from "@lukehagar/plexjs/sdk/models/errors";
|
|
||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
let result;
|
|
||||||
try {
|
try {
|
||||||
result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
} catch (err) {
|
} catch (error) {
|
||||||
switch (true) {
|
// Depending on the method different errors may be thrown
|
||||||
// The server response does not match the expected SDK schema
|
if (error instanceof errors.GetServerCapabilitiesBadRequest) {
|
||||||
case (err instanceof SDKValidationError): {
|
console.log(error.message);
|
||||||
// Pretty-print will provide a human-readable multi-line error message
|
console.log(error.data$.errors); // Errors[]
|
||||||
console.error(err.pretty());
|
console.log(error.data$.rawResponse); // Response
|
||||||
// Raw value may also be inspected
|
|
||||||
console.error(err.rawValue);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
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: {
|
|
||||||
// Other errors such as network errors, see HTTPClientErrors for more details
|
|
||||||
throw err;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Fallback error class, if no other more specific error class is matched
|
||||||
|
if (error instanceof errors.SDKError) {
|
||||||
|
console.log(error.message);
|
||||||
|
console.log(error.statusCode);
|
||||||
|
console.log(error.body);
|
||||||
|
console.log(error.rawResponse.headers);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -324,17 +315,178 @@ run();
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Validation errors can also occur when either method arguments or data returned from the server do not match the expected format. The `SDKValidationError` that is thrown as a result will capture the raw value that failed validation in an attribute called `rawValue`. Additionally, a `pretty()` method is available on this error that can be used to log a nicely formatted multi-line string since validation errors can list many issues and the plain error string may be difficult read when debugging.
|
### Error Classes
|
||||||
|
* `SDKError`: The fallback error class, if no other more specific error class is matched.
|
||||||
|
* `SDKValidationError`: Type mismatch between the data returned from the server and the structure expected by the SDK. This can also be thrown for invalid method arguments. See `error.rawValue` for the raw value and `error.pretty()` for a nicely formatted multi-line string.
|
||||||
|
* Network errors:
|
||||||
|
* `ConnectionError`: HTTP client was unable to make a request to a server.
|
||||||
|
* `RequestTimeoutError`: HTTP request timed out due to an AbortSignal signal.
|
||||||
|
* `RequestAbortedError`: HTTP request was aborted by the client.
|
||||||
|
* `InvalidRequestError`: Any input used to create a request is invalid.
|
||||||
|
* `UnexpectedClientError`: Unrecognised or unexpected error.
|
||||||
|
|
||||||
In some rare cases, the SDK can fail to get a response from the server or even make the request due to unexpected circumstances such as network conditions. These types of errors are captured in the `sdk/models/errors/httpclienterrors.ts` module:
|
<details><summary>Less common errors, applicable to a subset of methods (156)</summary>
|
||||||
|
|
||||||
| HTTP Client Error | Description |
|
* [`GetServerCapabilitiesBadRequest`](docs/sdk/models/errors/getservercapabilitiesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
| ---------------------------------------------------- | ---------------------------------------------------- |
|
* [`GetServerPreferencesBadRequest`](docs/sdk/models/errors/getserverpreferencesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
| RequestAbortedError | HTTP request was aborted by the client |
|
* [`GetAvailableClientsBadRequest`](docs/sdk/models/errors/getavailableclientsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
| RequestTimeoutError | HTTP request timed out due to an AbortSignal signal |
|
* [`GetDevicesBadRequest`](docs/sdk/models/errors/getdevicesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
| ConnectionError | HTTP client was unable to make a request to a server |
|
* [`GetMyPlexAccountBadRequest`](docs/sdk/models/errors/getmyplexaccountbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
| InvalidRequestError | Any input used to create a request is invalid |
|
* [`GetResizedPhotoBadRequest`](docs/sdk/models/errors/getresizedphotobadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
| UnexpectedClientError | Unrecognised or unexpected error |
|
* [`GetMediaProvidersBadRequest`](docs/sdk/models/errors/getmediaprovidersbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerListBadRequest`](docs/sdk/models/errors/getserverlistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`MarkPlayedBadRequest`](docs/sdk/models/errors/markplayedbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`MarkUnplayedBadRequest`](docs/sdk/models/errors/markunplayedbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`UpdatePlayProgressBadRequest`](docs/sdk/models/errors/updateplayprogressbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetBannerImageBadRequest`](docs/sdk/models/errors/getbannerimagebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetThumbImageBadRequest`](docs/sdk/models/errors/getthumbimagebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTimelineBadRequest`](docs/sdk/models/errors/gettimelinebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StartUniversalTranscodeBadRequest`](docs/sdk/models/errors/startuniversaltranscodebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerActivitiesBadRequest`](docs/sdk/models/errors/getserveractivitiesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`CancelServerActivitiesBadRequest`](docs/sdk/models/errors/cancelserveractivitiesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetButlerTasksBadRequest`](docs/sdk/models/errors/getbutlertasksbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StartAllTasksBadRequest`](docs/sdk/models/errors/startalltasksbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StopAllTasksBadRequest`](docs/sdk/models/errors/stopalltasksbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StartTaskBadRequest`](docs/sdk/models/errors/starttaskbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StopTaskBadRequest`](docs/sdk/models/errors/stoptaskbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetCompanionsDataBadRequest`](docs/sdk/models/errors/getcompanionsdatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetUserFriendsBadRequest`](docs/sdk/models/errors/getuserfriendsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetGeoDataBadRequest`](docs/sdk/models/errors/getgeodatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetHomeDataBadRequest`](docs/sdk/models/errors/gethomedatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerResourcesBadRequest`](docs/sdk/models/errors/getserverresourcesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetPinBadRequest`](docs/sdk/models/errors/getpinbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTokenByPinIdBadRequest`](docs/sdk/models/errors/gettokenbypinidbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetGlobalHubsBadRequest`](docs/sdk/models/errors/getglobalhubsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetLibraryHubsBadRequest`](docs/sdk/models/errors/getlibraryhubsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`PerformSearchBadRequest`](docs/sdk/models/errors/performsearchbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`PerformVoiceSearchBadRequest`](docs/sdk/models/errors/performvoicesearchbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSearchResultsBadRequest`](docs/sdk/models/errors/getsearchresultsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetFileHashBadRequest`](docs/sdk/models/errors/getfilehashbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetRecentlyAddedLibraryBadRequest`](docs/sdk/models/errors/getrecentlyaddedlibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetAllLibrariesBadRequest`](docs/sdk/models/errors/getalllibrariesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetLibraryDetailsBadRequest`](docs/sdk/models/errors/getlibrarydetailsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`DeleteLibraryBadRequest`](docs/sdk/models/errors/deletelibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetLibraryItemsBadRequest`](docs/sdk/models/errors/getlibraryitemsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetLibrarySectionsAllBadRequest`](docs/sdk/models/errors/getlibrarysectionsallbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetRefreshLibraryMetadataBadRequest`](docs/sdk/models/errors/getrefreshlibrarymetadatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSearchLibraryBadRequest`](docs/sdk/models/errors/getsearchlibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetGenresLibraryBadRequest`](docs/sdk/models/errors/getgenreslibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetCountriesLibraryBadRequest`](docs/sdk/models/errors/getcountrieslibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetActorsLibraryBadRequest`](docs/sdk/models/errors/getactorslibrarybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSearchAllLibrariesBadRequest`](docs/sdk/models/errors/getsearchalllibrariesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetMediaMetaDataBadRequest`](docs/sdk/models/errors/getmediametadatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetMetadataChildrenBadRequest`](docs/sdk/models/errors/getmetadatachildrenbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTopWatchedContentBadRequest`](docs/sdk/models/errors/gettopwatchedcontentbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetWatchListBadRequest`](docs/sdk/models/errors/getwatchlistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`LogLineBadRequest`](docs/sdk/models/errors/loglinebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`LogMultiLineBadRequest`](docs/sdk/models/errors/logmultilinebadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`EnablePaperTrailBadRequest`](docs/sdk/models/errors/enablepapertrailbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`CreatePlaylistBadRequest`](docs/sdk/models/errors/createplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetPlaylistsBadRequest`](docs/sdk/models/errors/getplaylistsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetPlaylistBadRequest`](docs/sdk/models/errors/getplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`DeletePlaylistBadRequest`](docs/sdk/models/errors/deleteplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`UpdatePlaylistBadRequest`](docs/sdk/models/errors/updateplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetPlaylistContentsBadRequest`](docs/sdk/models/errors/getplaylistcontentsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`ClearPlaylistContentsBadRequest`](docs/sdk/models/errors/clearplaylistcontentsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`AddPlaylistContentsBadRequest`](docs/sdk/models/errors/addplaylistcontentsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`UploadPlaylistBadRequest`](docs/sdk/models/errors/uploadplaylistbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTransientTokenBadRequest`](docs/sdk/models/errors/gettransienttokenbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSourceConnectionInformationBadRequest`](docs/sdk/models/errors/getsourceconnectioninformationbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTokenDetailsBadRequest`](docs/sdk/models/errors/gettokendetailsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`PostUsersSignInDataBadRequest`](docs/sdk/models/errors/postuserssignindatabadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetStatisticsBadRequest`](docs/sdk/models/errors/getstatisticsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetResourcesStatisticsBadRequest`](docs/sdk/models/errors/getresourcesstatisticsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetBandwidthStatisticsBadRequest`](docs/sdk/models/errors/getbandwidthstatisticsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSessionsBadRequest`](docs/sdk/models/errors/getsessionsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSessionHistoryBadRequest`](docs/sdk/models/errors/getsessionhistorybadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTranscodeSessionsBadRequest`](docs/sdk/models/errors/gettranscodesessionsbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StopTranscodeSessionBadRequest`](docs/sdk/models/errors/stoptranscodesessionbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetUpdateStatusBadRequest`](docs/sdk/models/errors/getupdatestatusbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`CheckForUpdatesBadRequest`](docs/sdk/models/errors/checkforupdatesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`ApplyUpdatesBadRequest`](docs/sdk/models/errors/applyupdatesbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetUsersBadRequest`](docs/sdk/models/errors/getusersbadrequest.md): Bad Request - A parameter was not specified, or was specified incorrectly. Status code `400`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerCapabilitiesUnauthorized`](docs/sdk/models/errors/getservercapabilitiesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerPreferencesUnauthorized`](docs/sdk/models/errors/getserverpreferencesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetAvailableClientsUnauthorized`](docs/sdk/models/errors/getavailableclientsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetDevicesUnauthorized`](docs/sdk/models/errors/getdevicesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetMyPlexAccountUnauthorized`](docs/sdk/models/errors/getmyplexaccountunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetResizedPhotoUnauthorized`](docs/sdk/models/errors/getresizedphotounauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetMediaProvidersUnauthorized`](docs/sdk/models/errors/getmediaprovidersunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerListUnauthorized`](docs/sdk/models/errors/getserverlistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`MarkPlayedUnauthorized`](docs/sdk/models/errors/markplayedunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`MarkUnplayedUnauthorized`](docs/sdk/models/errors/markunplayedunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`UpdatePlayProgressUnauthorized`](docs/sdk/models/errors/updateplayprogressunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetBannerImageUnauthorized`](docs/sdk/models/errors/getbannerimageunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetThumbImageUnauthorized`](docs/sdk/models/errors/getthumbimageunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTimelineUnauthorized`](docs/sdk/models/errors/gettimelineunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StartUniversalTranscodeUnauthorized`](docs/sdk/models/errors/startuniversaltranscodeunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerActivitiesUnauthorized`](docs/sdk/models/errors/getserveractivitiesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`CancelServerActivitiesUnauthorized`](docs/sdk/models/errors/cancelserveractivitiesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetButlerTasksUnauthorized`](docs/sdk/models/errors/getbutlertasksunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StartAllTasksUnauthorized`](docs/sdk/models/errors/startalltasksunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StopAllTasksUnauthorized`](docs/sdk/models/errors/stopalltasksunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StartTaskUnauthorized`](docs/sdk/models/errors/starttaskunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StopTaskUnauthorized`](docs/sdk/models/errors/stoptaskunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetCompanionsDataUnauthorized`](docs/sdk/models/errors/getcompanionsdataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetUserFriendsUnauthorized`](docs/sdk/models/errors/getuserfriendsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetGeoDataUnauthorized`](docs/sdk/models/errors/getgeodataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetHomeDataUnauthorized`](docs/sdk/models/errors/gethomedataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerResourcesUnauthorized`](docs/sdk/models/errors/getserverresourcesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetGlobalHubsUnauthorized`](docs/sdk/models/errors/getglobalhubsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetLibraryHubsUnauthorized`](docs/sdk/models/errors/getlibraryhubsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`PerformSearchUnauthorized`](docs/sdk/models/errors/performsearchunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`PerformVoiceSearchUnauthorized`](docs/sdk/models/errors/performvoicesearchunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSearchResultsUnauthorized`](docs/sdk/models/errors/getsearchresultsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetFileHashUnauthorized`](docs/sdk/models/errors/getfilehashunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetRecentlyAddedLibraryUnauthorized`](docs/sdk/models/errors/getrecentlyaddedlibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetAllLibrariesUnauthorized`](docs/sdk/models/errors/getalllibrariesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetLibraryDetailsUnauthorized`](docs/sdk/models/errors/getlibrarydetailsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`DeleteLibraryUnauthorized`](docs/sdk/models/errors/deletelibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetLibraryItemsUnauthorized`](docs/sdk/models/errors/getlibraryitemsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetLibrarySectionsAllUnauthorized`](docs/sdk/models/errors/getlibrarysectionsallunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetRefreshLibraryMetadataUnauthorized`](docs/sdk/models/errors/getrefreshlibrarymetadataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSearchLibraryUnauthorized`](docs/sdk/models/errors/getsearchlibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetGenresLibraryUnauthorized`](docs/sdk/models/errors/getgenreslibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetCountriesLibraryUnauthorized`](docs/sdk/models/errors/getcountrieslibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetActorsLibraryUnauthorized`](docs/sdk/models/errors/getactorslibraryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSearchAllLibrariesUnauthorized`](docs/sdk/models/errors/getsearchalllibrariesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetMediaMetaDataUnauthorized`](docs/sdk/models/errors/getmediametadataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetMetadataChildrenUnauthorized`](docs/sdk/models/errors/getmetadatachildrenunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTopWatchedContentUnauthorized`](docs/sdk/models/errors/gettopwatchedcontentunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetWatchListUnauthorized`](docs/sdk/models/errors/getwatchlistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`LogLineUnauthorized`](docs/sdk/models/errors/loglineunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`LogMultiLineUnauthorized`](docs/sdk/models/errors/logmultilineunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`EnablePaperTrailUnauthorized`](docs/sdk/models/errors/enablepapertrailunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`CreatePlaylistUnauthorized`](docs/sdk/models/errors/createplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetPlaylistsUnauthorized`](docs/sdk/models/errors/getplaylistsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetPlaylistUnauthorized`](docs/sdk/models/errors/getplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`DeletePlaylistUnauthorized`](docs/sdk/models/errors/deleteplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`UpdatePlaylistUnauthorized`](docs/sdk/models/errors/updateplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetPlaylistContentsUnauthorized`](docs/sdk/models/errors/getplaylistcontentsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`ClearPlaylistContentsUnauthorized`](docs/sdk/models/errors/clearplaylistcontentsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`AddPlaylistContentsUnauthorized`](docs/sdk/models/errors/addplaylistcontentsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`UploadPlaylistUnauthorized`](docs/sdk/models/errors/uploadplaylistunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTransientTokenUnauthorized`](docs/sdk/models/errors/gettransienttokenunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSourceConnectionInformationUnauthorized`](docs/sdk/models/errors/getsourceconnectioninformationunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTokenDetailsUnauthorized`](docs/sdk/models/errors/gettokendetailsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`PostUsersSignInDataUnauthorized`](docs/sdk/models/errors/postuserssignindataunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetStatisticsUnauthorized`](docs/sdk/models/errors/getstatisticsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetResourcesStatisticsUnauthorized`](docs/sdk/models/errors/getresourcesstatisticsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetBandwidthStatisticsUnauthorized`](docs/sdk/models/errors/getbandwidthstatisticsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSessionsUnauthorized`](docs/sdk/models/errors/getsessionsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetSessionHistoryUnauthorized`](docs/sdk/models/errors/getsessionhistoryunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTranscodeSessionsUnauthorized`](docs/sdk/models/errors/gettranscodesessionsunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`StopTranscodeSessionUnauthorized`](docs/sdk/models/errors/stoptranscodesessionunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetUpdateStatusUnauthorized`](docs/sdk/models/errors/getupdatestatusunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`CheckForUpdatesUnauthorized`](docs/sdk/models/errors/checkforupdatesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`ApplyUpdatesUnauthorized`](docs/sdk/models/errors/applyupdatesunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetUsersUnauthorized`](docs/sdk/models/errors/getusersunauthorized.md): Unauthorized - Returned if the X-Plex-Token is missing from the header or query. Status code `401`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetTokenByPinIdResponseBody`](docs/sdk/models/errors/gettokenbypinidresponsebody.md): Not Found or Expired. Status code `404`. Applicable to 1 of 84 methods.*
|
||||||
|
* [`GetServerIdentityRequestTimeout`](docs/sdk/models/errors/getserveridentityrequesttimeout.md): Request Timeout. Status code `408`. Applicable to 1 of 84 methods.*
|
||||||
|
</details>
|
||||||
|
|
||||||
|
|
||||||
|
\* Check [the method documentation](#available-resources-and-operations) to see if the error is applicable.
|
||||||
<!-- End Error Handling [errors] -->
|
<!-- End Error Handling [errors] -->
|
||||||
|
|
||||||
<!-- Start Server Selection [server] -->
|
<!-- Start Server Selection [server] -->
|
||||||
@@ -357,15 +509,14 @@ import { PlexAPI } from "@lukehagar/plexjs";
|
|||||||
|
|
||||||
const plexAPI = new PlexAPI({
|
const plexAPI = new PlexAPI({
|
||||||
protocol: "https",
|
protocol: "https",
|
||||||
ip: "e0c3:bcc0:6bac:dccc:c4ec:34b1:ca98:4cb9",
|
ip: "4982:bc2a:b4f8:efb5:2394:5bc3:ab4f:0e6d",
|
||||||
port: "40311",
|
port: "44765",
|
||||||
accessToken: "<YOUR_API_KEY_HERE>",
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -387,7 +538,6 @@ const plexAPI = new PlexAPI({
|
|||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -410,7 +560,6 @@ async function run() {
|
|||||||
serverURL: "https://plex.tv/api/v2",
|
serverURL: "https://plex.tv/api/v2",
|
||||||
});
|
});
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -490,7 +639,6 @@ const plexAPI = new PlexAPI({
|
|||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -537,19 +685,23 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
|
|||||||
- [`libraryDeleteLibrary`](docs/sdks/library/README.md#deletelibrary) - Delete Library Section
|
- [`libraryDeleteLibrary`](docs/sdks/library/README.md#deletelibrary) - Delete Library Section
|
||||||
- [`libraryGetActorsLibrary`](docs/sdks/library/README.md#getactorslibrary) - Get Actors of library media
|
- [`libraryGetActorsLibrary`](docs/sdks/library/README.md#getactorslibrary) - Get Actors of library media
|
||||||
- [`libraryGetAllLibraries`](docs/sdks/library/README.md#getalllibraries) - Get All Libraries
|
- [`libraryGetAllLibraries`](docs/sdks/library/README.md#getalllibraries) - Get All Libraries
|
||||||
- [`libraryGetAllMediaLibrary`](docs/sdks/library/README.md#getallmedialibrary) - Get all media of library
|
|
||||||
- [`libraryGetCountriesLibrary`](docs/sdks/library/README.md#getcountrieslibrary) - Get Countries of library media
|
- [`libraryGetCountriesLibrary`](docs/sdks/library/README.md#getcountrieslibrary) - Get Countries of library media
|
||||||
- [`libraryGetFileHash`](docs/sdks/library/README.md#getfilehash) - Get Hash Value
|
- [`libraryGetFileHash`](docs/sdks/library/README.md#getfilehash) - Get Hash Value
|
||||||
- [`libraryGetGenresLibrary`](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
|
- [`libraryGetGenresLibrary`](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
|
||||||
- [`libraryGetLibraryDetails`](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details
|
- [`libraryGetLibraryDetails`](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details
|
||||||
- [`libraryGetLibraryItems`](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
|
- [`libraryGetLibraryItems`](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
|
||||||
|
- [`libraryGetLibrarySectionsAll`](docs/sdks/library/README.md#getlibrarysectionsall) - Get Library section media by tag ALL
|
||||||
|
- [`libraryGetMediaArts`](docs/sdks/library/README.md#getmediaarts) - Get Media Background Artwork
|
||||||
- [`libraryGetMediaMetaData`](docs/sdks/library/README.md#getmediametadata) - Get Media Metadata
|
- [`libraryGetMediaMetaData`](docs/sdks/library/README.md#getmediametadata) - Get Media Metadata
|
||||||
|
- [`libraryGetMediaPosters`](docs/sdks/library/README.md#getmediaposters) - Get Media Posters
|
||||||
- [`libraryGetMetadataChildren`](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
|
- [`libraryGetMetadataChildren`](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
|
||||||
- [`libraryGetRecentlyAddedLibrary`](docs/sdks/library/README.md#getrecentlyaddedlibrary) - Get Recently Added
|
- [`libraryGetRecentlyAddedLibrary`](docs/sdks/library/README.md#getrecentlyaddedlibrary) - Get Recently Added
|
||||||
- [`libraryGetRefreshLibraryMetadata`](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
|
- [`libraryGetRefreshLibraryMetadata`](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
|
||||||
- [`libraryGetSearchAllLibraries`](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
|
- [`libraryGetSearchAllLibraries`](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
|
||||||
- [`libraryGetSearchLibrary`](docs/sdks/library/README.md#getsearchlibrary) - Search Library
|
- [`libraryGetSearchLibrary`](docs/sdks/library/README.md#getsearchlibrary) - Search Library
|
||||||
- [`libraryGetTopWatchedContent`](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
|
- [`libraryGetTopWatchedContent`](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
|
||||||
|
- [`libraryPostMediaArts`](docs/sdks/library/README.md#postmediaarts) - Upload Media Background Artwork
|
||||||
|
- [`libraryPostMediaPoster`](docs/sdks/library/README.md#postmediaposter) - Upload Media Poster
|
||||||
- [`logEnablePaperTrail`](docs/sdks/log/README.md#enablepapertrail) - Enabling Papertrail
|
- [`logEnablePaperTrail`](docs/sdks/log/README.md#enablepapertrail) - Enabling Papertrail
|
||||||
- [`logLogLine`](docs/sdks/log/README.md#logline) - Logging a single line message.
|
- [`logLogLine`](docs/sdks/log/README.md#logline) - Logging a single line message.
|
||||||
- [`logLogMultiLine`](docs/sdks/log/README.md#logmultiline) - Logging a multi-line message
|
- [`logLogMultiLine`](docs/sdks/log/README.md#logmultiline) - Logging a multi-line message
|
||||||
@@ -604,6 +756,41 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md).
|
|||||||
</details>
|
</details>
|
||||||
<!-- End Standalone functions [standalone-funcs] -->
|
<!-- End Standalone functions [standalone-funcs] -->
|
||||||
|
|
||||||
|
<!-- Start File uploads [file-upload] -->
|
||||||
|
## File uploads
|
||||||
|
|
||||||
|
Certain SDK methods accept files as part of a multi-part request. It is possible and typically recommended to upload files as a stream rather than reading the entire contents into memory. This avoids excessive memory consumption and potentially crashing with out-of-memory errors when working with very large files. The following example demonstrates how to attach a file stream to a request.
|
||||||
|
|
||||||
|
> [!TIP]
|
||||||
|
>
|
||||||
|
> Depending on your JavaScript runtime, there are convenient utilities that return a handle to a file without reading the entire contents into memory:
|
||||||
|
>
|
||||||
|
> - **Node.js v20+:** Since v20, Node.js comes with a native `openAsBlob` function in [`node:fs`](https://nodejs.org/docs/latest-v20.x/api/fs.html#fsopenasblobpath-options).
|
||||||
|
> - **Bun:** The native [`Bun.file`](https://bun.sh/docs/api/file-io#reading-files-bun-file) function produces a file handle that can be used for streaming file uploads.
|
||||||
|
> - **Browsers:** All supported browsers return an instance to a [`File`](https://developer.mozilla.org/en-US/docs/Web/API/File) when reading the value from an `<input type="file">` element.
|
||||||
|
> - **Node.js v18:** A file stream can be created using the `fileFrom` helper from [`fetch-blob/from.js`](https://www.npmjs.com/package/fetch-blob).
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
import { PlexAPI } from "@lukehagar/plexjs";
|
||||||
|
|
||||||
|
const plexAPI = new PlexAPI({
|
||||||
|
accessToken: "<YOUR_API_KEY_HERE>",
|
||||||
|
});
|
||||||
|
|
||||||
|
async function run() {
|
||||||
|
const result = await plexAPI.library.postMediaArts(
|
||||||
|
2268,
|
||||||
|
"https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b",
|
||||||
|
);
|
||||||
|
|
||||||
|
console.log(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
run();
|
||||||
|
|
||||||
|
```
|
||||||
|
<!-- End File uploads [file-upload] -->
|
||||||
|
|
||||||
<!-- Start Retries [retries] -->
|
<!-- Start Retries [retries] -->
|
||||||
## Retries
|
## Retries
|
||||||
|
|
||||||
@@ -631,7 +818,6 @@ async function run() {
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -660,7 +846,6 @@ const plexAPI = new PlexAPI({
|
|||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
100
RELEASES.md
100
RELEASES.md
@@ -1249,3 +1249,103 @@ Based on:
|
|||||||
- [typescript v0.35.1] .
|
- [typescript v0.35.1] .
|
||||||
### Releases
|
### Releases
|
||||||
- [NPM v0.35.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.1 - .
|
- [NPM v0.35.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.1 - .
|
||||||
|
|
||||||
|
## 2025-03-31 16:31:46
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.526.6 (2.563.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.35.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.35.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.2 - .
|
||||||
|
|
||||||
|
## 2025-03-31 19:33:46
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.526.6 (2.563.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.35.3] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.35.3] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.3 - .
|
||||||
|
|
||||||
|
## 2025-03-31 19:42:25
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.526.6 (2.563.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.35.4] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.35.4] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.35.4 - .
|
||||||
|
|
||||||
|
## 2025-04-03 00:10:29
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.528.1 (2.565.1) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.36.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.36.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.36.0 - .
|
||||||
|
|
||||||
|
## 2025-04-06 00:11:19
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.529.1 (2.566.5) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.36.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.36.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.36.1 - .
|
||||||
|
|
||||||
|
## 2025-04-14 00:11:23
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.531.4 (2.570.4) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.36.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.36.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.36.2 - .
|
||||||
|
|
||||||
|
## 2025-04-19 00:10:19
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.535.1 (2.585.2) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.37.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.37.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.37.0 - .
|
||||||
|
|
||||||
|
## 2025-05-01 00:12:16
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.541.2 (2.595.4) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.37.1] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.37.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.37.1 - .
|
||||||
|
|
||||||
|
## 2025-05-05 00:11:37
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.542.1 (2.597.9) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.37.2] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.37.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.37.2 - .
|
||||||
|
|
||||||
|
## 2025-06-04 00:11:21
|
||||||
|
### Changes
|
||||||
|
Based on:
|
||||||
|
- OpenAPI Doc
|
||||||
|
- Speakeasy CLI 1.555.2 (2.620.2) https://github.com/speakeasy-api/speakeasy
|
||||||
|
### Generated
|
||||||
|
- [typescript v0.38.0] .
|
||||||
|
### Releases
|
||||||
|
- [NPM v0.38.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.38.0 - .
|
||||||
1
USAGE.md
1
USAGE.md
@@ -9,7 +9,6 @@ const plexAPI = new PlexAPI({
|
|||||||
async function run() {
|
async function run() {
|
||||||
const result = await plexAPI.server.getServerCapabilities();
|
const result = await plexAPI.server.getServerCapabilities();
|
||||||
|
|
||||||
// Handle the result
|
|
||||||
console.log(result);
|
console.log(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
406
codeSamples.yaml
406
codeSamples.yaml
File diff suppressed because it is too large
Load Diff
@@ -1,18 +0,0 @@
|
|||||||
# GetAllMediaLibraryBadRequest
|
|
||||||
|
|
||||||
Bad Request - A parameter was not specified, or was specified incorrectly.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
|
|
||||||
| `errors` | [errors.GetAllMediaLibraryErrors](../../../sdk/models/errors/getallmedialibraryerrors.md)[] | :heavy_minus_sign: | N/A |
|
|
||||||
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetAllMediaLibraryUnauthorized
|
|
||||||
|
|
||||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
|
|
||||||
|
|
||||||
// No examples available for this model
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
|
|
||||||
| `errors` | [errors.GetAllMediaLibraryLibraryErrors](../../../sdk/models/errors/getallmedialibrarylibraryerrors.md)[] | :heavy_minus_sign: | N/A |
|
|
||||||
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
|
||||||
18
docs/sdk/models/errors/getlibrarysectionsallbadrequest.md
Normal file
18
docs/sdk/models/errors/getlibrarysectionsallbadrequest.md
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# GetLibrarySectionsAllBadRequest
|
||||||
|
|
||||||
|
Bad Request - A parameter was not specified, or was specified incorrectly.
|
||||||
|
|
||||||
|
## Example Usage
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
import { GetLibrarySectionsAllBadRequest } from "@lukehagar/plexjs/sdk/models/errors";
|
||||||
|
|
||||||
|
// No examples available for this model
|
||||||
|
```
|
||||||
|
|
||||||
|
## Fields
|
||||||
|
|
||||||
|
| Field | Type | Required | Description |
|
||||||
|
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
|
||||||
|
| `errors` | [errors.GetLibrarySectionsAllErrors](../../../sdk/models/errors/getlibrarysectionsallerrors.md)[] | :heavy_minus_sign: | N/A |
|
||||||
|
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
# GetAllMediaLibraryErrors
|
# GetLibrarySectionsAllErrors
|
||||||
|
|
||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetAllMediaLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
|
import { GetLibrarySectionsAllErrors } from "@lukehagar/plexjs/sdk/models/errors";
|
||||||
|
|
||||||
let value: GetAllMediaLibraryErrors = {
|
let value: GetLibrarySectionsAllErrors = {
|
||||||
code: 1000,
|
code: 1000,
|
||||||
message: "X-Plex-Client-Identifier is missing",
|
message: "X-Plex-Client-Identifier is missing",
|
||||||
status: 400,
|
status: 400,
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
# GetAllMediaLibraryLibraryErrors
|
# GetLibrarySectionsAllLibraryErrors
|
||||||
|
|
||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetAllMediaLibraryLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
|
import { GetLibrarySectionsAllLibraryErrors } from "@lukehagar/plexjs/sdk/models/errors";
|
||||||
|
|
||||||
let value: GetAllMediaLibraryLibraryErrors = {
|
let value: GetLibrarySectionsAllLibraryErrors = {
|
||||||
code: 1001,
|
code: 1001,
|
||||||
message: "User could not be authenticated",
|
message: "User could not be authenticated",
|
||||||
status: 401,
|
status: 401,
|
||||||
18
docs/sdk/models/errors/getlibrarysectionsallunauthorized.md
Normal file
18
docs/sdk/models/errors/getlibrarysectionsallunauthorized.md
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# GetLibrarySectionsAllUnauthorized
|
||||||
|
|
||||||
|
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
||||||
|
|
||||||
|
## Example Usage
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
import { GetLibrarySectionsAllUnauthorized } from "@lukehagar/plexjs/sdk/models/errors";
|
||||||
|
|
||||||
|
// No examples available for this model
|
||||||
|
```
|
||||||
|
|
||||||
|
## Fields
|
||||||
|
|
||||||
|
| Field | Type | Required | Description |
|
||||||
|
| --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
|
||||||
|
| `errors` | [errors.GetLibrarySectionsAllLibraryErrors](../../../sdk/models/errors/getlibrarysectionsalllibraryerrors.md)[] | :heavy_minus_sign: | N/A |
|
||||||
|
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
import { AddPlaylistContentsRequest } from "@lukehagar/plexjs/sdk/models/operations";
|
import { AddPlaylistContentsRequest } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: AddPlaylistContentsRequest = {
|
let value: AddPlaylistContentsRequest = {
|
||||||
playlistID: 2776.28,
|
playlistID: 1207.42,
|
||||||
uri: "server://12345/com.plexapp.plugins.library/library/metadata/1",
|
uri: "server://12345/com.plexapp.plugins.library/library/metadata/1",
|
||||||
playQueueID: 123,
|
playQueueID: 123,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -5,38 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { AddPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { AddPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: AddPlaylistContentsResponse = {
|
let value: AddPlaylistContentsResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 307,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 1,
|
|
||||||
leafCountAdded: 1,
|
|
||||||
leafCountRequested: 1,
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "94",
|
|
||||||
key: "/playlists/94/items",
|
|
||||||
guid:
|
|
||||||
"com.plexapp.agents.none://972e3047-83d6-4848-a000-261f0af26ba2",
|
|
||||||
type: "playlist",
|
|
||||||
title: "A great playlist",
|
|
||||||
summary: "One of my great playlists",
|
|
||||||
smart: false,
|
|
||||||
playlistType: "video",
|
|
||||||
composite: "/playlists/94/composite/1705800070",
|
|
||||||
duration: 423000,
|
|
||||||
leafCount: 3,
|
|
||||||
addedAt: 1705716458,
|
|
||||||
updatedAt: 1705800070,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,13 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { ApplyUpdatesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { ApplyUpdatesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: ApplyUpdatesResponse = {
|
let value: ApplyUpdatesResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 208,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
21
docs/sdk/models/operations/attributes.md
Normal file
21
docs/sdk/models/operations/attributes.md
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
# Attributes
|
||||||
|
|
||||||
|
Attributes associated with the marker.
|
||||||
|
|
||||||
|
## Example Usage
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
import { Attributes } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
|
let value: Attributes = {
|
||||||
|
id: 306970,
|
||||||
|
version: 4,
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
## Fields
|
||||||
|
|
||||||
|
| Field | Type | Required | Description | Example |
|
||||||
|
| -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- |
|
||||||
|
| `id` | *number* | :heavy_check_mark: | The identifier for the attributes. | 306970 |
|
||||||
|
| `version` | *number* | :heavy_minus_sign: | The version number of the marker attributes. | 4 |
|
||||||
@@ -7,7 +7,7 @@ import { Billing } from "@lukehagar/plexjs/sdk/models/operations";
|
|||||||
|
|
||||||
let value: Billing = {
|
let value: Billing = {
|
||||||
internalPaymentMethod: {},
|
internalPaymentMethod: {},
|
||||||
paymentMethodId: 903720,
|
paymentMethodId: 575569,
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -5,13 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { CancelServerActivitiesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { CancelServerActivitiesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: CancelServerActivitiesResponse = {
|
let value: CancelServerActivitiesResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 417,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
29
docs/sdk/models/operations/chapter.md
Normal file
29
docs/sdk/models/operations/chapter.md
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
# Chapter
|
||||||
|
|
||||||
|
The thumbnail for the chapter
|
||||||
|
|
||||||
|
## Example Usage
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
import { Chapter } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
|
let value: Chapter = {
|
||||||
|
id: 4,
|
||||||
|
filter: "thumb=4",
|
||||||
|
index: 1,
|
||||||
|
startTimeOffset: 0,
|
||||||
|
endTimeOffset: 100100,
|
||||||
|
thumb: "/library/media/46883/chapterImages/1",
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
## Fields
|
||||||
|
|
||||||
|
| Field | Type | Required | Description | Example |
|
||||||
|
| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ |
|
||||||
|
| `id` | *number* | :heavy_check_mark: | N/A | 4 |
|
||||||
|
| `filter` | *string* | :heavy_check_mark: | N/A | thumb=4 |
|
||||||
|
| `index` | *number* | :heavy_check_mark: | N/A | 1 |
|
||||||
|
| `startTimeOffset` | *number* | :heavy_check_mark: | N/A | 0 |
|
||||||
|
| `endTimeOffset` | *number* | :heavy_check_mark: | N/A | 100100 |
|
||||||
|
| `thumb` | *string* | :heavy_check_mark: | N/A | /library/media/46883/chapterImages/1 |
|
||||||
@@ -5,13 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { CheckForUpdatesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { CheckForUpdatesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: CheckForUpdatesResponse = {
|
let value: CheckForUpdatesResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 428,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
import { ClearPlaylistContentsRequest } from "@lukehagar/plexjs/sdk/models/operations";
|
import { ClearPlaylistContentsRequest } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: ClearPlaylistContentsRequest = {
|
let value: ClearPlaylistContentsRequest = {
|
||||||
playlistID: 4246.85,
|
playlistID: 5077.01,
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -5,13 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { ClearPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { ClearPlaylistContentsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: ClearPlaylistContentsResponse = {
|
let value: ClearPlaylistContentsResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 204,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -7,12 +7,12 @@ import { Connections, Protocol } from "@lukehagar/plexjs/sdk/models/operations";
|
|||||||
|
|
||||||
let value: Connections = {
|
let value: Connections = {
|
||||||
protocol: Protocol.Http,
|
protocol: Protocol.Http,
|
||||||
address: "21611 Schuster Cliffs",
|
address: "84577 W 9th Street",
|
||||||
port: 54915,
|
port: 610910,
|
||||||
uri: "https://wobbly-instance.org/",
|
uri: "https://dearest-custom.net",
|
||||||
local: false,
|
local: true,
|
||||||
relay: false,
|
relay: true,
|
||||||
iPv6: false,
|
iPv6: true,
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ let value: Country = {
|
|||||||
## Fields
|
## Fields
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
| Field | Type | Required | Description | Example |
|
||||||
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
|
| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
|
||||||
| `id` | *number* | :heavy_check_mark: | N/A | 259 |
|
| `id` | *number* | :heavy_check_mark: | The unique identifier for the country.<br/>NOTE: This is different for each Plex server and is not globally unique.<br/> | 259 |
|
||||||
| `tag` | *string* | :heavy_check_mark: | The country of origin of this media item | United States of America |
|
| `tag` | *string* | :heavy_check_mark: | The country of origin of this media item | United States of America |
|
||||||
| `filter` | *string* | :heavy_minus_sign: | N/A | country=19 |
|
| `filter` | *string* | :heavy_check_mark: | N/A | country=19 |
|
||||||
@@ -12,8 +12,11 @@ let value: CreatePlaylistQueryParamType = CreatePlaylistQueryParamType.Photo;
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| ------- | ------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `Audio` | audio |
|
| `Audio` | audio |
|
||||||
| `Video` | video |
|
| `Video` | video |
|
||||||
| `Photo` | photo |
|
| `Photo` | photo |
|
||||||
|
| - | `Unrecognized<string>` |
|
||||||
@@ -8,8 +8,8 @@ import { CreatePlaylistQueryParamType, CreatePlaylistRequest, Smart } from "@luk
|
|||||||
let value: CreatePlaylistRequest = {
|
let value: CreatePlaylistRequest = {
|
||||||
title: "<value>",
|
title: "<value>",
|
||||||
type: CreatePlaylistQueryParamType.Audio,
|
type: CreatePlaylistQueryParamType.Audio,
|
||||||
smart: Smart.One,
|
smart: Smart.Zero,
|
||||||
uri: "https://ajar-reward.biz/",
|
uri: "https://courageous-futon.net",
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -5,39 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { CreatePlaylistResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { CreatePlaylistResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: CreatePlaylistResponse = {
|
let value: CreatePlaylistResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 205,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 7,
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "96",
|
|
||||||
key: "/playlists/96/items",
|
|
||||||
guid:
|
|
||||||
"com.plexapp.agents.none://a2f92937-1408-40e2-b022-63a8a9377e55",
|
|
||||||
type: "playlist",
|
|
||||||
title: "A Great Playlist",
|
|
||||||
summary: "What a great playlist",
|
|
||||||
smart: false,
|
|
||||||
playlistType: "video",
|
|
||||||
icon: "playlist://image.smart",
|
|
||||||
viewCount: 1,
|
|
||||||
lastViewedAt: 1705719589,
|
|
||||||
leafCount: 1,
|
|
||||||
addedAt: 1705719589,
|
|
||||||
updatedAt: 1705724593,
|
|
||||||
composite: "/playlists/96/composite/1705724593",
|
|
||||||
duration: 141000,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,13 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { DeleteLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { DeleteLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: DeleteLibraryResponse = {
|
let value: DeleteLibraryResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 451,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
import { DeletePlaylistRequest } from "@lukehagar/plexjs/sdk/models/operations";
|
import { DeletePlaylistRequest } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: DeletePlaylistRequest = {
|
let value: DeletePlaylistRequest = {
|
||||||
playlistID: 6874.88,
|
playlistID: 5840.32,
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -5,13 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { DeletePlaylistResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { DeletePlaylistResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: DeletePlaylistResponse = {
|
let value: DeletePlaylistResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 226,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -6,12 +6,21 @@
|
|||||||
import { Director } from "@lukehagar/plexjs/sdk/models/operations";
|
import { Director } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: Director = {
|
let value: Director = {
|
||||||
|
id: 126522,
|
||||||
|
filter: "director=235876",
|
||||||
tag: "Danny Boyle",
|
tag: "Danny Boyle",
|
||||||
|
tagKey: "5d776831151a60001f24d031",
|
||||||
|
thumb:
|
||||||
|
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
| Field | Type | Required | Description | Example |
|
||||||
| -------------------- | -------------------- | -------------------- | -------------------- | -------------------- |
|
| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
||||||
|
| `id` | *number* | :heavy_check_mark: | Unique identifier for the director. | 126522 |
|
||||||
|
| `filter` | *string* | :heavy_check_mark: | The filter string used to query this director. | director=235876 |
|
||||||
| `tag` | *string* | :heavy_check_mark: | The role of Director | Danny Boyle |
|
| `tag` | *string* | :heavy_check_mark: | The role of Director | Danny Boyle |
|
||||||
|
| `tagKey` | *string* | :heavy_check_mark: | A unique 24-character hexadecimal key associated with the director's tag, used for internal identification. | 5d776831151a60001f24d031 |
|
||||||
|
| `thumb` | *string* | :heavy_minus_sign: | The absolute URL of the thumbnail image for the director. | https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg |
|
||||||
@@ -13,7 +13,10 @@ let value: EnableCreditsMarkerGeneration =
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| ---------------- | ---------------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `LibraryDefault` | -1 |
|
| `LibraryDefault` | -1 |
|
||||||
| `Disabled` | 0 |
|
| `Disabled` | 0 |
|
||||||
|
| - | `Unrecognized<string>` |
|
||||||
@@ -5,13 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { EnablePaperTrailResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { EnablePaperTrailResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: EnablePaperTrailResponse = {
|
let value: EnablePaperTrailResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 304,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -12,8 +12,11 @@ let value: EpisodeSort = EpisodeSort.OldestFirst;
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| ---------------- | ---------------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `LibraryDefault` | -1 |
|
| `LibraryDefault` | -1 |
|
||||||
| `OldestFirst` | 0 |
|
| `OldestFirst` | 0 |
|
||||||
| `NewestFirst` | 1 |
|
| `NewestFirst` | 1 |
|
||||||
|
| - | `Unrecognized<string>` |
|
||||||
17
docs/sdk/models/operations/extras.md
Normal file
17
docs/sdk/models/operations/extras.md
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# Extras
|
||||||
|
|
||||||
|
## Example Usage
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
import { Extras } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
|
let value: Extras = {
|
||||||
|
size: 1,
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
## Fields
|
||||||
|
|
||||||
|
| Field | Type | Required | Description | Example |
|
||||||
|
| ----------------------- | ----------------------- | ----------------------- | ----------------------- | ----------------------- |
|
||||||
|
| `size` | *number* | :heavy_minus_sign: | The size of the extras. | 1 |
|
||||||
@@ -7,13 +7,16 @@ Filter
|
|||||||
```typescript
|
```typescript
|
||||||
import { Filter } from "@lukehagar/plexjs/sdk/models/operations";
|
import { Filter } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: Filter = Filter.Released;
|
let value: Filter = Filter.Available;
|
||||||
```
|
```
|
||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| ----------- | ----------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `All` | all |
|
| `All` | all |
|
||||||
| `Available` | available |
|
| `Available` | available |
|
||||||
| `Released` | released |
|
| `Released` | released |
|
||||||
|
| - | `Unrecognized<string>` |
|
||||||
@@ -12,8 +12,11 @@ let value: FlattenSeasons = FlattenSeasons.Show;
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| ---------------- | ---------------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `LibraryDefault` | -1 |
|
| `LibraryDefault` | -1 |
|
||||||
| `Hide` | 0 |
|
| `Hide` | 0 |
|
||||||
| `Show` | 1 |
|
| `Show` | 1 |
|
||||||
|
| - | `Unrecognized<string>` |
|
||||||
@@ -7,7 +7,7 @@ Force the refresh even if the library is already being refreshed.
|
|||||||
```typescript
|
```typescript
|
||||||
import { Force } from "@lukehagar/plexjs/sdk/models/operations";
|
import { Force } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: Force = Force.One;
|
let value: Force = Force.Zero;
|
||||||
```
|
```
|
||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ let value: Genre = {
|
|||||||
## Fields
|
## Fields
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
| Field | Type | Required | Description | Example |
|
||||||
| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- |
|
| -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
|
||||||
| `id` | *number* | :heavy_check_mark: | N/A | 259 |
|
| `id` | *number* | :heavy_check_mark: | The unique identifier for the genre.<br/>NOTE: This is different for each Plex server and is not globally unique.<br/> | 259 |
|
||||||
| `filter` | *string* | :heavy_check_mark: | N/A | genre=19 |
|
| `filter` | *string* | :heavy_check_mark: | N/A | genre=19 |
|
||||||
| `tag` | *string* | :heavy_check_mark: | The genre name of this media-item<br/> | Crime |
|
| `tag` | *string* | :heavy_check_mark: | The genre name of this media-item<br/> | Crime |
|
||||||
@@ -12,8 +12,11 @@ let value: GeoData = {
|
|||||||
continentCode: "NA",
|
continentCode: "NA",
|
||||||
country: "United States Virgin Islands",
|
country: "United States Virgin Islands",
|
||||||
city: "Amsterdam",
|
city: "Amsterdam",
|
||||||
|
europeanUnionMember: true,
|
||||||
timeZone: "America/St_Thomas",
|
timeZone: "America/St_Thomas",
|
||||||
postalCode: "802",
|
postalCode: "802",
|
||||||
|
inPrivacyRestrictedCountry: true,
|
||||||
|
inPrivacyRestrictedRegion: true,
|
||||||
subdivisions: "Saint Thomas",
|
subdivisions: "Saint Thomas",
|
||||||
coordinates: "18.3381, -64.8941",
|
coordinates: "18.3381, -64.8941",
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -19,12 +19,17 @@ let value: GetActorsLibraryQueryParamType =
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| --------- | --------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `Movie` | 1 |
|
| `Movie` | 1 |
|
||||||
| `TvShow` | 2 |
|
| `TvShow` | 2 |
|
||||||
| `Season` | 3 |
|
| `Season` | 3 |
|
||||||
| `Episode` | 4 |
|
| `Episode` | 4 |
|
||||||
| `Audio` | 8 |
|
| `Artist` | 5 |
|
||||||
| `Album` | 9 |
|
| `Album` | 6 |
|
||||||
| `Track` | 10 |
|
| `Track` | 7 |
|
||||||
|
| `PhotoAlbum` | 8 |
|
||||||
|
| `Photo` | 9 |
|
||||||
|
| - | `Unrecognized<number>` |
|
||||||
@@ -5,38 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetActorsLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetActorsLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetActorsLibraryResponse = {
|
let value: GetActorsLibraryResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 300,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 50,
|
|
||||||
allowSync: false,
|
|
||||||
art: "/:/resources/show-fanart.jpg",
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
|
||||||
mediaTagVersion: 1734362201,
|
|
||||||
nocache: true,
|
|
||||||
thumb: "/:/resources/show.png",
|
|
||||||
title1: "TV Series",
|
|
||||||
title2: "By Starring Actor",
|
|
||||||
viewGroup: "secondary",
|
|
||||||
viewMode: "131131",
|
|
||||||
directory: [
|
|
||||||
{
|
|
||||||
fastKey: "/library/sections/2/all?actor=134671",
|
|
||||||
thumb:
|
|
||||||
"https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg",
|
|
||||||
key: "134671",
|
|
||||||
title: "Aaron Paul",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -3,60 +3,55 @@
|
|||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetAllLibrariesDirectory } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetAllLibrariesDirectory, GetAllLibrariesType, Hidden } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetAllLibrariesDirectory = {
|
let value: GetAllLibrariesDirectory = {
|
||||||
allowSync: true,
|
allowSync: false,
|
||||||
art: "/:/resources/movie-fanart.jpg",
|
art: "/:/resources/show-fanart.jpg",
|
||||||
composite: "/library/sections/1/composite/1705615584",
|
composite: "/library/sections/1/composite/1743824484",
|
||||||
filters: true,
|
filters: true,
|
||||||
refreshing: false,
|
refreshing: true,
|
||||||
thumb: "/:/resources/movie.png",
|
thumb: "/:/resources/show.png",
|
||||||
key: "1",
|
key: "1",
|
||||||
type: "movie",
|
type: GetAllLibrariesType.Movie,
|
||||||
title: "Movies",
|
title: "Movies",
|
||||||
agent: "tv.plex.agents.movie",
|
agent: "tv.plex.agents.movie",
|
||||||
scanner: "Plex Movie",
|
scanner: "Plex Movie",
|
||||||
language: "en-US",
|
language: "en-US",
|
||||||
uuid: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
uuid: "e69655a2-ef48-4aba-bb19-01e7d3cc34d6",
|
||||||
updatedAt: 1556281940,
|
updatedAt: 1556281940,
|
||||||
createdAt: 1556281940,
|
createdAt: 1556281940,
|
||||||
scannedAt: 1556281940,
|
scannedAt: 1556281940,
|
||||||
content: true,
|
content: true,
|
||||||
directory: true,
|
directory: true,
|
||||||
contentChangedAt: 1556281940,
|
contentChangedAt: 9173960,
|
||||||
hidden: 0,
|
hidden: Hidden.ExcludeHomeScreen,
|
||||||
location: [
|
location: [],
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
path: "/movies",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
| Field | Type | Required | Description | Example |
|
||||||
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
|
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||||
| `allowSync` | *boolean* | :heavy_check_mark: | N/A | true |
|
| `allowSync` | *boolean* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
|
||||||
| `art` | *string* | :heavy_check_mark: | N/A | /:/resources/movie-fanart.jpg |
|
| `art` | *string* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg |
|
||||||
| `composite` | *string* | :heavy_check_mark: | N/A | /library/sections/1/composite/1705615584 |
|
| `composite` | *string* | :heavy_check_mark: | The relative path to the composite media item. | /library/sections/1/composite/1743824484 |
|
||||||
| `filters` | *boolean* | :heavy_check_mark: | N/A | true |
|
| `filters` | *boolean* | :heavy_check_mark: | UNKNOWN | true |
|
||||||
| `refreshing` | *boolean* | :heavy_check_mark: | N/A | false |
|
| `refreshing` | *boolean* | :heavy_check_mark: | Indicates whether the library is currently being refreshed or updated | true |
|
||||||
| `thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/movie.png |
|
| `thumb` | *string* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png |
|
||||||
| `key` | *string* | :heavy_check_mark: | N/A | 1 |
|
| `key` | *string* | :heavy_check_mark: | The library key representing the unique identifier | 1 |
|
||||||
| `type` | *string* | :heavy_check_mark: | N/A | movie |
|
| `type` | [operations.GetAllLibrariesType](../../../sdk/models/operations/getalllibrariestype.md) | :heavy_check_mark: | N/A | movie |
|
||||||
| `title` | *string* | :heavy_check_mark: | N/A | Movies |
|
| `title` | *string* | :heavy_check_mark: | The title of the library | Movies |
|
||||||
| `agent` | *string* | :heavy_check_mark: | N/A | tv.plex.agents.movie |
|
| `agent` | *string* | :heavy_check_mark: | The Plex agent used to match and retrieve media metadata. | tv.plex.agents.movie |
|
||||||
| `scanner` | *string* | :heavy_check_mark: | N/A | Plex Movie |
|
| `scanner` | *string* | :heavy_check_mark: | UNKNOWN | Plex Movie |
|
||||||
| `language` | *string* | :heavy_check_mark: | N/A | en-US |
|
| `language` | *string* | :heavy_check_mark: | The Plex library language that has been set | en-US |
|
||||||
| `uuid` | *string* | :heavy_check_mark: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 |
|
| `uuid` | *string* | :heavy_check_mark: | The universally unique identifier for the library. | e69655a2-ef48-4aba-bb19-01e7d3cc34d6 |
|
||||||
| `updatedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
| `updatedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||||
| `createdAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
| `createdAt` | *number* | :heavy_minus_sign: | N/A | 1556281940 |
|
||||||
| `scannedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
| `scannedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||||
| `content` | *boolean* | :heavy_check_mark: | N/A | true |
|
| `content` | *boolean* | :heavy_check_mark: | UNKNOWN | true |
|
||||||
| `directory` | *boolean* | :heavy_check_mark: | N/A | true |
|
| `directory` | *boolean* | :heavy_check_mark: | UNKNOWN | true |
|
||||||
| `contentChangedAt` | *number* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
| `contentChangedAt` | *number* | :heavy_check_mark: | Timestamp (in seconds) representing the last time the content was modified.<br/>NOTE: Some Plex server have some absurd values for this field, like 8457612157633039800 so it should be int64<br/> | 9173960 |
|
||||||
| `hidden` | *number* | :heavy_check_mark: | N/A | 0 |
|
| `hidden` | [operations.Hidden](../../../sdk/models/operations/hidden.md) | :heavy_minus_sign: | The Plex library visibility setting | 1 |
|
||||||
| `location` | [operations.GetAllLibrariesLocation](../../../sdk/models/operations/getalllibrarieslocation.md)[] | :heavy_check_mark: | N/A | |
|
| `location` | [operations.GetAllLibrariesLocation](../../../sdk/models/operations/getalllibrarieslocation.md)[] | :heavy_check_mark: | N/A | |
|
||||||
@@ -7,13 +7,13 @@ import { GetAllLibrariesLocation } from "@lukehagar/plexjs/sdk/models/operations
|
|||||||
|
|
||||||
let value: GetAllLibrariesLocation = {
|
let value: GetAllLibrariesLocation = {
|
||||||
id: 1,
|
id: 1,
|
||||||
path: "/movies",
|
path: "/Movies",
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
| Field | Type | Required | Description | Example |
|
||||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
| --------------------------- | --------------------------- | --------------------------- | --------------------------- | --------------------------- |
|
||||||
| `id` | *number* | :heavy_check_mark: | N/A | 1 |
|
| `id` | *number* | :heavy_check_mark: | The ID of the location. | 1 |
|
||||||
| `path` | *string* | :heavy_check_mark: | N/A | /movies |
|
| `path` | *string* | :heavy_check_mark: | The path to the media item. | /Movies |
|
||||||
@@ -3,38 +3,38 @@
|
|||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetAllLibrariesMediaContainer } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetAllLibrariesMediaContainer, GetAllLibrariesType, Hidden } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetAllLibrariesMediaContainer = {
|
let value: GetAllLibrariesMediaContainer = {
|
||||||
size: 5,
|
size: 50,
|
||||||
allowSync: false,
|
allowSync: false,
|
||||||
title1: "Plex Library",
|
title1: "TV Series",
|
||||||
directory: [
|
directory: [
|
||||||
{
|
{
|
||||||
allowSync: true,
|
allowSync: false,
|
||||||
art: "/:/resources/movie-fanart.jpg",
|
art: "/:/resources/show-fanart.jpg",
|
||||||
composite: "/library/sections/1/composite/1705615584",
|
composite: "/library/sections/1/composite/1743824484",
|
||||||
filters: true,
|
filters: true,
|
||||||
refreshing: false,
|
refreshing: true,
|
||||||
thumb: "/:/resources/movie.png",
|
thumb: "/:/resources/show.png",
|
||||||
key: "1",
|
key: "1",
|
||||||
type: "movie",
|
type: GetAllLibrariesType.Movie,
|
||||||
title: "Movies",
|
title: "Movies",
|
||||||
agent: "tv.plex.agents.movie",
|
agent: "tv.plex.agents.movie",
|
||||||
scanner: "Plex Movie",
|
scanner: "Plex Movie",
|
||||||
language: "en-US",
|
language: "en-US",
|
||||||
uuid: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
uuid: "e69655a2-ef48-4aba-bb19-01e7d3cc34d6",
|
||||||
updatedAt: 1556281940,
|
updatedAt: 1556281940,
|
||||||
createdAt: 1556281940,
|
createdAt: 1556281940,
|
||||||
scannedAt: 1556281940,
|
scannedAt: 1556281940,
|
||||||
content: true,
|
content: true,
|
||||||
directory: true,
|
directory: true,
|
||||||
contentChangedAt: 1556281940,
|
contentChangedAt: 9173960,
|
||||||
hidden: 0,
|
hidden: Hidden.ExcludeHomeScreen,
|
||||||
location: [
|
location: [
|
||||||
{
|
{
|
||||||
id: 1,
|
id: 1,
|
||||||
path: "/movies",
|
path: "/Movies",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@@ -46,7 +46,7 @@ let value: GetAllLibrariesMediaContainer = {
|
|||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
| Field | Type | Required | Description | Example |
|
||||||
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
|
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
|
||||||
| `size` | *number* | :heavy_check_mark: | N/A | 5 |
|
| `size` | *number* | :heavy_check_mark: | Number of media items returned in this response. | 50 |
|
||||||
| `allowSync` | *boolean* | :heavy_check_mark: | N/A | false |
|
| `allowSync` | *boolean* | :heavy_check_mark: | Indicates whether syncing is allowed. | false |
|
||||||
| `title1` | *string* | :heavy_check_mark: | N/A | Plex Library |
|
| `title1` | *string* | :heavy_check_mark: | The primary title of the media container. | TV Series |
|
||||||
| `directory` | [operations.GetAllLibrariesDirectory](../../../sdk/models/operations/getalllibrariesdirectory.md)[] | :heavy_check_mark: | N/A | |
|
| `directory` | [operations.GetAllLibrariesDirectory](../../../sdk/models/operations/getalllibrariesdirectory.md)[] | :heavy_minus_sign: | N/A | |
|
||||||
@@ -5,50 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetAllLibrariesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetAllLibrariesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetAllLibrariesResponse = {
|
let value: GetAllLibrariesResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 508,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 5,
|
|
||||||
allowSync: false,
|
|
||||||
title1: "Plex Library",
|
|
||||||
directory: [
|
|
||||||
{
|
|
||||||
allowSync: true,
|
|
||||||
art: "/:/resources/movie-fanart.jpg",
|
|
||||||
composite: "/library/sections/1/composite/1705615584",
|
|
||||||
filters: true,
|
|
||||||
refreshing: false,
|
|
||||||
thumb: "/:/resources/movie.png",
|
|
||||||
key: "1",
|
|
||||||
type: "movie",
|
|
||||||
title: "Movies",
|
|
||||||
agent: "tv.plex.agents.movie",
|
|
||||||
scanner: "Plex Movie",
|
|
||||||
language: "en-US",
|
|
||||||
uuid: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
|
||||||
updatedAt: 1556281940,
|
|
||||||
createdAt: 1556281940,
|
|
||||||
scannedAt: 1556281940,
|
|
||||||
content: true,
|
|
||||||
directory: true,
|
|
||||||
contentChangedAt: 1556281940,
|
|
||||||
hidden: 0,
|
|
||||||
location: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
path: "/movies",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,39 +5,39 @@ The libraries available on the Server
|
|||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetAllLibrariesResponseBody } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetAllLibrariesResponseBody, GetAllLibrariesType, Hidden } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetAllLibrariesResponseBody = {
|
let value: GetAllLibrariesResponseBody = {
|
||||||
mediaContainer: {
|
mediaContainer: {
|
||||||
size: 5,
|
size: 50,
|
||||||
allowSync: false,
|
allowSync: false,
|
||||||
title1: "Plex Library",
|
title1: "TV Series",
|
||||||
directory: [
|
directory: [
|
||||||
{
|
{
|
||||||
allowSync: true,
|
allowSync: false,
|
||||||
art: "/:/resources/movie-fanart.jpg",
|
art: "/:/resources/show-fanart.jpg",
|
||||||
composite: "/library/sections/1/composite/1705615584",
|
composite: "/library/sections/1/composite/1743824484",
|
||||||
filters: true,
|
filters: true,
|
||||||
refreshing: false,
|
refreshing: true,
|
||||||
thumb: "/:/resources/movie.png",
|
thumb: "/:/resources/show.png",
|
||||||
key: "1",
|
key: "1",
|
||||||
type: "movie",
|
type: GetAllLibrariesType.Movie,
|
||||||
title: "Movies",
|
title: "Movies",
|
||||||
agent: "tv.plex.agents.movie",
|
agent: "tv.plex.agents.movie",
|
||||||
scanner: "Plex Movie",
|
scanner: "Plex Movie",
|
||||||
language: "en-US",
|
language: "en-US",
|
||||||
uuid: "322a231a-b7f7-49f5-920f-14c61199cd30",
|
uuid: "e69655a2-ef48-4aba-bb19-01e7d3cc34d6",
|
||||||
updatedAt: 1556281940,
|
updatedAt: 1556281940,
|
||||||
createdAt: 1556281940,
|
createdAt: 1556281940,
|
||||||
scannedAt: 1556281940,
|
scannedAt: 1556281940,
|
||||||
content: true,
|
content: true,
|
||||||
directory: true,
|
directory: true,
|
||||||
contentChangedAt: 1556281940,
|
contentChangedAt: 9173960,
|
||||||
hidden: 0,
|
hidden: Hidden.ExcludeHomeScreen,
|
||||||
location: [
|
location: [
|
||||||
{
|
{
|
||||||
id: 1,
|
id: 1,
|
||||||
path: "/movies",
|
path: "/Movies",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@@ -50,4 +50,4 @@ let value: GetAllLibrariesResponseBody = {
|
|||||||
|
|
||||||
| Field | Type | Required | Description |
|
| Field | Type | Required | Description |
|
||||||
| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
|
||||||
| `mediaContainer` | [operations.GetAllLibrariesMediaContainer](../../../sdk/models/operations/getalllibrariesmediacontainer.md) | :heavy_check_mark: | N/A |
|
| `mediaContainer` | [operations.GetAllLibrariesMediaContainer](../../../sdk/models/operations/getalllibrariesmediacontainer.md) | :heavy_minus_sign: | N/A |
|
||||||
29
docs/sdk/models/operations/getalllibrariestype.md
Normal file
29
docs/sdk/models/operations/getalllibrariestype.md
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
# GetAllLibrariesType
|
||||||
|
|
||||||
|
The library type
|
||||||
|
|
||||||
|
## Example Usage
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
import { GetAllLibrariesType } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
|
let value: GetAllLibrariesType = GetAllLibrariesType.Movie;
|
||||||
|
```
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
|
||||||
|
|
||||||
|
| Name | Value |
|
||||||
|
| ---------------------- | ---------------------- |
|
||||||
|
| `Movie` | movie |
|
||||||
|
| `TvShow` | show |
|
||||||
|
| `Season` | season |
|
||||||
|
| `Episode` | episode |
|
||||||
|
| `Artist` | artist |
|
||||||
|
| `Album` | album |
|
||||||
|
| `Track` | track |
|
||||||
|
| `PhotoAlbum` | photoalbum |
|
||||||
|
| `Photo` | photo |
|
||||||
|
| `Collection` | collection |
|
||||||
|
| - | `Unrecognized<string>` |
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
# GetAllMediaLibraryDefaultDirection
|
|
||||||
|
|
||||||
The direction of the sort. Can be either `asc` or `desc`.
|
|
||||||
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryDefaultDirection } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryDefaultDirection =
|
|
||||||
GetAllMediaLibraryDefaultDirection.Ascending;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| ------------ | ------------ |
|
|
||||||
| `Ascending` | asc |
|
|
||||||
| `Descending` | desc |
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
# GetAllMediaLibraryFieldType
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryFieldType } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryFieldType = {
|
|
||||||
type: "tag",
|
|
||||||
operator: [
|
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
|
||||||
| `type` | *string* | :heavy_check_mark: | N/A | tag |
|
|
||||||
| `operator` | [operations.GetAllMediaLibraryOperator](../../../sdk/models/operations/getallmedialibraryoperator.md)[] | :heavy_check_mark: | N/A | |
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
# GetAllMediaLibraryGuids
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryGuids } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryGuids = {
|
|
||||||
id: "tvdb://2337",
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
|
|
||||||
| `id` | *string* | :heavy_minus_sign: | The unique identifier for the Guid. Can be imdb://tt0286347, tmdb://1763, tvdb://2337<br/> | tvdb://2337 |
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# GetAllMediaLibraryHasThumbnail
|
|
||||||
|
|
||||||
Indicates if the part has a thumbnail.
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryHasThumbnail } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryHasThumbnail = GetAllMediaLibraryHasThumbnail.True;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| ------- | ------- |
|
|
||||||
| `False` | 0 |
|
|
||||||
| `True` | 1 |
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
# GetAllMediaLibraryImage
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryImage, GetAllMediaLibraryLibraryResponseType } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryImage = {
|
|
||||||
alt: "Episode 1",
|
|
||||||
type: GetAllMediaLibraryLibraryResponseType.Background,
|
|
||||||
url: "/library/metadata/45521/thumb/1644710589",
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
|
|
||||||
| `alt` | *string* | :heavy_check_mark: | N/A | Episode 1 |
|
|
||||||
| `type` | [operations.GetAllMediaLibraryLibraryResponseType](../../../sdk/models/operations/getallmedialibrarylibraryresponsetype.md) | :heavy_check_mark: | N/A | background |
|
|
||||||
| `url` | *string* | :heavy_check_mark: | N/A | /library/metadata/45521/thumb/1644710589 |
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
# GetAllMediaLibraryLibraryOptimizedForStreaming
|
|
||||||
|
|
||||||
Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
|
||||||
|
|
||||||
|
|
||||||
## Supported Types
|
|
||||||
|
|
||||||
### `operations.GetAllMediaLibraryOptimizedForStreaming1`
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
const value: operations.GetAllMediaLibraryOptimizedForStreaming1 =
|
|
||||||
GetAllMediaLibraryOptimizedForStreaming1.One;
|
|
||||||
```
|
|
||||||
|
|
||||||
### `boolean`
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
const value: boolean = false;
|
|
||||||
```
|
|
||||||
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
# GetAllMediaLibraryLibraryResponseType
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryLibraryResponseType } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryLibraryResponseType =
|
|
||||||
GetAllMediaLibraryLibraryResponseType.Background;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| ------------- | ------------- |
|
|
||||||
| `CoverPoster` | coverPoster |
|
|
||||||
| `Background` | background |
|
|
||||||
| `Snapshot` | snapshot |
|
|
||||||
| `ClearLogo` | clearLogo |
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
# GetAllMediaLibraryLibraryType
|
|
||||||
|
|
||||||
The type of media content
|
|
||||||
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryLibraryType } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryLibraryType = GetAllMediaLibraryLibraryType.Movie;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| --------- | --------- |
|
|
||||||
| `Movie` | movie |
|
|
||||||
| `TvShow` | show |
|
|
||||||
| `Season` | season |
|
|
||||||
| `Episode` | episode |
|
|
||||||
| `Artist` | artist |
|
|
||||||
| `Album` | album |
|
|
||||||
@@ -1,121 +0,0 @@
|
|||||||
# GetAllMediaLibraryMedia
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryMedia } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryMedia = {
|
|
||||||
id: 387322,
|
|
||||||
duration: 9610350,
|
|
||||||
bitrate: 25512,
|
|
||||||
width: 3840,
|
|
||||||
height: 1602,
|
|
||||||
aspectRatio: 2.35,
|
|
||||||
audioChannels: 6,
|
|
||||||
displayOffset: 50,
|
|
||||||
audioCodec: "eac3",
|
|
||||||
videoCodec: "hevc",
|
|
||||||
videoResolution: "4k",
|
|
||||||
container: "mkv",
|
|
||||||
videoFrameRate: "24p",
|
|
||||||
videoProfile: "main 10",
|
|
||||||
hasVoiceActivity: false,
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
part: [
|
|
||||||
{
|
|
||||||
accessible: true,
|
|
||||||
exists: true,
|
|
||||||
id: 418385,
|
|
||||||
key: "/library/parts/418385/1735864239/file.mkv",
|
|
||||||
indexes: "sd",
|
|
||||||
duration: 9610350,
|
|
||||||
file: "/mnt/Movies_1/W/Wicked (2024).mkv",
|
|
||||||
size: 30649952104,
|
|
||||||
packetLength: 188,
|
|
||||||
container: "mkv",
|
|
||||||
videoProfile: "main 10",
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
stream: [
|
|
||||||
{
|
|
||||||
id: 1002625,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
codec: "hevc",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 24743,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
headerCompression: true,
|
|
||||||
doviblCompatID: 1,
|
|
||||||
doviblPresent: true,
|
|
||||||
dovielPresent: false,
|
|
||||||
doviLevel: 6,
|
|
||||||
doviPresent: true,
|
|
||||||
doviProfile: 8,
|
|
||||||
dovirpuPresent: true,
|
|
||||||
doviVersion: "1.0",
|
|
||||||
bitDepth: 10,
|
|
||||||
chromaLocation: "topleft",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1608,
|
|
||||||
codedWidth: 3840,
|
|
||||||
closedCaptions: true,
|
|
||||||
colorPrimaries: "bt2020",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt2020nc",
|
|
||||||
colorTrc: "smpte2084",
|
|
||||||
frameRate: 23.976,
|
|
||||||
height: 1602,
|
|
||||||
level: 150,
|
|
||||||
original: true,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
profile: "main 10",
|
|
||||||
scanType: "progressive",
|
|
||||||
embeddedInVideo: "progressive",
|
|
||||||
refFrames: 1,
|
|
||||||
width: 3840,
|
|
||||||
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
|
|
||||||
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
|
|
||||||
selected: true,
|
|
||||||
forced: true,
|
|
||||||
channels: 6,
|
|
||||||
audioChannelLayout: "5.1(side)",
|
|
||||||
samplingRate: 48000,
|
|
||||||
canAutoSync: false,
|
|
||||||
hearingImpaired: true,
|
|
||||||
dub: true,
|
|
||||||
title: "SDH",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
|
|
||||||
| `id` | *number* | :heavy_check_mark: | Unique media identifier. | 387322 |
|
|
||||||
| `duration` | *number* | :heavy_minus_sign: | Duration of the media in milliseconds. | 9610350 |
|
|
||||||
| `bitrate` | *number* | :heavy_minus_sign: | Bitrate in bits per second. | 25512 |
|
|
||||||
| `width` | *number* | :heavy_minus_sign: | Video width in pixels. | 3840 |
|
|
||||||
| `height` | *number* | :heavy_minus_sign: | Video height in pixels. | 1602 |
|
|
||||||
| `aspectRatio` | *number* | :heavy_minus_sign: | Aspect ratio of the video. | 2.35 |
|
|
||||||
| `audioChannels` | *number* | :heavy_minus_sign: | Number of audio channels. | 6 |
|
|
||||||
| `displayOffset` | *number* | :heavy_minus_sign: | N/A | 50 |
|
|
||||||
| `audioCodec` | *string* | :heavy_minus_sign: | Audio codec used. | eac3 |
|
|
||||||
| `videoCodec` | *string* | :heavy_minus_sign: | Video codec used. | hevc |
|
|
||||||
| `videoResolution` | *string* | :heavy_minus_sign: | Video resolution (e.g., 4k). | 4k |
|
|
||||||
| `container` | *string* | :heavy_minus_sign: | File container type. | mkv |
|
|
||||||
| `videoFrameRate` | *string* | :heavy_minus_sign: | Frame rate of the video. Values found include NTSC, PAL, 24p<br/> | 24p |
|
|
||||||
| `videoProfile` | *string* | :heavy_minus_sign: | Video profile (e.g., main 10). | main 10 |
|
|
||||||
| `hasVoiceActivity` | *boolean* | :heavy_minus_sign: | Indicates whether voice activity is detected. | false |
|
|
||||||
| `audioProfile` | *string* | :heavy_minus_sign: | The audio profile used for the media (e.g., DTS, Dolby Digital, etc.). | dts |
|
|
||||||
| `optimizedForStreaming` | *operations.GetAllMediaLibraryOptimizedForStreaming* | :heavy_minus_sign: | Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true | |
|
|
||||||
| `has64bitOffsets` | *boolean* | :heavy_minus_sign: | N/A | false |
|
|
||||||
| `part` | [operations.GetAllMediaLibraryPart](../../../sdk/models/operations/getallmedialibrarypart.md)[] | :heavy_minus_sign: | An array of parts for this media item. | |
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
# GetAllMediaLibraryOptimizedForStreaming1
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryOptimizedForStreaming1 } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryOptimizedForStreaming1 =
|
|
||||||
GetAllMediaLibraryOptimizedForStreaming1.One;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| ------ | ------ |
|
|
||||||
| `Zero` | 0 |
|
|
||||||
| `One` | 1 |
|
|
||||||
@@ -1,97 +0,0 @@
|
|||||||
# GetAllMediaLibraryPart
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryPart } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryPart = {
|
|
||||||
accessible: true,
|
|
||||||
exists: true,
|
|
||||||
id: 418385,
|
|
||||||
key: "/library/parts/418385/1735864239/file.mkv",
|
|
||||||
indexes: "sd",
|
|
||||||
duration: 9610350,
|
|
||||||
file: "/mnt/Movies_1/W/Wicked (2024).mkv",
|
|
||||||
size: 30649952104,
|
|
||||||
packetLength: 188,
|
|
||||||
container: "mkv",
|
|
||||||
videoProfile: "main 10",
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
stream: [
|
|
||||||
{
|
|
||||||
id: 1002625,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
codec: "hevc",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 24743,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
headerCompression: true,
|
|
||||||
doviblCompatID: 1,
|
|
||||||
doviblPresent: true,
|
|
||||||
dovielPresent: false,
|
|
||||||
doviLevel: 6,
|
|
||||||
doviPresent: true,
|
|
||||||
doviProfile: 8,
|
|
||||||
dovirpuPresent: true,
|
|
||||||
doviVersion: "1.0",
|
|
||||||
bitDepth: 10,
|
|
||||||
chromaLocation: "topleft",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1608,
|
|
||||||
codedWidth: 3840,
|
|
||||||
closedCaptions: true,
|
|
||||||
colorPrimaries: "bt2020",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt2020nc",
|
|
||||||
colorTrc: "smpte2084",
|
|
||||||
frameRate: 23.976,
|
|
||||||
height: 1602,
|
|
||||||
level: 150,
|
|
||||||
original: true,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
profile: "main 10",
|
|
||||||
scanType: "progressive",
|
|
||||||
embeddedInVideo: "progressive",
|
|
||||||
refFrames: 1,
|
|
||||||
width: 3840,
|
|
||||||
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
|
|
||||||
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
|
|
||||||
selected: true,
|
|
||||||
forced: true,
|
|
||||||
channels: 6,
|
|
||||||
audioChannelLayout: "5.1(side)",
|
|
||||||
samplingRate: 48000,
|
|
||||||
canAutoSync: false,
|
|
||||||
hearingImpaired: true,
|
|
||||||
dub: true,
|
|
||||||
title: "SDH",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
|
||||||
| `accessible` | *boolean* | :heavy_minus_sign: | Indicates if the part is accessible. | true |
|
|
||||||
| `exists` | *boolean* | :heavy_minus_sign: | Indicates if the part exists. | true |
|
|
||||||
| `id` | *number* | :heavy_check_mark: | Unique part identifier. | 418385 |
|
|
||||||
| `key` | *string* | :heavy_check_mark: | Key to access this part. | /library/parts/418385/1735864239/file.mkv |
|
|
||||||
| `indexes` | *string* | :heavy_minus_sign: | N/A | sd |
|
|
||||||
| `duration` | *number* | :heavy_minus_sign: | Duration of the part in milliseconds. | 9610350 |
|
|
||||||
| `file` | *string* | :heavy_check_mark: | File path for the part. | /mnt/Movies_1/W/Wicked (2024).mkv |
|
|
||||||
| `size` | *number* | :heavy_check_mark: | File size in bytes. | 30649952104 |
|
|
||||||
| `packetLength` | *number* | :heavy_minus_sign: | N/A | 188 |
|
|
||||||
| `container` | *string* | :heavy_minus_sign: | Container format of the part. | mkv |
|
|
||||||
| `videoProfile` | *string* | :heavy_minus_sign: | Video profile for the part. | main 10 |
|
|
||||||
| `audioProfile` | *string* | :heavy_minus_sign: | The audio profile used for the media (e.g., DTS, Dolby Digital, etc.). | dts |
|
|
||||||
| `has64bitOffsets` | *boolean* | :heavy_minus_sign: | N/A | false |
|
|
||||||
| `optimizedForStreaming` | *operations.GetAllMediaLibraryLibraryOptimizedForStreaming* | :heavy_minus_sign: | Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true | |
|
|
||||||
| `hasThumbnail` | [operations.GetAllMediaLibraryHasThumbnail](../../../sdk/models/operations/getallmedialibraryhasthumbnail.md) | :heavy_minus_sign: | N/A | 1 |
|
|
||||||
| `stream` | [operations.GetAllMediaLibraryStream](../../../sdk/models/operations/getallmedialibrarystream.md)[] | :heavy_minus_sign: | An array of streams for this part. | |
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
# GetAllMediaLibraryQueryParamIncludeMeta
|
|
||||||
|
|
||||||
Adds the Meta object to the response
|
|
||||||
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryQueryParamIncludeMeta } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryQueryParamIncludeMeta =
|
|
||||||
GetAllMediaLibraryQueryParamIncludeMeta.Enable;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| --------- | --------- |
|
|
||||||
| `Disable` | 0 |
|
|
||||||
| `Enable` | 1 |
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
# GetAllMediaLibraryQueryParamType
|
|
||||||
|
|
||||||
The type of media to retrieve or filter by.
|
|
||||||
1 = movie
|
|
||||||
2 = show
|
|
||||||
3 = season
|
|
||||||
4 = episode
|
|
||||||
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
|
|
||||||
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryQueryParamType } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryQueryParamType =
|
|
||||||
GetAllMediaLibraryQueryParamType.TvShow;
|
|
||||||
```
|
|
||||||
|
|
||||||
## Values
|
|
||||||
|
|
||||||
| Name | Value |
|
|
||||||
| --------- | --------- |
|
|
||||||
| `Movie` | 1 |
|
|
||||||
| `TvShow` | 2 |
|
|
||||||
| `Season` | 3 |
|
|
||||||
| `Episode` | 4 |
|
|
||||||
| `Audio` | 8 |
|
|
||||||
| `Album` | 9 |
|
|
||||||
| `Track` | 10 |
|
|
||||||
@@ -1,301 +0,0 @@
|
|||||||
# GetAllMediaLibraryResponse
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import {
|
|
||||||
GetAllMediaLibraryLibraryResponseType,
|
|
||||||
GetAllMediaLibraryLibraryType,
|
|
||||||
GetAllMediaLibraryResponse,
|
|
||||||
} from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryResponse = {
|
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 300,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 50,
|
|
||||||
totalSize: 50,
|
|
||||||
offset: 0,
|
|
||||||
allowSync: false,
|
|
||||||
art: "/:/resources/show-fanart.jpg",
|
|
||||||
content: "secondary",
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
librarySectionID: 2,
|
|
||||||
librarySectionTitle: "TV Series",
|
|
||||||
librarySectionUUID: "e69655a2-ef48-4aba-bb19-0cc34d1e7d36",
|
|
||||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
|
||||||
mediaTagVersion: 1734362201,
|
|
||||||
thumb: "/:/resources/show.png",
|
|
||||||
nocache: true,
|
|
||||||
title1: "TV Series",
|
|
||||||
title2: "By Starring Actor",
|
|
||||||
viewGroup: "secondary",
|
|
||||||
meta: {
|
|
||||||
type: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/2/all?type=2",
|
|
||||||
type: "filter",
|
|
||||||
subtype: "clip",
|
|
||||||
title: "TV Shows",
|
|
||||||
active: false,
|
|
||||||
filter: [
|
|
||||||
{
|
|
||||||
filter: "genre",
|
|
||||||
filterType: "string",
|
|
||||||
key: "/library/sections/2/genre?type=2",
|
|
||||||
title: "Genre",
|
|
||||||
type: "filter",
|
|
||||||
advanced: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{
|
|
||||||
default: "asc",
|
|
||||||
active: false,
|
|
||||||
descKey: "titleSort:desc",
|
|
||||||
firstCharacterKey: "/library/sections/2/firstCharacter",
|
|
||||||
key: "titleSort",
|
|
||||||
title: "Title",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
field: [
|
|
||||||
{
|
|
||||||
key: "show.title",
|
|
||||||
title: "Show Title",
|
|
||||||
type: "string",
|
|
||||||
subType: "rating",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
fieldType: [
|
|
||||||
{
|
|
||||||
type: "tag",
|
|
||||||
operator: [
|
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
metadata: [
|
|
||||||
{
|
|
||||||
ratingKey: "58683",
|
|
||||||
key: "/library/metadata/58683",
|
|
||||||
guid: "plex://movie/5d7768ba96b655001fdc0408",
|
|
||||||
slug: "4-for-texas",
|
|
||||||
studio: "20th Century Studios",
|
|
||||||
type: GetAllMediaLibraryLibraryType.Movie,
|
|
||||||
title: "Avatar: The Way of Water",
|
|
||||||
titleSort: "Whale",
|
|
||||||
contentRating: "PG-13",
|
|
||||||
summary:
|
|
||||||
"Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.\n"
|
|
||||||
+ "Once a familiar threat returns to finish what was previously started, Jake must\n"
|
|
||||||
+ "work with Neytiri and the army of the Na'vi race to protect their home.\n"
|
|
||||||
+ "",
|
|
||||||
rating: 7.6,
|
|
||||||
audienceRating: 9.2,
|
|
||||||
year: 2022,
|
|
||||||
tagline: "Return to Pandora.",
|
|
||||||
thumb: "/library/metadata/58683/thumb/1703239236",
|
|
||||||
art: "/library/metadata/58683/art/1703239236",
|
|
||||||
theme: "/library/metadata/1/theme/1705636920",
|
|
||||||
index: 1,
|
|
||||||
leafCount: 14,
|
|
||||||
viewedLeafCount: 0,
|
|
||||||
childCount: 1,
|
|
||||||
seasonCount: 2022,
|
|
||||||
duration: 11558112,
|
|
||||||
originallyAvailableAt: new RFCDate("2022-12-14"),
|
|
||||||
addedAt: 1556281940,
|
|
||||||
updatedAt: 1556281940,
|
|
||||||
audienceRatingImage: "rottentomatoes://image.rating.upright",
|
|
||||||
chapterSource: "media",
|
|
||||||
primaryExtraKey: "/library/metadata/58684",
|
|
||||||
originalTitle: "映画 ブラッククローバー 魔法帝の剣",
|
|
||||||
parentRatingKey: "66",
|
|
||||||
grandparentRatingKey: "66",
|
|
||||||
parentGuid: "plex://show/5d9c081b170e24001f2a7be4",
|
|
||||||
grandparentGuid: "plex://show/5d9c081b170e24001f2a7be4",
|
|
||||||
grandparentSlug: "alice-in-borderland-2020",
|
|
||||||
grandparentKey: "/library/metadata/66",
|
|
||||||
parentKey: "/library/metadata/66",
|
|
||||||
grandparentTitle: "Caprica",
|
|
||||||
grandparentThumb: "/library/metadata/66/thumb/1705716261",
|
|
||||||
grandparentTheme: "/library/metadata/66/theme/1705716261",
|
|
||||||
grandparentArt: "/library/metadata/66/art/1705716261",
|
|
||||||
parentTitle: "Caprica",
|
|
||||||
parentIndex: 1,
|
|
||||||
parentThumb: "/library/metadata/66/thumb/1705716261",
|
|
||||||
ratingImage: "rottentomatoes://image.rating.ripe",
|
|
||||||
viewCount: 1,
|
|
||||||
viewOffset: 5222500,
|
|
||||||
skipCount: 1,
|
|
||||||
subtype: "clip",
|
|
||||||
lastRatedAt: 1721813113,
|
|
||||||
createdAtAccuracy: "epoch,local",
|
|
||||||
createdAtTZOffset: "0",
|
|
||||||
lastViewedAt: 1682752242,
|
|
||||||
userRating: 10,
|
|
||||||
image: [
|
|
||||||
{
|
|
||||||
alt: "Episode 1",
|
|
||||||
type: GetAllMediaLibraryLibraryResponseType.Background,
|
|
||||||
url: "/library/metadata/45521/thumb/1644710589",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
ultraBlurColors: {
|
|
||||||
topLeft: "11333b",
|
|
||||||
topRight: "0a232d",
|
|
||||||
bottomRight: "73958",
|
|
||||||
bottomLeft: "1f5066",
|
|
||||||
},
|
|
||||||
media: [
|
|
||||||
{
|
|
||||||
id: 387322,
|
|
||||||
duration: 9610350,
|
|
||||||
bitrate: 25512,
|
|
||||||
width: 3840,
|
|
||||||
height: 1602,
|
|
||||||
aspectRatio: 2.35,
|
|
||||||
audioChannels: 6,
|
|
||||||
displayOffset: 50,
|
|
||||||
audioCodec: "eac3",
|
|
||||||
videoCodec: "hevc",
|
|
||||||
videoResolution: "4k",
|
|
||||||
container: "mkv",
|
|
||||||
videoFrameRate: "24p",
|
|
||||||
videoProfile: "main 10",
|
|
||||||
hasVoiceActivity: false,
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
part: [
|
|
||||||
{
|
|
||||||
accessible: true,
|
|
||||||
exists: true,
|
|
||||||
id: 418385,
|
|
||||||
key: "/library/parts/418385/1735864239/file.mkv",
|
|
||||||
indexes: "sd",
|
|
||||||
duration: 9610350,
|
|
||||||
file: "/mnt/Movies_1/W/Wicked (2024).mkv",
|
|
||||||
size: 30649952104,
|
|
||||||
packetLength: 188,
|
|
||||||
container: "mkv",
|
|
||||||
videoProfile: "main 10",
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
stream: [
|
|
||||||
{
|
|
||||||
id: 1002625,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
codec: "hevc",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 24743,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
headerCompression: true,
|
|
||||||
doviblCompatID: 1,
|
|
||||||
doviblPresent: true,
|
|
||||||
dovielPresent: false,
|
|
||||||
doviLevel: 6,
|
|
||||||
doviPresent: true,
|
|
||||||
doviProfile: 8,
|
|
||||||
dovirpuPresent: true,
|
|
||||||
doviVersion: "1.0",
|
|
||||||
bitDepth: 10,
|
|
||||||
chromaLocation: "topleft",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1608,
|
|
||||||
codedWidth: 3840,
|
|
||||||
closedCaptions: true,
|
|
||||||
colorPrimaries: "bt2020",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt2020nc",
|
|
||||||
colorTrc: "smpte2084",
|
|
||||||
frameRate: 23.976,
|
|
||||||
height: 1602,
|
|
||||||
level: 150,
|
|
||||||
original: true,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
profile: "main 10",
|
|
||||||
scanType: "progressive",
|
|
||||||
embeddedInVideo: "progressive",
|
|
||||||
refFrames: 1,
|
|
||||||
width: 3840,
|
|
||||||
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
|
|
||||||
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
|
|
||||||
selected: true,
|
|
||||||
forced: true,
|
|
||||||
channels: 6,
|
|
||||||
audioChannelLayout: "5.1(side)",
|
|
||||||
samplingRate: 48000,
|
|
||||||
canAutoSync: false,
|
|
||||||
hearingImpaired: true,
|
|
||||||
dub: true,
|
|
||||||
title: "SDH",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
genre: [
|
|
||||||
{
|
|
||||||
tag: "Crime",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
country: [
|
|
||||||
{
|
|
||||||
tag: "United States of America",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
director: [
|
|
||||||
{
|
|
||||||
tag: "Danny Boyle",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
writer: [
|
|
||||||
{
|
|
||||||
tag: "Jamie P. Hanson",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
role: [
|
|
||||||
{
|
|
||||||
tag: "Teller",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
guids: [
|
|
||||||
{
|
|
||||||
id: "tvdb://2337",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
collection: [
|
|
||||||
{
|
|
||||||
tag: "My Awesome Collection",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description |
|
|
||||||
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
|
||||||
| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
|
|
||||||
| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
|
|
||||||
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
|
|
||||||
| `object` | [operations.GetAllMediaLibraryResponseBody](../../../sdk/models/operations/getallmedialibraryresponsebody.md) | :heavy_minus_sign: | Successful response containing media container data. |
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
# GetAllMediaLibrarySort
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibrarySort } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibrarySort = {
|
|
||||||
default: "asc",
|
|
||||||
active: false,
|
|
||||||
descKey: "titleSort:desc",
|
|
||||||
firstCharacterKey: "/library/sections/2/firstCharacter",
|
|
||||||
key: "titleSort",
|
|
||||||
title: "Title",
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
|
|
||||||
| `default` | *string* | :heavy_minus_sign: | N/A | asc |
|
|
||||||
| `active` | *boolean* | :heavy_minus_sign: | N/A | false |
|
|
||||||
| `activeDirection` | [operations.GetAllMediaLibraryActiveDirection](../../../sdk/models/operations/getallmedialibraryactivedirection.md) | :heavy_minus_sign: | The direction of the sort. Can be either `asc` or `desc`.<br/> | asc |
|
|
||||||
| `defaultDirection` | [operations.GetAllMediaLibraryDefaultDirection](../../../sdk/models/operations/getallmedialibrarydefaultdirection.md) | :heavy_minus_sign: | The direction of the sort. Can be either `asc` or `desc`.<br/> | asc |
|
|
||||||
| `descKey` | *string* | :heavy_minus_sign: | N/A | titleSort:desc |
|
|
||||||
| `firstCharacterKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/2/firstCharacter |
|
|
||||||
| `key` | *string* | :heavy_check_mark: | N/A | titleSort |
|
|
||||||
| `title` | *string* | :heavy_check_mark: | N/A | Title |
|
|
||||||
@@ -1,113 +0,0 @@
|
|||||||
# GetAllMediaLibraryStream
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryStream } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryStream = {
|
|
||||||
id: 1002625,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
codec: "hevc",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 24743,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
headerCompression: true,
|
|
||||||
doviblCompatID: 1,
|
|
||||||
doviblPresent: true,
|
|
||||||
dovielPresent: false,
|
|
||||||
doviLevel: 6,
|
|
||||||
doviPresent: true,
|
|
||||||
doviProfile: 8,
|
|
||||||
dovirpuPresent: true,
|
|
||||||
doviVersion: "1.0",
|
|
||||||
bitDepth: 10,
|
|
||||||
chromaLocation: "topleft",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1608,
|
|
||||||
codedWidth: 3840,
|
|
||||||
closedCaptions: true,
|
|
||||||
colorPrimaries: "bt2020",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt2020nc",
|
|
||||||
colorTrc: "smpte2084",
|
|
||||||
frameRate: 23.976,
|
|
||||||
height: 1602,
|
|
||||||
level: 150,
|
|
||||||
original: true,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
profile: "main 10",
|
|
||||||
scanType: "progressive",
|
|
||||||
embeddedInVideo: "progressive",
|
|
||||||
refFrames: 1,
|
|
||||||
width: 3840,
|
|
||||||
displayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
|
|
||||||
extendedDisplayTitle: "4K DoVi/HDR10 (HEVC Main 10)",
|
|
||||||
selected: true,
|
|
||||||
forced: true,
|
|
||||||
channels: 6,
|
|
||||||
audioChannelLayout: "5.1(side)",
|
|
||||||
samplingRate: 48000,
|
|
||||||
canAutoSync: false,
|
|
||||||
hearingImpaired: true,
|
|
||||||
dub: true,
|
|
||||||
title: "SDH",
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
|
|
||||||
| `id` | *number* | :heavy_check_mark: | Unique stream identifier. | 1002625 |
|
|
||||||
| `streamType` | *number* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 |
|
|
||||||
| `default` | *boolean* | :heavy_minus_sign: | Indicates if this stream is default. | true |
|
|
||||||
| `codec` | *string* | :heavy_check_mark: | Codec used by the stream. | hevc |
|
|
||||||
| `index` | *number* | :heavy_check_mark: | Index of the stream. | 0 |
|
|
||||||
| `bitrate` | *number* | :heavy_minus_sign: | Bitrate of the stream. | 24743 |
|
|
||||||
| `language` | *string* | :heavy_minus_sign: | Language of the stream. | English |
|
|
||||||
| `languageTag` | *string* | :heavy_minus_sign: | Language tag (e.g., en). | en |
|
|
||||||
| `languageCode` | *string* | :heavy_minus_sign: | ISO language code. | eng |
|
|
||||||
| `headerCompression` | *boolean* | :heavy_minus_sign: | Indicates whether header compression is enabled. | true |
|
|
||||||
| `doviblCompatID` | *number* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 |
|
|
||||||
| `doviblPresent` | *boolean* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true |
|
|
||||||
| `dovielPresent` | *boolean* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false |
|
|
||||||
| `doviLevel` | *number* | :heavy_minus_sign: | Dolby Vision level. | 6 |
|
|
||||||
| `doviPresent` | *boolean* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true |
|
|
||||||
| `doviProfile` | *number* | :heavy_minus_sign: | Dolby Vision profile. | 8 |
|
|
||||||
| `dovirpuPresent` | *boolean* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true |
|
|
||||||
| `doviVersion` | *string* | :heavy_minus_sign: | Dolby Vision version. | 1.0 |
|
|
||||||
| `bitDepth` | *number* | :heavy_minus_sign: | Bit depth of the video stream. | 10 |
|
|
||||||
| `chromaLocation` | *string* | :heavy_minus_sign: | Chroma sample location. | topleft |
|
|
||||||
| `chromaSubsampling` | *string* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 |
|
|
||||||
| `codedHeight` | *number* | :heavy_minus_sign: | Coded video height. | 1608 |
|
|
||||||
| `codedWidth` | *number* | :heavy_minus_sign: | Coded video width. | 3840 |
|
|
||||||
| `closedCaptions` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `colorPrimaries` | *string* | :heavy_minus_sign: | Color primaries used. | bt2020 |
|
|
||||||
| `colorRange` | *string* | :heavy_minus_sign: | Color range (e.g., tv). | tv |
|
|
||||||
| `colorSpace` | *string* | :heavy_minus_sign: | Color space. | bt2020nc |
|
|
||||||
| `colorTrc` | *string* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 |
|
|
||||||
| `frameRate` | *number* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 |
|
|
||||||
| `height` | *number* | :heavy_minus_sign: | Height of the video stream. | 1602 |
|
|
||||||
| `level` | *number* | :heavy_minus_sign: | Video level. | 150 |
|
|
||||||
| `original` | *boolean* | :heavy_minus_sign: | Indicates if this is the original stream. | true |
|
|
||||||
| `hasScalingMatrix` | *boolean* | :heavy_minus_sign: | N/A | false |
|
|
||||||
| `profile` | *string* | :heavy_minus_sign: | Video profile. | main 10 |
|
|
||||||
| `scanType` | *string* | :heavy_minus_sign: | N/A | progressive |
|
|
||||||
| `embeddedInVideo` | *string* | :heavy_minus_sign: | N/A | progressive |
|
|
||||||
| `refFrames` | *number* | :heavy_minus_sign: | Number of reference frames. | 1 |
|
|
||||||
| `width` | *number* | :heavy_minus_sign: | Width of the video stream. | 3840 |
|
|
||||||
| `displayTitle` | *string* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
|
|
||||||
| `extendedDisplayTitle` | *string* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) |
|
|
||||||
| `selected` | *boolean* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true |
|
|
||||||
| `forced` | *boolean* | :heavy_minus_sign: | N/A | true |
|
|
||||||
| `channels` | *number* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 |
|
|
||||||
| `audioChannelLayout` | *string* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) |
|
|
||||||
| `samplingRate` | *number* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 |
|
|
||||||
| `canAutoSync` | *boolean* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false |
|
|
||||||
| `hearingImpaired` | *boolean* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true |
|
|
||||||
| `dub` | *boolean* | :heavy_minus_sign: | Indicates if the stream is a dub. | true |
|
|
||||||
| `title` | *string* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH |
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
# GetAllMediaLibraryType
|
|
||||||
|
|
||||||
## Example Usage
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
import { GetAllMediaLibraryType } from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
|
|
||||||
let value: GetAllMediaLibraryType = {
|
|
||||||
key: "/library/sections/2/all?type=2",
|
|
||||||
type: "filter",
|
|
||||||
subtype: "clip",
|
|
||||||
title: "TV Shows",
|
|
||||||
active: false,
|
|
||||||
filter: [
|
|
||||||
{
|
|
||||||
filter: "genre",
|
|
||||||
filterType: "string",
|
|
||||||
key: "/library/sections/2/genre?type=2",
|
|
||||||
title: "Genre",
|
|
||||||
type: "filter",
|
|
||||||
advanced: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{
|
|
||||||
default: "asc",
|
|
||||||
active: false,
|
|
||||||
descKey: "titleSort:desc",
|
|
||||||
firstCharacterKey: "/library/sections/2/firstCharacter",
|
|
||||||
key: "titleSort",
|
|
||||||
title: "Title",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
field: [
|
|
||||||
{
|
|
||||||
key: "show.title",
|
|
||||||
title: "Show Title",
|
|
||||||
type: "string",
|
|
||||||
subType: "rating",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
## Fields
|
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
|
||||||
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
|
|
||||||
| `key` | *string* | :heavy_check_mark: | N/A | /library/sections/2/all?type=2 |
|
|
||||||
| `type` | *string* | :heavy_check_mark: | N/A | filter |
|
|
||||||
| `subtype` | *string* | :heavy_minus_sign: | N/A | clip |
|
|
||||||
| `title` | *string* | :heavy_check_mark: | N/A | TV Shows |
|
|
||||||
| `active` | *boolean* | :heavy_check_mark: | N/A | false |
|
|
||||||
| `filter` | [operations.GetAllMediaLibraryFilter](../../../sdk/models/operations/getallmedialibraryfilter.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `sort` | [operations.GetAllMediaLibrarySort](../../../sdk/models/operations/getallmedialibrarysort.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
| `field` | [operations.GetAllMediaLibraryField](../../../sdk/models/operations/getallmedialibraryfield.md)[] | :heavy_minus_sign: | N/A | |
|
|
||||||
@@ -5,34 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetAvailableClientsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetAvailableClientsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetAvailableClientsResponse = {
|
let value: GetAvailableClientsResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 305,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 1,
|
|
||||||
server: [
|
|
||||||
{
|
|
||||||
name: "iPad",
|
|
||||||
host: "10.10.10.102",
|
|
||||||
address: "10.10.10.102",
|
|
||||||
port: 32500,
|
|
||||||
machineIdentifier: "A2E901F8-E016-43A7-ADFB-EF8CA8A4AC05",
|
|
||||||
version: "8.17",
|
|
||||||
protocol: "plex",
|
|
||||||
product: "Plex for iOS",
|
|
||||||
deviceClass: "tablet",
|
|
||||||
protocolVersion: 2,
|
|
||||||
protocolCapabilities:
|
|
||||||
"playback,playqueues,timeline,provider-playback",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,49 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetBandwidthStatisticsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetBandwidthStatisticsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetBandwidthStatisticsResponse = {
|
let value: GetBandwidthStatisticsResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 205,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 5497,
|
|
||||||
device: [
|
|
||||||
{
|
|
||||||
id: 208,
|
|
||||||
name: "Roku Express",
|
|
||||||
platform: "Roku",
|
|
||||||
clientIdentifier: "793095d235660625108ef785cc7646e9",
|
|
||||||
createdAt: 1706470556,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
account: [
|
|
||||||
{
|
|
||||||
id: 238960586,
|
|
||||||
key: "/accounts/238960586",
|
|
||||||
name: "Diane",
|
|
||||||
defaultAudioLanguage: "en",
|
|
||||||
autoSelectAudio: true,
|
|
||||||
defaultSubtitleLanguage: "en",
|
|
||||||
subtitleMode: 1,
|
|
||||||
thumb: "https://plex.tv/users/50d83634246da1de/avatar?c=1707110967",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
statisticsBandwidth: [
|
|
||||||
{
|
|
||||||
accountID: 238960586,
|
|
||||||
deviceID: 208,
|
|
||||||
timespan: 6,
|
|
||||||
at: 1718387650,
|
|
||||||
lan: true,
|
|
||||||
bytes: 22,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,26 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetButlerTasksResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetButlerTasksResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetButlerTasksResponse = {
|
let value: GetButlerTasksResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 431,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
butlerTasks: {
|
|
||||||
butlerTask: [
|
|
||||||
{
|
|
||||||
name: "BackupDatabase",
|
|
||||||
interval: 3,
|
|
||||||
title: "Backup Database",
|
|
||||||
description:
|
|
||||||
"Create a backup copy of the server's database in the configured backup directory",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,23 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetCompanionsDataResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetCompanionsDataResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetCompanionsDataResponse = {
|
let value: GetCompanionsDataResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 308,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
responseBodies: [
|
|
||||||
{
|
|
||||||
identifier: "tv.plex.sonos",
|
|
||||||
baseURL: "https://sonos.plex.tv",
|
|
||||||
title: "Sonos",
|
|
||||||
linkURL: "https://sonos.plex.tv/link",
|
|
||||||
provides: "client,player",
|
|
||||||
token: "<value>",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -19,12 +19,17 @@ let value: GetCountriesLibraryQueryParamType =
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| --------- | --------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `Movie` | 1 |
|
| `Movie` | 1 |
|
||||||
| `TvShow` | 2 |
|
| `TvShow` | 2 |
|
||||||
| `Season` | 3 |
|
| `Season` | 3 |
|
||||||
| `Episode` | 4 |
|
| `Episode` | 4 |
|
||||||
| `Audio` | 8 |
|
| `Artist` | 5 |
|
||||||
| `Album` | 9 |
|
| `Album` | 6 |
|
||||||
| `Track` | 10 |
|
| `Track` | 7 |
|
||||||
|
| `PhotoAlbum` | 8 |
|
||||||
|
| `Photo` | 9 |
|
||||||
|
| - | `Unrecognized<number>` |
|
||||||
@@ -5,36 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetCountriesLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetCountriesLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetCountriesLibraryResponse = {
|
let value: GetCountriesLibraryResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 404,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 50,
|
|
||||||
allowSync: false,
|
|
||||||
art: "/:/resources/show-fanart.jpg",
|
|
||||||
content: "secondary",
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
|
||||||
mediaTagVersion: 1734362201,
|
|
||||||
nocache: true,
|
|
||||||
thumb: "/:/resources/show.png",
|
|
||||||
title1: "TV Series",
|
|
||||||
title2: "By Starring Actor",
|
|
||||||
viewGroup: "secondary",
|
|
||||||
directory: [
|
|
||||||
{
|
|
||||||
fastKey: "/library/sections/2/all?country=15491",
|
|
||||||
key: "15491",
|
|
||||||
title: "Japan",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,27 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetDevicesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetDevicesResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetDevicesResponse = {
|
let value: GetDevicesResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 308,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 151,
|
|
||||||
identifier: "com.plexapp.system.devices",
|
|
||||||
device: [
|
|
||||||
{
|
|
||||||
id: 1,
|
|
||||||
name: "iPhone",
|
|
||||||
platform: "iOS",
|
|
||||||
createdAt: 1654131230,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,13 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetFileHashResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetFileHashResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetFileHashResponse = {
|
let value: GetFileHashResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 308,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -19,12 +19,17 @@ let value: GetGenresLibraryQueryParamType =
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| --------- | --------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `Movie` | 1 |
|
| `Movie` | 1 |
|
||||||
| `TvShow` | 2 |
|
| `TvShow` | 2 |
|
||||||
| `Season` | 3 |
|
| `Season` | 3 |
|
||||||
| `Episode` | 4 |
|
| `Episode` | 4 |
|
||||||
| `Audio` | 8 |
|
| `Artist` | 5 |
|
||||||
| `Album` | 9 |
|
| `Album` | 6 |
|
||||||
| `Track` | 10 |
|
| `Track` | 7 |
|
||||||
|
| `PhotoAlbum` | 8 |
|
||||||
|
| `Photo` | 9 |
|
||||||
|
| - | `Unrecognized<number>` |
|
||||||
@@ -5,37 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetGenresLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetGenresLibraryResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetGenresLibraryResponse = {
|
let value: GetGenresLibraryResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 101,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
size: 50,
|
|
||||||
allowSync: false,
|
|
||||||
art: "/:/resources/show-fanart.jpg",
|
|
||||||
content: "secondary",
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
mediaTagPrefix: "/system/bundle/media/flags/",
|
|
||||||
mediaTagVersion: 1734362201,
|
|
||||||
nocache: true,
|
|
||||||
thumb: "/:/resources/show.png",
|
|
||||||
title1: "TV Series",
|
|
||||||
title2: "By Starring Actor",
|
|
||||||
viewGroup: "secondary",
|
|
||||||
directory: [
|
|
||||||
{
|
|
||||||
fastKey: "/library/sections/10/all?genre=89",
|
|
||||||
key: "89",
|
|
||||||
title: "Action",
|
|
||||||
type: "genre",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -12,8 +12,11 @@ let value: GetGeoDataGeoData = {
|
|||||||
continentCode: "NA",
|
continentCode: "NA",
|
||||||
country: "United States Virgin Islands",
|
country: "United States Virgin Islands",
|
||||||
city: "Amsterdam",
|
city: "Amsterdam",
|
||||||
|
europeanUnionMember: true,
|
||||||
timeZone: "America/St_Thomas",
|
timeZone: "America/St_Thomas",
|
||||||
postalCode: "802",
|
postalCode: "802",
|
||||||
|
inPrivacyRestrictedCountry: true,
|
||||||
|
inPrivacyRestrictedRegion: true,
|
||||||
subdivisions: "Saint Thomas",
|
subdivisions: "Saint Thomas",
|
||||||
coordinates: "18.3381, -64.8941",
|
coordinates: "18.3381, -64.8941",
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -5,23 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetGeoDataResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetGeoDataResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetGeoDataResponse = {
|
let value: GetGeoDataResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 102,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
geoData: {
|
|
||||||
code: "VI",
|
|
||||||
continentCode: "NA",
|
|
||||||
country: "United States Virgin Islands",
|
|
||||||
city: "Amsterdam",
|
|
||||||
timeZone: "America/St_Thomas",
|
|
||||||
postalCode: "802",
|
|
||||||
subdivisions: "Saint Thomas",
|
|
||||||
coordinates: "18.3381, -64.8941",
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -5,57 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetGlobalHubsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetGlobalHubsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetGlobalHubsResponse = {
|
let value: GetGlobalHubsResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 423,
|
|
||||||
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
|
## Fields
|
||||||
|
|||||||
@@ -5,19 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetHomeDataResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetHomeDataResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetHomeDataResponse = {
|
let value: GetHomeDataResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 204,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
id: 1841489,
|
|
||||||
name: "Blindkitty38's home",
|
|
||||||
guestUserID: 58815432,
|
|
||||||
guestUserUUID: "f3df4e01bfca0787",
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -13,6 +13,6 @@ let value: GetLibraryDetailsRequest = {
|
|||||||
## Fields
|
## Fields
|
||||||
|
|
||||||
| Field | Type | Required | Description | Example |
|
| Field | Type | Required | Description | Example |
|
||||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| `includeDetails` | [operations.IncludeDetails](../../../sdk/models/operations/includedetails.md) | :heavy_minus_sign: | Whether or not to include details for a section (types, filters, and sorts).<br/>Only exists for backwards compatibility, media providers other than the server libraries have it on always.<br/> | |
|
| `includeDetails` | [operations.IncludeDetails](../../../sdk/models/operations/includedetails.md) | :heavy_minus_sign: | Whether or not to include details for a section (types, filters, and sorts).<br/>Only exists for backwards compatibility, media providers other than the server libraries have it on always.<br/> | |
|
||||||
| `sectionKey` | *number* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
| `sectionKey` | *number* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
||||||
@@ -5,84 +5,7 @@
|
|||||||
```typescript
|
```typescript
|
||||||
import { GetLibraryDetailsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetLibraryDetailsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetLibraryDetailsResponse = {
|
let value: GetLibraryDetailsResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 103,
|
|
||||||
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
|
## Fields
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
import { GetLibraryHubsRequest } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetLibraryHubsRequest } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetLibraryHubsRequest = {
|
let value: GetLibraryHubsRequest = {
|
||||||
sectionId: 2900.77,
|
sectionId: 7247.75,
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -4,134 +4,8 @@
|
|||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetLibraryHubsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetLibraryHubsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
|
|
||||||
|
|
||||||
let value: GetLibraryHubsResponse = {
|
let value: GetLibraryHubsResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 412,
|
|
||||||
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
|
## Fields
|
||||||
|
|||||||
@@ -7,12 +7,7 @@ import { GetLibraryItemsFieldType } from "@lukehagar/plexjs/sdk/models/operation
|
|||||||
|
|
||||||
let value: GetLibraryItemsFieldType = {
|
let value: GetLibraryItemsFieldType = {
|
||||||
type: "tag",
|
type: "tag",
|
||||||
operator: [
|
operator: [],
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -7,12 +7,7 @@ import { GetLibraryItemsLibraryFieldType } from "@lukehagar/plexjs/sdk/models/op
|
|||||||
|
|
||||||
let value: GetLibraryItemsLibraryFieldType = {
|
let value: GetLibraryItemsLibraryFieldType = {
|
||||||
type: "tag",
|
type: "tag",
|
||||||
operator: [
|
operator: [],
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -11,9 +11,12 @@ let value: GetLibraryItemsLibraryResponse200Type =
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| ------------- | ------------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `CoverPoster` | coverPoster |
|
| `CoverPoster` | coverPoster |
|
||||||
| `Background` | background |
|
| `Background` | background |
|
||||||
| `Snapshot` | snapshot |
|
| `Snapshot` | snapshot |
|
||||||
| `ClearLogo` | clearLogo |
|
| `ClearLogo` | clearLogo |
|
||||||
|
| - | `Unrecognized<string>` |
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
# GetLibraryItemsLibraryType
|
# GetLibraryItemsLibraryType
|
||||||
|
|
||||||
The type of media content
|
The type of media content in the Plex library. This can represent videos, music, or photos.
|
||||||
|
|
||||||
|
|
||||||
## Example Usage
|
## Example Usage
|
||||||
@@ -13,11 +13,18 @@ let value: GetLibraryItemsLibraryType = GetLibraryItemsLibraryType.Movie;
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| --------- | --------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `Movie` | movie |
|
| `Movie` | movie |
|
||||||
| `TvShow` | show |
|
| `TvShow` | show |
|
||||||
| `Season` | season |
|
| `Season` | season |
|
||||||
| `Episode` | episode |
|
| `Episode` | episode |
|
||||||
| `Artist` | artist |
|
| `Artist` | artist |
|
||||||
| `Album` | album |
|
| `Album` | album |
|
||||||
|
| `Track` | track |
|
||||||
|
| `PhotoAlbum` | photoalbum |
|
||||||
|
| `Photo` | photo |
|
||||||
|
| `Collection` | collection |
|
||||||
|
| - | `Unrecognized<string>` |
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetLibraryItemsMedia } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetLibraryItemsMedia, GetLibraryItemsOptimizedForStreaming } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetLibraryItemsMedia = {
|
let value: GetLibraryItemsMedia = {
|
||||||
id: 119534,
|
id: 119534,
|
||||||
@@ -21,65 +21,9 @@ let value: GetLibraryItemsMedia = {
|
|||||||
videoFrameRate: "24p",
|
videoFrameRate: "24p",
|
||||||
videoProfile: "main 10",
|
videoProfile: "main 10",
|
||||||
hasVoiceActivity: false,
|
hasVoiceActivity: false,
|
||||||
|
optimizedForStreaming: GetLibraryItemsOptimizedForStreaming.Enable,
|
||||||
has64bitOffsets: false,
|
has64bitOffsets: false,
|
||||||
part: [
|
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",
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: false,
|
|
||||||
videoProfile: "main 10",
|
|
||||||
indexes: "sd",
|
|
||||||
stream: [
|
|
||||||
{
|
|
||||||
id: 272796,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
selected: true,
|
|
||||||
codec: "h264",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 6273,
|
|
||||||
colorPrimaries: "bt709",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt709",
|
|
||||||
colorTrc: "bt709",
|
|
||||||
bitDepth: 8,
|
|
||||||
chromaLocation: "left",
|
|
||||||
streamIdentifier: "2",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1088,
|
|
||||||
codedWidth: 1920,
|
|
||||||
frameRate: 29.97,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
hearingImpaired: false,
|
|
||||||
closedCaptions: false,
|
|
||||||
embeddedInVideo: "1",
|
|
||||||
height: 1080,
|
|
||||||
level: 40,
|
|
||||||
profile: "main",
|
|
||||||
refFrames: 4,
|
|
||||||
scanType: "progressive",
|
|
||||||
width: 1920,
|
|
||||||
displayTitle: "1080p (H.264)",
|
|
||||||
extendedDisplayTitle: "1080p (H.264)",
|
|
||||||
channels: 2,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
audioChannelLayout: "stereo",
|
|
||||||
samplingRate: 48000,
|
|
||||||
title: "English",
|
|
||||||
canAutoSync: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import {
|
|||||||
GetLibraryItemsLibraryResponse200Type,
|
GetLibraryItemsLibraryResponse200Type,
|
||||||
GetLibraryItemsLibraryType,
|
GetLibraryItemsLibraryType,
|
||||||
GetLibraryItemsMediaContainer,
|
GetLibraryItemsMediaContainer,
|
||||||
|
GetLibraryItemsOptimizedForStreaming,
|
||||||
ShowOrdering,
|
ShowOrdering,
|
||||||
} from "@lukehagar/plexjs/sdk/models/operations";
|
} from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
|
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
|
||||||
@@ -58,12 +59,7 @@ let value: GetLibraryItemsMediaContainer = {
|
|||||||
fieldType: [
|
fieldType: [
|
||||||
{
|
{
|
||||||
type: "tag",
|
type: "tag",
|
||||||
operator: [
|
operator: [],
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
size: 70,
|
size: 70,
|
||||||
@@ -148,65 +144,9 @@ let value: GetLibraryItemsMediaContainer = {
|
|||||||
videoFrameRate: "24p",
|
videoFrameRate: "24p",
|
||||||
videoProfile: "main 10",
|
videoProfile: "main 10",
|
||||||
hasVoiceActivity: false,
|
hasVoiceActivity: false,
|
||||||
|
optimizedForStreaming: GetLibraryItemsOptimizedForStreaming.Enable,
|
||||||
has64bitOffsets: false,
|
has64bitOffsets: false,
|
||||||
part: [
|
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",
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: false,
|
|
||||||
videoProfile: "main 10",
|
|
||||||
indexes: "sd",
|
|
||||||
stream: [
|
|
||||||
{
|
|
||||||
id: 272796,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
selected: true,
|
|
||||||
codec: "h264",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 6273,
|
|
||||||
colorPrimaries: "bt709",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt709",
|
|
||||||
colorTrc: "bt709",
|
|
||||||
bitDepth: 8,
|
|
||||||
chromaLocation: "left",
|
|
||||||
streamIdentifier: "2",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1088,
|
|
||||||
codedWidth: 1920,
|
|
||||||
frameRate: 29.97,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
hearingImpaired: false,
|
|
||||||
closedCaptions: false,
|
|
||||||
embeddedInVideo: "1",
|
|
||||||
height: 1080,
|
|
||||||
level: 40,
|
|
||||||
profile: "main",
|
|
||||||
refFrames: 4,
|
|
||||||
scanType: "progressive",
|
|
||||||
width: 1920,
|
|
||||||
displayTitle: "1080p (H.264)",
|
|
||||||
extendedDisplayTitle: "1080p (H.264)",
|
|
||||||
channels: 2,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
audioChannelLayout: "stereo",
|
|
||||||
samplingRate: 48000,
|
|
||||||
title: "English",
|
|
||||||
canAutoSync: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
genre: [
|
genre: [
|
||||||
@@ -338,12 +278,7 @@ let value: GetLibraryItemsMediaContainer = {
|
|||||||
fieldType: [
|
fieldType: [
|
||||||
{
|
{
|
||||||
type: "tag",
|
type: "tag",
|
||||||
operator: [
|
operator: [],
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -47,12 +47,7 @@ let value: GetLibraryItemsMeta = {
|
|||||||
fieldType: [
|
fieldType: [
|
||||||
{
|
{
|
||||||
type: "tag",
|
type: "tag",
|
||||||
operator: [
|
operator: [],
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import {
|
|||||||
GetLibraryItemsLibraryResponse200Type,
|
GetLibraryItemsLibraryResponse200Type,
|
||||||
GetLibraryItemsLibraryType,
|
GetLibraryItemsLibraryType,
|
||||||
GetLibraryItemsMetadata,
|
GetLibraryItemsMetadata,
|
||||||
|
GetLibraryItemsOptimizedForStreaming,
|
||||||
ShowOrdering,
|
ShowOrdering,
|
||||||
} from "@lukehagar/plexjs/sdk/models/operations";
|
} from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
|
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
|
||||||
@@ -75,65 +76,9 @@ let value: GetLibraryItemsMetadata = {
|
|||||||
videoFrameRate: "24p",
|
videoFrameRate: "24p",
|
||||||
videoProfile: "main 10",
|
videoProfile: "main 10",
|
||||||
hasVoiceActivity: false,
|
hasVoiceActivity: false,
|
||||||
|
optimizedForStreaming: GetLibraryItemsOptimizedForStreaming.Enable,
|
||||||
has64bitOffsets: false,
|
has64bitOffsets: false,
|
||||||
part: [
|
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",
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: false,
|
|
||||||
videoProfile: "main 10",
|
|
||||||
indexes: "sd",
|
|
||||||
stream: [
|
|
||||||
{
|
|
||||||
id: 272796,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
selected: true,
|
|
||||||
codec: "h264",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 6273,
|
|
||||||
colorPrimaries: "bt709",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt709",
|
|
||||||
colorTrc: "bt709",
|
|
||||||
bitDepth: 8,
|
|
||||||
chromaLocation: "left",
|
|
||||||
streamIdentifier: "2",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1088,
|
|
||||||
codedWidth: 1920,
|
|
||||||
frameRate: 29.97,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
hearingImpaired: false,
|
|
||||||
closedCaptions: false,
|
|
||||||
embeddedInVideo: "1",
|
|
||||||
height: 1080,
|
|
||||||
level: 40,
|
|
||||||
profile: "main",
|
|
||||||
refFrames: 4,
|
|
||||||
scanType: "progressive",
|
|
||||||
width: 1920,
|
|
||||||
displayTitle: "1080p (H.264)",
|
|
||||||
extendedDisplayTitle: "1080p (H.264)",
|
|
||||||
channels: 2,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
audioChannelLayout: "stereo",
|
|
||||||
samplingRate: 48000,
|
|
||||||
title: "English",
|
|
||||||
canAutoSync: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
genre: [
|
genre: [
|
||||||
@@ -239,7 +184,7 @@ let value: GetLibraryItemsMetadata = {
|
|||||||
| `librarySectionID` | *number* | :heavy_minus_sign: | N/A | 1 |
|
| `librarySectionID` | *number* | :heavy_minus_sign: | N/A | 1 |
|
||||||
| `librarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies |
|
| `librarySectionTitle` | *string* | :heavy_minus_sign: | N/A | Movies |
|
||||||
| `librarySectionKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/1 |
|
| `librarySectionKey` | *string* | :heavy_minus_sign: | N/A | /library/sections/1 |
|
||||||
| `type` | [operations.GetLibraryItemsLibraryType](../../../sdk/models/operations/getlibraryitemslibrarytype.md) | :heavy_check_mark: | The type of media content<br/> | movie |
|
| `type` | [operations.GetLibraryItemsLibraryType](../../../sdk/models/operations/getlibraryitemslibrarytype.md) | :heavy_check_mark: | The type of media content in the Plex library. This can represent videos, music, or photos.<br/> | movie |
|
||||||
| `title` | *string* | :heavy_check_mark: | N/A | Avatar: The Way of Water |
|
| `title` | *string* | :heavy_check_mark: | N/A | Avatar: The Way of Water |
|
||||||
| `slug` | *string* | :heavy_minus_sign: | N/A | 4-for-texas |
|
| `slug` | *string* | :heavy_minus_sign: | N/A | 4-for-texas |
|
||||||
| `contentRating` | *string* | :heavy_minus_sign: | N/A | PG-13 |
|
| `contentRating` | *string* | :heavy_minus_sign: | N/A | PG-13 |
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetLibraryItemsPart } from "@lukehagar/plexjs/sdk/models/operations";
|
import { GetLibraryItemsHasThumbnail, GetLibraryItemsPart } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetLibraryItemsPart = {
|
let value: GetLibraryItemsPart = {
|
||||||
id: 119542,
|
id: 119542,
|
||||||
@@ -18,6 +18,7 @@ let value: GetLibraryItemsPart = {
|
|||||||
optimizedForStreaming: false,
|
optimizedForStreaming: false,
|
||||||
videoProfile: "main 10",
|
videoProfile: "main 10",
|
||||||
indexes: "sd",
|
indexes: "sd",
|
||||||
|
hasThumbnail: GetLibraryItemsHasThumbnail.True,
|
||||||
stream: [
|
stream: [
|
||||||
{
|
{
|
||||||
id: 272796,
|
id: 272796,
|
||||||
|
|||||||
@@ -18,12 +18,17 @@ let value: GetLibraryItemsQueryParamType = GetLibraryItemsQueryParamType.TvShow;
|
|||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
|
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
|
||||||
|
|
||||||
| Name | Value |
|
| Name | Value |
|
||||||
| --------- | --------- |
|
| ---------------------- | ---------------------- |
|
||||||
| `Movie` | 1 |
|
| `Movie` | 1 |
|
||||||
| `TvShow` | 2 |
|
| `TvShow` | 2 |
|
||||||
| `Season` | 3 |
|
| `Season` | 3 |
|
||||||
| `Episode` | 4 |
|
| `Episode` | 4 |
|
||||||
| `Audio` | 8 |
|
| `Artist` | 5 |
|
||||||
| `Album` | 9 |
|
| `Album` | 6 |
|
||||||
| `Track` | 10 |
|
| `Track` | 7 |
|
||||||
|
| `PhotoAlbum` | 8 |
|
||||||
|
| `Photo` | 9 |
|
||||||
|
| - | `Unrecognized<number>` |
|
||||||
@@ -3,12 +3,20 @@
|
|||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import { GetLibraryItemsQueryParamType, GetLibraryItemsRequest, Tag } from "@lukehagar/plexjs/sdk/models/operations";
|
import {
|
||||||
|
GetLibraryItemsQueryParamIncludeMeta,
|
||||||
|
GetLibraryItemsQueryParamType,
|
||||||
|
GetLibraryItemsRequest,
|
||||||
|
IncludeGuids,
|
||||||
|
Tag,
|
||||||
|
} from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
|
|
||||||
let value: GetLibraryItemsRequest = {
|
let value: GetLibraryItemsRequest = {
|
||||||
tag: Tag.FirstCharacter,
|
tag: Tag.OnDeck,
|
||||||
|
includeGuids: IncludeGuids.Enable,
|
||||||
type: GetLibraryItemsQueryParamType.TvShow,
|
type: GetLibraryItemsQueryParamType.TvShow,
|
||||||
sectionKey: 9518,
|
sectionKey: 9518,
|
||||||
|
includeMeta: GetLibraryItemsQueryParamIncludeMeta.Enable,
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -3,357 +3,9 @@
|
|||||||
## Example Usage
|
## Example Usage
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
import {
|
import { GetLibraryItemsResponse } from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
EnableCreditsMarkerGeneration,
|
|
||||||
EpisodeSort,
|
|
||||||
FlattenSeasons,
|
|
||||||
GetLibraryItemsLibraryResponse200Type,
|
|
||||||
GetLibraryItemsLibraryType,
|
|
||||||
GetLibraryItemsResponse,
|
|
||||||
ShowOrdering,
|
|
||||||
} from "@lukehagar/plexjs/sdk/models/operations";
|
|
||||||
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
|
|
||||||
|
|
||||||
let value: GetLibraryItemsResponse = {
|
let value: GetLibraryItemsResponse = {};
|
||||||
contentType: "<value>",
|
|
||||||
statusCode: 102,
|
|
||||||
rawResponse: new Response("{\"message\": \"hello world\"}", {
|
|
||||||
headers: { "Content-Type": "application/json" },
|
|
||||||
}),
|
|
||||||
object: {
|
|
||||||
mediaContainer: {
|
|
||||||
type: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/2/all?type=2",
|
|
||||||
type: "filter",
|
|
||||||
subtype: "clip",
|
|
||||||
title: "TV Shows",
|
|
||||||
active: false,
|
|
||||||
filter: [
|
|
||||||
{
|
|
||||||
filter: "genre",
|
|
||||||
filterType: "string",
|
|
||||||
key: "/library/sections/2/genre?type=2",
|
|
||||||
title: "Genre",
|
|
||||||
type: "filter",
|
|
||||||
advanced: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{
|
|
||||||
default: "asc",
|
|
||||||
active: false,
|
|
||||||
descKey: "titleSort:desc",
|
|
||||||
firstCharacterKey: "/library/sections/2/firstCharacter",
|
|
||||||
key: "titleSort",
|
|
||||||
title: "Title",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
field: [
|
|
||||||
{
|
|
||||||
key: "show.title",
|
|
||||||
title: "Show Title",
|
|
||||||
type: "string",
|
|
||||||
subType: "rating",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
fieldType: [
|
|
||||||
{
|
|
||||||
type: "tag",
|
|
||||||
operator: [
|
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
size: 70,
|
|
||||||
totalSize: 170,
|
|
||||||
offset: 0,
|
|
||||||
content: "secondary",
|
|
||||||
allowSync: true,
|
|
||||||
nocache: true,
|
|
||||||
art: "/:/resources/movie-fanart.jpg",
|
|
||||||
identifier: "com.plexapp.plugins.library",
|
|
||||||
librarySectionID: 1,
|
|
||||||
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",
|
|
||||||
skipChildren: false,
|
|
||||||
librarySectionID: 1,
|
|
||||||
librarySectionTitle: "Movies",
|
|
||||||
librarySectionKey: "/library/sections/1",
|
|
||||||
type: GetLibraryItemsLibraryType.Movie,
|
|
||||||
title: "Avatar: The Way of Water",
|
|
||||||
slug: "4-for-texas",
|
|
||||||
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,
|
|
||||||
seasonCount: 2022,
|
|
||||||
tagline: "Return to Pandora.",
|
|
||||||
flattenSeasons: FlattenSeasons.Show,
|
|
||||||
episodeSort: EpisodeSort.OldestFirst,
|
|
||||||
enableCreditsMarkerGeneration:
|
|
||||||
EnableCreditsMarkerGeneration.LibraryDefault,
|
|
||||||
showOrdering: ShowOrdering.TvdbAbsolute,
|
|
||||||
thumb: "/library/metadata/58683/thumb/1703239236",
|
|
||||||
art: "/library/metadata/58683/art/1703239236",
|
|
||||||
banner: "/library/metadata/58683/banner/1703239236",
|
|
||||||
duration: 11558112,
|
|
||||||
originallyAvailableAt: new RFCDate("2022-12-14T00:00:00Z"),
|
|
||||||
addedAt: 1556281940,
|
|
||||||
updatedAt: 1556281940,
|
|
||||||
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",
|
|
||||||
parentSlug: "alice-in-borderland-2020",
|
|
||||||
grandparentSlug: "alice-in-borderland-2020",
|
|
||||||
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,
|
|
||||||
audioProfile: "dts",
|
|
||||||
audioChannels: 6,
|
|
||||||
audioCodec: "eac3",
|
|
||||||
videoCodec: "hevc",
|
|
||||||
videoResolution: "4k",
|
|
||||||
container: "mkv",
|
|
||||||
videoFrameRate: "24p",
|
|
||||||
videoProfile: "main 10",
|
|
||||||
hasVoiceActivity: false,
|
|
||||||
has64bitOffsets: false,
|
|
||||||
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",
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: false,
|
|
||||||
videoProfile: "main 10",
|
|
||||||
indexes: "sd",
|
|
||||||
stream: [
|
|
||||||
{
|
|
||||||
id: 272796,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
selected: true,
|
|
||||||
codec: "h264",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 6273,
|
|
||||||
colorPrimaries: "bt709",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt709",
|
|
||||||
colorTrc: "bt709",
|
|
||||||
bitDepth: 8,
|
|
||||||
chromaLocation: "left",
|
|
||||||
streamIdentifier: "2",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1088,
|
|
||||||
codedWidth: 1920,
|
|
||||||
frameRate: 29.97,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
hearingImpaired: false,
|
|
||||||
closedCaptions: false,
|
|
||||||
embeddedInVideo: "1",
|
|
||||||
height: 1080,
|
|
||||||
level: 40,
|
|
||||||
profile: "main",
|
|
||||||
refFrames: 4,
|
|
||||||
scanType: "progressive",
|
|
||||||
width: 1920,
|
|
||||||
displayTitle: "1080p (H.264)",
|
|
||||||
extendedDisplayTitle: "1080p (H.264)",
|
|
||||||
channels: 2,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
audioChannelLayout: "stereo",
|
|
||||||
samplingRate: 48000,
|
|
||||||
title: "English",
|
|
||||||
canAutoSync: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
genre: [
|
|
||||||
{
|
|
||||||
tag: "Adventure",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
country: [
|
|
||||||
{
|
|
||||||
tag: "United States of America",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
director: [
|
|
||||||
{
|
|
||||||
tag: "James Cameron",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
writer: [
|
|
||||||
{
|
|
||||||
tag: "James Cameron",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
collection: [
|
|
||||||
{
|
|
||||||
tag: "Working NL Subs",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
role: [
|
|
||||||
{
|
|
||||||
id: 294129,
|
|
||||||
filter: "actor=294129",
|
|
||||||
thumb:
|
|
||||||
"https://metadata-static.plex.tv/2/people/27b85844536c39f3f9ac943aaad46608.jpg",
|
|
||||||
tag: "Mike Smith",
|
|
||||||
tagKey: "668e7e7b22bcad9064350c91",
|
|
||||||
role: "Self",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
location: [
|
|
||||||
{
|
|
||||||
path: "/TV Shows/House",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
mediaGuid: [
|
|
||||||
{
|
|
||||||
id: "imdb://tt13015952",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
ultraBlurColors: {
|
|
||||||
topLeft: "11333b",
|
|
||||||
topRight: "0a232d",
|
|
||||||
bottomRight: "73958",
|
|
||||||
bottomLeft: "1f5066",
|
|
||||||
},
|
|
||||||
metaDataRating: [
|
|
||||||
{
|
|
||||||
image: "themoviedb://image.rating",
|
|
||||||
value: 3,
|
|
||||||
type: "audience",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
image: [
|
|
||||||
{
|
|
||||||
alt: "Episode 1",
|
|
||||||
type: GetLibraryItemsLibraryResponse200Type.Background,
|
|
||||||
url: "/library/metadata/45521/thumb/1644710589",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
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",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
meta: {
|
|
||||||
type: [
|
|
||||||
{
|
|
||||||
key: "/library/sections/2/all?type=2",
|
|
||||||
type: "show",
|
|
||||||
title: "TV Shows",
|
|
||||||
active: false,
|
|
||||||
filter: [
|
|
||||||
{
|
|
||||||
filter: "genre",
|
|
||||||
filterType: "string",
|
|
||||||
key: "/library/sections/2/genre?type=2",
|
|
||||||
title: "Genre",
|
|
||||||
type: "filter",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{
|
|
||||||
default: "asc",
|
|
||||||
active: false,
|
|
||||||
descKey: "titleSort:desc",
|
|
||||||
firstCharacterKey: "/library/sections/2/firstCharacter",
|
|
||||||
key: "titleSort",
|
|
||||||
title: "Title",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
field: [
|
|
||||||
{
|
|
||||||
key: "show.title",
|
|
||||||
title: "Show Title",
|
|
||||||
type: "string",
|
|
||||||
subType: "rating",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
fieldType: [
|
|
||||||
{
|
|
||||||
type: "tag",
|
|
||||||
operator: [
|
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Fields
|
## Fields
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import {
|
|||||||
FlattenSeasons,
|
FlattenSeasons,
|
||||||
GetLibraryItemsLibraryResponse200Type,
|
GetLibraryItemsLibraryResponse200Type,
|
||||||
GetLibraryItemsLibraryType,
|
GetLibraryItemsLibraryType,
|
||||||
|
GetLibraryItemsOptimizedForStreaming,
|
||||||
GetLibraryItemsResponseBody,
|
GetLibraryItemsResponseBody,
|
||||||
ShowOrdering,
|
ShowOrdering,
|
||||||
} from "@lukehagar/plexjs/sdk/models/operations";
|
} from "@lukehagar/plexjs/sdk/models/operations";
|
||||||
@@ -58,12 +59,7 @@ let value: GetLibraryItemsResponseBody = {
|
|||||||
fieldType: [
|
fieldType: [
|
||||||
{
|
{
|
||||||
type: "tag",
|
type: "tag",
|
||||||
operator: [
|
operator: [],
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
size: 70,
|
size: 70,
|
||||||
@@ -148,65 +144,9 @@ let value: GetLibraryItemsResponseBody = {
|
|||||||
videoFrameRate: "24p",
|
videoFrameRate: "24p",
|
||||||
videoProfile: "main 10",
|
videoProfile: "main 10",
|
||||||
hasVoiceActivity: false,
|
hasVoiceActivity: false,
|
||||||
|
optimizedForStreaming: GetLibraryItemsOptimizedForStreaming.Enable,
|
||||||
has64bitOffsets: false,
|
has64bitOffsets: false,
|
||||||
part: [
|
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",
|
|
||||||
audioProfile: "dts",
|
|
||||||
has64bitOffsets: false,
|
|
||||||
optimizedForStreaming: false,
|
|
||||||
videoProfile: "main 10",
|
|
||||||
indexes: "sd",
|
|
||||||
stream: [
|
|
||||||
{
|
|
||||||
id: 272796,
|
|
||||||
streamType: 1,
|
|
||||||
default: true,
|
|
||||||
selected: true,
|
|
||||||
codec: "h264",
|
|
||||||
index: 0,
|
|
||||||
bitrate: 6273,
|
|
||||||
colorPrimaries: "bt709",
|
|
||||||
colorRange: "tv",
|
|
||||||
colorSpace: "bt709",
|
|
||||||
colorTrc: "bt709",
|
|
||||||
bitDepth: 8,
|
|
||||||
chromaLocation: "left",
|
|
||||||
streamIdentifier: "2",
|
|
||||||
chromaSubsampling: "4:2:0",
|
|
||||||
codedHeight: 1088,
|
|
||||||
codedWidth: 1920,
|
|
||||||
frameRate: 29.97,
|
|
||||||
hasScalingMatrix: false,
|
|
||||||
hearingImpaired: false,
|
|
||||||
closedCaptions: false,
|
|
||||||
embeddedInVideo: "1",
|
|
||||||
height: 1080,
|
|
||||||
level: 40,
|
|
||||||
profile: "main",
|
|
||||||
refFrames: 4,
|
|
||||||
scanType: "progressive",
|
|
||||||
width: 1920,
|
|
||||||
displayTitle: "1080p (H.264)",
|
|
||||||
extendedDisplayTitle: "1080p (H.264)",
|
|
||||||
channels: 2,
|
|
||||||
language: "English",
|
|
||||||
languageTag: "en",
|
|
||||||
languageCode: "eng",
|
|
||||||
audioChannelLayout: "stereo",
|
|
||||||
samplingRate: 48000,
|
|
||||||
title: "English",
|
|
||||||
canAutoSync: false,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
genre: [
|
genre: [
|
||||||
@@ -338,12 +278,7 @@ let value: GetLibraryItemsResponseBody = {
|
|||||||
fieldType: [
|
fieldType: [
|
||||||
{
|
{
|
||||||
type: "tag",
|
type: "tag",
|
||||||
operator: [
|
operator: [],
|
||||||
{
|
|
||||||
key: "=",
|
|
||||||
title: "is",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user