ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.541.2

This commit is contained in:
speakeasybot
2025-05-01 00:13:53 +00:00
parent 763aa8e800
commit 891a7d39a1
54 changed files with 2748 additions and 1630 deletions

4
.gitignore vendored
View File

@@ -1,3 +1,7 @@
.DS_Store
**/.speakeasy/temp/
**/.speakeasy/logs/
.DS_Store
/mcp-server
/bin
/.eslintcache

File diff suppressed because one or more lines are too long

View File

@@ -11,11 +11,12 @@ generation:
parameterOrderingFeb2024: true
requestResponseComponentNamesFeb2024: true
securityFeb2025: false
sharedErrorComponentsApr2025: false
auth:
oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false
typescript:
version: 0.37.0
version: 0.37.1
additionalDependencies:
dependencies: {}
devDependencies: {}

View File

@@ -1,4 +1,4 @@
speakeasyVersion: 1.535.1
speakeasyVersion: 1.541.2
sources:
my-source:
sourceNamespace: my-source
@@ -9,20 +9,20 @@ sources:
- main
plexapi:
sourceNamespace: plexapi
sourceRevisionDigest: sha256:b2f9599237ceb13cf8f9c1693e38b290177b65fb389cebf0c3c60b8ef4778615
sourceBlobDigest: sha256:f8df9ef88ada992cd981d601e6c0b45cc82db76aba3d915c2f9d08f90c81ced9
sourceRevisionDigest: sha256:31ab7b2e65ccf1e0349bcd8b35791d1ce80091313481874749163fc0c80fd8ed
sourceBlobDigest: sha256:d971fff9723c626fe70403a2a83d813c396a20b06ccd6b899263762038cfdbb0
tags:
- latest
- speakeasy-sdk-regen-1745021437
- speakeasy-sdk-regen-1746058355
- 0.0.3
targets:
plexjs:
source: plexapi
sourceNamespace: plexapi
sourceRevisionDigest: sha256:b2f9599237ceb13cf8f9c1693e38b290177b65fb389cebf0c3c60b8ef4778615
sourceBlobDigest: sha256:f8df9ef88ada992cd981d601e6c0b45cc82db76aba3d915c2f9d08f90c81ced9
sourceRevisionDigest: sha256:31ab7b2e65ccf1e0349bcd8b35791d1ce80091313481874749163fc0c80fd8ed
sourceBlobDigest: sha256:d971fff9723c626fe70403a2a83d813c396a20b06ccd6b899263762038cfdbb0
codeSamplesNamespace: code-samples-typescript-plexjs
codeSamplesRevisionDigest: sha256:86b4c9afc42dfef089cf6e9c6ad9f7df1060563fa04a7b1cdaa1f88b4c8cd902
codeSamplesRevisionDigest: sha256:a91f578e701b7e8f5859b16094a73f590cbbec59c3b81c7f8baeafbef0f3a47e
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest

View File

@@ -629,6 +629,7 @@ Certain SDK methods accept files as part of a multi-part request. It is possible
```typescript
import { PlexAPI } from "@lukehagar/plexjs";
import { openAsBlob } from "node:fs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
@@ -637,6 +638,7 @@ const plexAPI = new PlexAPI({
async function run() {
const result = await plexAPI.library.postMediaArts(
2268,
await openAsBlob("example.file"),
"https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b",
);

View File

@@ -1319,3 +1319,13 @@ Based on:
- [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 - .

View File

@@ -621,13 +621,14 @@ actions:
label: PlexJS
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { openAsBlob } from "node:fs";
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");
const result = await plexAPI.library.postMediaArts(2268, await openAsBlob("example.file"), "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
// Handle the result
console.log(result);
@@ -708,13 +709,14 @@ actions:
label: PlexJS
source: |-
import { PlexAPI } from "@lukehagar/plexjs";
import { openAsBlob } from "node:fs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.library.postMediaPoster(2268, "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
const result = await plexAPI.library.postMediaPoster(2268, await openAsBlob("example.file"), "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
// Handle the result
console.log(result);

View File

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

View File

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

View File

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

View File

@@ -3,7 +3,7 @@
## Example Usage
```typescript
import { GetAllMediaLibraryMedia } from "@lukehagar/plexjs/sdk/models/operations";
import { GetAllMediaLibraryMedia, GetAllMediaLibraryStreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryMedia = {
id: 387322,
@@ -41,7 +41,8 @@ let value: GetAllMediaLibraryMedia = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetAllMediaLibraryStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -69,6 +70,7 @@ let value: GetAllMediaLibraryMedia = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -7,6 +7,7 @@ import {
GetAllMediaLibraryLibraryResponseType,
GetAllMediaLibraryLibraryType,
GetAllMediaLibraryMediaContainer,
GetAllMediaLibraryStreamType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
@@ -188,7 +189,8 @@ let value: GetAllMediaLibraryMediaContainer = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetAllMediaLibraryStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -216,6 +218,7 @@ let value: GetAllMediaLibraryMediaContainer = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -10,6 +10,7 @@ import {
GetAllMediaLibraryLibraryResponseType,
GetAllMediaLibraryLibraryType,
GetAllMediaLibraryMetadata,
GetAllMediaLibraryStreamType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
@@ -122,7 +123,8 @@ let value: GetAllMediaLibraryMetadata = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetAllMediaLibraryStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -150,6 +152,7 @@ let value: GetAllMediaLibraryMetadata = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -3,7 +3,7 @@
## Example Usage
```typescript
import { GetAllMediaLibraryPart } from "@lukehagar/plexjs/sdk/models/operations";
import { GetAllMediaLibraryPart, GetAllMediaLibraryStreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryPart = {
accessible: true,
@@ -22,7 +22,8 @@ let value: GetAllMediaLibraryPart = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetAllMediaLibraryStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -50,6 +51,7 @@ let value: GetAllMediaLibraryPart = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -7,6 +7,7 @@ import {
GetAllMediaLibraryLibraryResponseType,
GetAllMediaLibraryLibraryType,
GetAllMediaLibraryResponse,
GetAllMediaLibraryStreamType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
@@ -195,7 +196,8 @@ let value: GetAllMediaLibraryResponse = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetAllMediaLibraryStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -223,6 +225,7 @@ let value: GetAllMediaLibraryResponse = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -9,6 +9,7 @@ import {
GetAllMediaLibraryLibraryResponseType,
GetAllMediaLibraryLibraryType,
GetAllMediaLibraryResponseBody,
GetAllMediaLibraryStreamType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
@@ -191,7 +192,8 @@ let value: GetAllMediaLibraryResponseBody = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetAllMediaLibraryStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -219,6 +221,7 @@ let value: GetAllMediaLibraryResponseBody = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -3,11 +3,12 @@
## Example Usage
```typescript
import { GetAllMediaLibraryStream } from "@lukehagar/plexjs/sdk/models/operations";
import { GetAllMediaLibraryStream, GetAllMediaLibraryStreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryStream = {
id: 1002625,
streamType: 1,
streamType: GetAllMediaLibraryStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -35,6 +36,7 @@ let value: GetAllMediaLibraryStream = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,
@@ -61,12 +63,13 @@ let value: GetAllMediaLibraryStream = {
## 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 |
| `streamType` | [operations.GetAllMediaLibraryStreamType](../../../sdk/models/operations/getallmedialibrarystreamtype.md) | :heavy_check_mark: | Stream type:<br/> - 1 = video<br/> - 2 = audio<br/> - 3 = subtitle<br/> | 1 |
| `format` | *string* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
| `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 |
| `index` | *number* | :heavy_minus_sign: | 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 |
@@ -91,6 +94,7 @@ let value: GetAllMediaLibraryStream = {
| `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 |
| `key` | *string* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
| `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 |

View File

@@ -0,0 +1,26 @@
# GetAllMediaLibraryStreamType
Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
## Example Usage
```typescript
import { GetAllMediaLibraryStreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetAllMediaLibraryStreamType = GetAllMediaLibraryStreamType.Video;
```
## Values
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
| Name | Value |
| ---------------------- | ---------------------- |
| `Video` | 1 |
| `Audio` | 2 |
| `Subtitle` | 3 |
| - | `Unrecognized<number>` |

View File

@@ -1,21 +1,23 @@
# GetMediaMetaDataCountry
The filter query string for country media items.
## Example Usage
```typescript
import { GetMediaMetaDataCountry } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataCountry = {
id: 58591,
filter: "country=58591",
id: 259,
tag: "United States of America",
filter: "country=19",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- |
| `id` | *number* | :heavy_check_mark: | The unique country identifier. | 58591 |
| `filter` | *string* | :heavy_check_mark: | The filter string for the country. | country=58591 |
| `tag` | *string* | :heavy_check_mark: | The country name. | United States of America |
| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- |
| `id` | *number* | :heavy_check_mark: | N/A | 259 |
| `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 |

View File

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

View File

@@ -1,21 +1,23 @@
# GetMediaMetaDataGenre
The filter query string for similar items.
## Example Usage
```typescript
import { GetMediaMetaDataGenre } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataGenre = {
id: 1057,
filter: "genre=1057",
id: 259,
tag: "Crime",
filter: "genre=19",
};
```
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- |
| `id` | *number* | :heavy_check_mark: | The unique genre identifier. | 1057 |
| `filter` | *string* | :heavy_check_mark: | The filter string for the genre. | genre=1057 |
| `tag` | *string* | :heavy_check_mark: | The genre name. | Crime |
| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- |
| `id` | *number* | :heavy_check_mark: | N/A | 259 |
| `tag` | *string* | :heavy_check_mark: | The genre name of this media-item<br/> | Crime |
| `filter` | *string* | :heavy_check_mark: | N/A | genre=19 |

View File

@@ -3,19 +3,19 @@
## Example Usage
```typescript
import { GetMediaMetaDataImage } from "@lukehagar/plexjs/sdk/models/operations";
import { GetMediaMetaDataImage, GetMediaMetaDataLibraryType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataImage = {
alt: "Better Call Saul",
type: "coverPoster",
url: "/library/metadata/44288/thumb/1736487993",
alt: "Episode 1",
type: GetMediaMetaDataLibraryType.Background,
url: "/library/metadata/45521/thumb/1644710589",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- |
| `alt` | *string* | :heavy_check_mark: | Alternate text for the image. | Better Call Saul |
| `type` | *string* | :heavy_check_mark: | The type of image (e.g., coverPoster, background, clearLogo). | coverPoster |
| `url` | *string* | :heavy_check_mark: | The URL of the image. | /library/metadata/44288/thumb/1736487993 |
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `alt` | *string* | :heavy_check_mark: | N/A | Episode 1 |
| `type` | [operations.GetMediaMetaDataLibraryType](../../../sdk/models/operations/getmediametadatalibrarytype.md) | :heavy_check_mark: | N/A | background |
| `url` | *string* | :heavy_check_mark: | N/A | /library/metadata/45521/thumb/1644710589 |

View File

@@ -0,0 +1,21 @@
# GetMediaMetaDataLibraryType
## Example Usage
```typescript
import { GetMediaMetaDataLibraryType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataLibraryType = GetMediaMetaDataLibraryType.Background;
```
## Values
This is an open enum. Unrecognized values will be captured as the `Unrecognized<string>` branded type.
| Name | Value |
| ---------------------- | ---------------------- |
| `CoverPoster` | coverPoster |
| `Background` | background |
| `Snapshot` | snapshot |
| `ClearLogo` | clearLogo |
| - | `Unrecognized<string>` |

View File

@@ -3,7 +3,7 @@
## Example Usage
```typescript
import { GetMediaMetaDataMedia } from "@lukehagar/plexjs/sdk/models/operations";
import { GetMediaMetaDataMedia, GetMediaMetaDataStreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataMedia = {
id: 387322,
@@ -41,7 +41,8 @@ let value: GetMediaMetaDataMedia = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetMediaMetaDataStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -69,6 +70,7 @@ let value: GetMediaMetaDataMedia = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -3,7 +3,12 @@
## Example Usage
```typescript
import { GetMediaMetaDataMediaContainer } from "@lukehagar/plexjs/sdk/models/operations";
import {
GetMediaMetaDataLibraryType,
GetMediaMetaDataMediaContainer,
GetMediaMetaDataStreamType,
GetMediaMetaDataType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
let value: GetMediaMetaDataMediaContainer = {
@@ -17,55 +22,80 @@ let value: GetMediaMetaDataMediaContainer = {
mediaTagVersion: 1734362201,
metadata: [
{
ratingKey: "44288",
parentRatingKey: "48047",
grandparentRatingKey: "45520",
parentGuid: "plex://season/618b89208dde18df707ad15c",
grandparentGuid: "plex://show/5e16253691c20300412003a8",
grandparentSlug: "alice-in-borderland-2020",
grandparentKey: "/library/metadata/45520",
parentKey: "/library/metadata/48047",
key: "/library/metadata/44288/children",
guid: "plex://show/5d9c08254eefaa001f5d6dcb",
slug: "better-call-saul",
studio: "Sony Pictures Television",
type: "show",
title: "Better Call Saul",
originalTitle: "Wicked: Part I",
librarySectionTitle: "TV Series ",
librarySectionID: 2,
librarySectionKey: "/library/sections/2",
contentRating: "TV-MA",
ratingKey: "58683",
key: "/library/metadata/58683",
guid: "plex://movie/5d7768ba96b655001fdc0408",
slug: "4-for-texas",
studio: "20th Century Studios",
type: GetMediaMetaDataType.Movie,
title: "Avatar: The Way of Water",
titleSort: "Whale",
contentRating: "PG-13",
summary:
"Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to \"Breaking Bad\" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman.",
"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,
grandparentTitle: "Alice in Borderland",
parentTitle: "Season 2",
audienceRating: 8.7,
viewCount: 4,
skipCount: 1,
lastViewedAt: 1625764795,
year: 2015,
rating: 6,
ratingImage: "rottentomatoes://image.rating.ripe",
tagline: "Make the call",
chapterSource: "media",
primaryExtraKey: "/library/metadata/134704",
thumb: "/library/metadata/44288/thumb/1736487993",
art: "/library/metadata/44288/art/1736487993",
theme: "/library/metadata/44288/theme/1736487993",
duration: 2700000,
originallyAvailableAt: new RFCDate("2015-02-08"),
leafCount: 63,
viewedLeafCount: 4,
childCount: 6,
leafCount: 14,
viewedLeafCount: 0,
childCount: 1,
seasonCount: 2022,
duration: 11558112,
originallyAvailableAt: new RFCDate("2022-12-14"),
addedAt: 1556281940,
updatedAt: 1556281940,
audienceRatingImage: "themoviedb://image.rating",
parentIndex: 2,
parentThumb: "/library/metadata/48047/thumb/1671800243",
grandparentThumb: "/library/metadata/45520/thumb/1736488003",
grandparentArt: "/library/metadata/45520/art/1736488003",
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: GetMediaMetaDataLibraryType.Background,
url: "/library/metadata/45521/thumb/1644710589",
},
],
ultraBlurColors: {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
},
librarySectionID: 1,
librarySectionTitle: "Movies",
librarySectionKey: "/library/sections/1",
media: [
{
id: 387322,
@@ -103,7 +133,8 @@ let value: GetMediaMetaDataMediaContainer = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetMediaMetaDataStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -131,6 +162,7 @@ let value: GetMediaMetaDataMediaContainer = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,
@@ -157,31 +189,60 @@ let value: GetMediaMetaDataMediaContainer = {
],
},
],
image: [
{
alt: "Better Call Saul",
type: "coverPoster",
url: "/library/metadata/44288/thumb/1736487993",
},
],
ultraBlurColors: {
topLeft: "11333a",
topRight: "1d2721",
bottomRight: "5c451d",
bottomLeft: "372c10",
},
genre: [
{
id: 1057,
filter: "genre=1057",
id: 259,
tag: "Crime",
filter: "genre=19",
},
],
country: [
{
id: 58591,
filter: "country=58591",
id: 259,
tag: "United States of America",
filter: "country=19",
},
],
director: [
{
id: 126522,
tag: "Danny Boyle",
filter: "director=235876",
tagKey: "5d776831151a60001f24d031",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
},
],
writer: [
{
id: 126522,
tag: "Jamie P. Hanson",
filter: "writer=126522",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
tagKey: "5d77683d85719b001f3a535e",
},
],
producer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
role: [
{
id: 126522,
tag: "Teller",
role: "Self - Judge",
filter: "actor=126522",
tagKey: "5d77683d85719b001f3a535e",
thumb:
"https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg",
},
],
guids: [
@@ -196,50 +257,6 @@ let value: GetMediaMetaDataMediaContainer = {
type: "audience",
},
],
role: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
director: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
writer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
producer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
similar: [
{
id: 26,
@@ -252,6 +269,32 @@ let value: GetMediaMetaDataMediaContainer = {
path: "/TV Shows/Better Call Saul",
},
],
chapter: [
{
id: 4,
filter: "thumb=4",
index: 1,
startTimeOffset: 0,
endTimeOffset: 100100,
thumb: "/library/media/46883/chapterImages/1",
},
],
marker: [
{
id: 306970,
type: "credits",
startTimeOffset: 4176050,
endTimeOffset: 4393389,
final: true,
attributes: {
id: 306970,
version: 4,
},
},
],
extras: {
size: 1,
},
},
],
};

View File

@@ -1,61 +1,94 @@
# GetMediaMetaDataMetadata
Unknown
## Example Usage
```typescript
import { GetMediaMetaDataMetadata } from "@lukehagar/plexjs/sdk/models/operations";
import {
GetMediaMetaDataLibraryType,
GetMediaMetaDataMetadata,
GetMediaMetaDataStreamType,
GetMediaMetaDataType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
let value: GetMediaMetaDataMetadata = {
ratingKey: "44288",
parentRatingKey: "48047",
grandparentRatingKey: "45520",
parentGuid: "plex://season/618b89208dde18df707ad15c",
grandparentGuid: "plex://show/5e16253691c20300412003a8",
grandparentSlug: "alice-in-borderland-2020",
grandparentKey: "/library/metadata/45520",
parentKey: "/library/metadata/48047",
key: "/library/metadata/44288/children",
guid: "plex://show/5d9c08254eefaa001f5d6dcb",
slug: "better-call-saul",
studio: "Sony Pictures Television",
type: "show",
title: "Better Call Saul",
originalTitle: "Wicked: Part I",
librarySectionTitle: "TV Series ",
librarySectionID: 2,
librarySectionKey: "/library/sections/2",
contentRating: "TV-MA",
ratingKey: "58683",
key: "/library/metadata/58683",
guid: "plex://movie/5d7768ba96b655001fdc0408",
slug: "4-for-texas",
studio: "20th Century Studios",
type: GetMediaMetaDataType.Movie,
title: "Avatar: The Way of Water",
titleSort: "Whale",
contentRating: "PG-13",
summary:
"Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to \"Breaking Bad\" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman.",
"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,
grandparentTitle: "Alice in Borderland",
parentTitle: "Season 2",
audienceRating: 8.7,
viewCount: 4,
skipCount: 1,
lastViewedAt: 1625764795,
year: 2015,
rating: 6,
ratingImage: "rottentomatoes://image.rating.ripe",
tagline: "Make the call",
chapterSource: "media",
primaryExtraKey: "/library/metadata/134704",
thumb: "/library/metadata/44288/thumb/1736487993",
art: "/library/metadata/44288/art/1736487993",
theme: "/library/metadata/44288/theme/1736487993",
duration: 2700000,
originallyAvailableAt: new RFCDate("2015-02-08"),
leafCount: 63,
viewedLeafCount: 4,
childCount: 6,
leafCount: 14,
viewedLeafCount: 0,
childCount: 1,
seasonCount: 2022,
duration: 11558112,
originallyAvailableAt: new RFCDate("2022-12-14"),
addedAt: 1556281940,
updatedAt: 1556281940,
audienceRatingImage: "themoviedb://image.rating",
parentIndex: 2,
parentThumb: "/library/metadata/48047/thumb/1671800243",
grandparentThumb: "/library/metadata/45520/thumb/1736488003",
grandparentArt: "/library/metadata/45520/art/1736488003",
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: GetMediaMetaDataLibraryType.Background,
url: "/library/metadata/45521/thumb/1644710589",
},
],
ultraBlurColors: {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
},
librarySectionID: 1,
librarySectionTitle: "Movies",
librarySectionKey: "/library/sections/1",
media: [
{
id: 387322,
@@ -93,7 +126,8 @@ let value: GetMediaMetaDataMetadata = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetMediaMetaDataStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -121,6 +155,7 @@ let value: GetMediaMetaDataMetadata = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,
@@ -147,31 +182,60 @@ let value: GetMediaMetaDataMetadata = {
],
},
],
image: [
{
alt: "Better Call Saul",
type: "coverPoster",
url: "/library/metadata/44288/thumb/1736487993",
},
],
ultraBlurColors: {
topLeft: "11333a",
topRight: "1d2721",
bottomRight: "5c451d",
bottomLeft: "372c10",
},
genre: [
{
id: 1057,
filter: "genre=1057",
id: 259,
tag: "Crime",
filter: "genre=19",
},
],
country: [
{
id: 58591,
filter: "country=58591",
id: 259,
tag: "United States of America",
filter: "country=19",
},
],
director: [
{
id: 126522,
tag: "Danny Boyle",
filter: "director=235876",
tagKey: "5d776831151a60001f24d031",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
},
],
writer: [
{
id: 126522,
tag: "Jamie P. Hanson",
filter: "writer=126522",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
tagKey: "5d77683d85719b001f3a535e",
},
],
producer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
role: [
{
id: 126522,
tag: "Teller",
role: "Self - Judge",
filter: "actor=126522",
tagKey: "5d77683d85719b001f3a535e",
thumb:
"https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg",
},
],
guids: [
@@ -186,50 +250,6 @@ let value: GetMediaMetaDataMetadata = {
type: "audience",
},
],
role: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
director: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
writer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
producer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
similar: [
{
id: 26,
@@ -242,71 +262,109 @@ let value: GetMediaMetaDataMetadata = {
path: "/TV Shows/Better Call Saul",
},
],
chapter: [
{
id: 4,
filter: "thumb=4",
index: 1,
startTimeOffset: 0,
endTimeOffset: 100100,
thumb: "/library/media/46883/chapterImages/1",
},
],
marker: [
{
id: 306970,
type: "credits",
startTimeOffset: 4176050,
endTimeOffset: 4393389,
final: true,
attributes: {
id: 306970,
version: 4,
},
},
],
extras: {
size: 1,
},
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ratingKey` | *string* | :heavy_check_mark: | The rating key of the metadata item. | 44288 |
| `parentRatingKey` | *string* | :heavy_minus_sign: | The rating key of the parent of this metadata item. | 48047 |
| `grandparentRatingKey` | *string* | :heavy_minus_sign: | The rating key of the grandparent of this metadata item. | 45520 |
| `parentGuid` | *string* | :heavy_minus_sign: | A GUID identifying the parent entity (e.g., season) for the item. | plex://season/618b89208dde18df707ad15c |
| `grandparentGuid` | *string* | :heavy_minus_sign: | A GUID identifying the grandparent entity (e.g., show). | plex://show/5e16253691c20300412003a8 |
| `grandparentSlug` | *string* | :heavy_minus_sign: | A URL-friendly identifier (slug) for the grandparent entity. | alice-in-borderland-2020 |
| `grandparentKey` | *string* | :heavy_minus_sign: | A key identifying the grandparent metadata in the library. | /library/metadata/45520 |
| `parentKey` | *string* | :heavy_minus_sign: | A key identifying the parent metadata in the library. | /library/metadata/48047 |
| `key` | *string* | :heavy_check_mark: | The API key to access metadata details. | /library/metadata/44288/children |
| `guid` | *string* | :heavy_check_mark: | The globally unique identifier for the item. | plex://show/5d9c08254eefaa001f5d6dcb |
| `slug` | *string* | :heavy_minus_sign: | A URL-friendly identifier for the item. | better-call-saul |
| `studio` | *string* | :heavy_minus_sign: | The studio that produced the content. | Sony Pictures Television |
| `type` | *string* | :heavy_check_mark: | The type of content (e.g., show, movie). | show |
| `title` | *string* | :heavy_check_mark: | The title of the content. | Better Call Saul |
| `originalTitle` | *string* | :heavy_minus_sign: | The original title of the content. | Wicked: Part I |
| `librarySectionTitle` | *string* | :heavy_check_mark: | The title of the library section. | TV Series |
| `librarySectionID` | *number* | :heavy_check_mark: | The ID of the library section. | 2 |
| `librarySectionKey` | *string* | :heavy_check_mark: | The key of the library section. | /library/sections/2 |
| `contentRating` | *string* | :heavy_minus_sign: | The content rating (e.g., TV-MA). | TV-MA |
| `summary` | *string* | :heavy_check_mark: | A summary of the content. | Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to "Breaking Bad" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman. |
| `index` | *number* | :heavy_minus_sign: | The index or order of the item. | 1 |
| `grandparentTitle` | *string* | :heavy_minus_sign: | The title of the grandparent entity (typically the show's title). | Alice in Borderland |
| `parentTitle` | *string* | :heavy_minus_sign: | The title of the parent entity (typically the season's title). | Season 2 |
| `audienceRating` | *number* | :heavy_minus_sign: | The audience rating for the content. | 8.7 |
| `viewCount` | *number* | :heavy_minus_sign: | The number of times the item has been viewed. | 4 |
| `skipCount` | *number* | :heavy_minus_sign: | The number of times the item has been skipped. | 1 |
| `lastViewedAt` | *number* | :heavy_minus_sign: | Unix timestamp of when the item was last viewed. | 1625764795 |
| `year` | *number* | :heavy_check_mark: | The release year. | 2015 |
| `rating` | *number* | :heavy_minus_sign: | The general rating | 6 |
| `ratingImage` | *string* | :heavy_minus_sign: | The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image). | rottentomatoes://image.rating.ripe |
| `tagline` | *string* | :heavy_minus_sign: | The tagline of the content. | Make the call |
| `chapterSource` | *string* | :heavy_minus_sign: | N/A | media |
| `primaryExtraKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/134704 |
| `thumb` | *string* | :heavy_check_mark: | URL of the thumbnail image. | /library/metadata/44288/thumb/1736487993 |
| `art` | *string* | :heavy_check_mark: | URL of the art image. | /library/metadata/44288/art/1736487993 |
| `theme` | *string* | :heavy_minus_sign: | URL of the theme image. | /library/metadata/44288/theme/1736487993 |
| `duration` | *number* | :heavy_check_mark: | Duration of the content in milliseconds. | 2700000 |
| `originallyAvailableAt` | [RFCDate](../../../types/rfcdate.md) | :heavy_minus_sign: | The original release date. | 2015-02-08 |
| `leafCount` | *number* | :heavy_minus_sign: | The total number of episodes (or leaves). | 63 |
| `viewedLeafCount` | *number* | :heavy_minus_sign: | The number of episodes that have been viewed. | 4 |
| `childCount` | *number* | :heavy_minus_sign: | The number of child items. | 6 |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ratingKey` | *string* | :heavy_check_mark: | The rating key (Media ID) of this media item. Note: Although this is always an integer, it is represented as a string in the API. | 58683 |
| `key` | *string* | :heavy_check_mark: | The unique key for the media item. | /library/metadata/58683 |
| `guid` | *string* | :heavy_check_mark: | The globally unique identifier for the media item. | plex://movie/5d7768ba96b655001fdc0408 |
| `slug` | *string* | :heavy_check_mark: | A URLfriendly version of the media title. | 4-for-texas |
| `studio` | *string* | :heavy_minus_sign: | The studio that produced the media item. | 20th Century Studios |
| `type` | [operations.GetMediaMetaDataType](../../../sdk/models/operations/getmediametadatatype.md) | :heavy_check_mark: | N/A | movie |
| `title` | *string* | :heavy_check_mark: | The title of the media item. | Avatar: The Way of Water |
| `titleSort` | *string* | :heavy_check_mark: | The sort title used for ordering media items. | Whale |
| `contentRating` | *string* | :heavy_minus_sign: | The content rating for the media item. | PG-13 |
| `summary` | *string* | :heavy_check_mark: | A synopsis of the media item. | Jake Sully lives with his newfound family formed on the extrasolar moon Pandora.<br/>Once a familiar threat returns to finish what was previously started, Jake must<br/>work with Neytiri and the army of the Na'vi race to protect their home.<br/> |
| `rating` | *number* | :heavy_check_mark: | The critic rating for the media item. | 7.6 |
| `audienceRating` | *number* | :heavy_check_mark: | The audience rating for the media item. | 9.2 |
| `year` | *number* | :heavy_minus_sign: | The release year of the media item. | 2022 |
| `tagline` | *string* | :heavy_check_mark: | A brief tagline for the media item. | Return to Pandora. |
| `thumb` | *string* | :heavy_check_mark: | The thumbnail image URL for the media item. | /library/metadata/58683/thumb/1703239236 |
| `art` | *string* | :heavy_check_mark: | The art image URL for the media item. | /library/metadata/58683/art/1703239236 |
| `theme` | *string* | :heavy_check_mark: | The theme URL for the media item. | /library/metadata/1/theme/1705636920 |
| `index` | *number* | :heavy_check_mark: | The index position of the media item. | 1 |
| `leafCount` | *number* | :heavy_minus_sign: | The number of leaf items (end nodes) under this media item. | 14 |
| `viewedLeafCount` | *number* | :heavy_minus_sign: | The number of leaf items that have been viewed. | 0 |
| `childCount` | *number* | :heavy_check_mark: | The number of child items associated with this media item. | 1 |
| `seasonCount` | *number* | :heavy_check_mark: | The total number of seasons (for TV shows). | 2022 |
| `duration` | *number* | :heavy_check_mark: | The duration of the media item in milliseconds. | 11558112 |
| `originallyAvailableAt` | [RFCDate](../../../types/rfcdate.md) | :heavy_check_mark: | The original release date of the media item. | 2022-12-14 |
| `addedAt` | *number* | :heavy_check_mark: | N/A | 1556281940 |
| `updatedAt` | *number* | :heavy_check_mark: | N/A | 1556281940 |
| `audienceRatingImage` | *string* | :heavy_minus_sign: | The URL for the audience rating image. | themoviedb://image.rating |
| `parentIndex` | *number* | :heavy_minus_sign: | The index number of the parent entity, which could indicate its order or position. | 2 |
| `parentThumb` | *string* | :heavy_minus_sign: | The URL of the parent's thumbnail image. | /library/metadata/48047/thumb/1671800243 |
| `grandparentThumb` | *string* | :heavy_minus_sign: | The URL of the grandparent's thumbnail image. | /library/metadata/45520/thumb/1736488003 |
| `grandparentArt` | *string* | :heavy_minus_sign: | The URL of the grandparent's art image. | /library/metadata/45520/art/1736488003 |
| `updatedAt` | *number* | :heavy_minus_sign: | Unix epoch datetime in seconds | 1556281940 |
| `audienceRatingImage` | *string* | :heavy_minus_sign: | The URL for the audience rating image. | rottentomatoes://image.rating.upright |
| `chapterSource` | *string* | :heavy_minus_sign: | The source from which chapter data is derived. | media |
| `primaryExtraKey` | *string* | :heavy_minus_sign: | The primary extra key associated with this media item. | /library/metadata/58684 |
| `originalTitle` | *string* | :heavy_minus_sign: | The original title of the media item (if different). | 映画 ブラッククローバー 魔法帝の剣 |
| `parentRatingKey` | *string* | :heavy_minus_sign: | The rating key of the parent media item. | 66 |
| `grandparentRatingKey` | *string* | :heavy_minus_sign: | The rating key of the grandparent media item. | 66 |
| `parentGuid` | *string* | :heavy_minus_sign: | The GUID of the parent media item. | plex://show/5d9c081b170e24001f2a7be4 |
| `grandparentGuid` | *string* | :heavy_minus_sign: | The GUID of the grandparent media item. | plex://show/5d9c081b170e24001f2a7be4 |
| `grandparentSlug` | *string* | :heavy_minus_sign: | The slug for the grandparent media item. | alice-in-borderland-2020 |
| `grandparentKey` | *string* | :heavy_minus_sign: | The key of the grandparent media item. | /library/metadata/66 |
| `parentKey` | *string* | :heavy_minus_sign: | The key of the parent media item. | /library/metadata/66 |
| `grandparentTitle` | *string* | :heavy_minus_sign: | The title of the grandparent media item. | Caprica |
| `grandparentThumb` | *string* | :heavy_minus_sign: | The thumbnail URL for the grandparent media item. | /library/metadata/66/thumb/1705716261 |
| `grandparentTheme` | *string* | :heavy_minus_sign: | The theme URL for the grandparent media item. | /library/metadata/66/theme/1705716261 |
| `grandparentArt` | *string* | :heavy_minus_sign: | The art URL for the grandparent media item. | /library/metadata/66/art/1705716261 |
| `parentTitle` | *string* | :heavy_minus_sign: | The title of the parent media item. | Caprica |
| `parentIndex` | *number* | :heavy_minus_sign: | The index position of the parent media item. | 1 |
| `parentThumb` | *string* | :heavy_minus_sign: | The thumbnail URL for the parent media item. | /library/metadata/66/thumb/1705716261 |
| `ratingImage` | *string* | :heavy_minus_sign: | The URL for the rating image. | rottentomatoes://image.rating.ripe |
| `viewCount` | *number* | :heavy_minus_sign: | The number of times this media item has been viewed. | 1 |
| `viewOffset` | *number* | :heavy_minus_sign: | The current playback offset (in milliseconds). | 5222500 |
| `skipCount` | *number* | :heavy_minus_sign: | The number of times this media item has been skipped. | 1 |
| `subtype` | *string* | :heavy_minus_sign: | A classification that further describes the type of media item. For example, 'clip' indicates that the item is a short video clip. | clip |
| `lastRatedAt` | *number* | :heavy_minus_sign: | The Unix timestamp representing the last time the item was rated. | 1721813113 |
| `createdAtAccuracy` | *string* | :heavy_minus_sign: | The accuracy of the creation timestamp. This value indicates the format(s) provided (for example, 'epoch,local' means both epoch and local time formats are available). | epoch,local |
| `createdAtTZOffset` | *string* | :heavy_minus_sign: | The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC. | 0 |
| `lastViewedAt` | *number* | :heavy_minus_sign: | Unix timestamp for when the media item was last viewed. | 1682752242 |
| `userRating` | *number* | :heavy_minus_sign: | The rating provided by a user for the item. This value is expressed as a decimal number. | 10 |
| `image` | [operations.GetMediaMetaDataImage](../../../sdk/models/operations/getmediametadataimage.md)[] | :heavy_minus_sign: | N/A | |
| `ultraBlurColors` | [operations.GetMediaMetaDataUltraBlurColors](../../../sdk/models/operations/getmediametadataultrablurcolors.md) | :heavy_minus_sign: | N/A | |
| `librarySectionID` | *number* | :heavy_check_mark: | The identifier for the library section. | 1 |
| `librarySectionTitle` | *string* | :heavy_check_mark: | The title of the library section. | Movies |
| `librarySectionKey` | *string* | :heavy_check_mark: | The key corresponding to the library section. | /library/sections/1 |
| `media` | [operations.GetMediaMetaDataMedia](../../../sdk/models/operations/getmediametadatamedia.md)[] | :heavy_minus_sign: | N/A | |
| `image` | [operations.GetMediaMetaDataImage](../../../sdk/models/operations/getmediametadataimage.md)[] | :heavy_check_mark: | An array of image objects. | |
| `ultraBlurColors` | [operations.GetMediaMetaDataUltraBlurColors](../../../sdk/models/operations/getmediametadataultrablurcolors.md) | :heavy_check_mark: | N/A | |
| `genre` | [operations.GetMediaMetaDataGenre](../../../sdk/models/operations/getmediametadatagenre.md)[] | :heavy_minus_sign: | An array of genre tags. | |
| `country` | [operations.GetMediaMetaDataCountry](../../../sdk/models/operations/getmediametadatacountry.md)[] | :heavy_minus_sign: | An array of country tags. | |
| `guids` | [operations.GetMediaMetaDataGuids](../../../sdk/models/operations/getmediametadataguids.md)[] | :heavy_minus_sign: | An array of GUID objects. | |
| `ratings` | [operations.Ratings](../../../sdk/models/operations/ratings.md)[] | :heavy_minus_sign: | An array of rating objects. | |
| `role` | [operations.GetMediaMetaDataRole](../../../sdk/models/operations/getmediametadatarole.md)[] | :heavy_minus_sign: | An array of Actor roles. | |
| `director` | [operations.GetMediaMetaDataDirector](../../../sdk/models/operations/getmediametadatadirector.md)[] | :heavy_minus_sign: | An array of Director roles. | |
| `writer` | [operations.GetMediaMetaDataWriter](../../../sdk/models/operations/getmediametadatawriter.md)[] | :heavy_minus_sign: | An array of Writer roles. | |
| `producer` | [operations.GetMediaMetaDataProducer](../../../sdk/models/operations/getmediametadataproducer.md)[] | :heavy_minus_sign: | An array of Writer roles. | |
| `similar` | [operations.GetMediaMetaDataSimilar](../../../sdk/models/operations/getmediametadatasimilar.md)[] | :heavy_minus_sign: | An array of similar content objects. | |
| `location` | [operations.GetMediaMetaDataLocation](../../../sdk/models/operations/getmediametadatalocation.md)[] | :heavy_minus_sign: | An array of location objects. | |
| `genre` | [operations.GetMediaMetaDataGenre](../../../sdk/models/operations/getmediametadatagenre.md)[] | :heavy_minus_sign: | N/A | |
| `country` | [operations.GetMediaMetaDataCountry](../../../sdk/models/operations/getmediametadatacountry.md)[] | :heavy_minus_sign: | N/A | |
| `director` | [operations.GetMediaMetaDataDirector](../../../sdk/models/operations/getmediametadatadirector.md)[] | :heavy_minus_sign: | N/A | |
| `writer` | [operations.GetMediaMetaDataWriter](../../../sdk/models/operations/getmediametadatawriter.md)[] | :heavy_minus_sign: | N/A | |
| `producer` | [operations.GetMediaMetaDataProducer](../../../sdk/models/operations/getmediametadataproducer.md)[] | :heavy_minus_sign: | N/A | |
| `role` | [operations.GetMediaMetaDataRole](../../../sdk/models/operations/getmediametadatarole.md)[] | :heavy_minus_sign: | N/A | |
| `guids` | [operations.GetMediaMetaDataGuids](../../../sdk/models/operations/getmediametadataguids.md)[] | :heavy_minus_sign: | N/A | |
| `ratings` | [operations.Ratings](../../../sdk/models/operations/ratings.md)[] | :heavy_minus_sign: | N/A | |
| `similar` | [operations.GetMediaMetaDataSimilar](../../../sdk/models/operations/getmediametadatasimilar.md)[] | :heavy_minus_sign: | N/A | |
| `location` | [operations.GetMediaMetaDataLocation](../../../sdk/models/operations/getmediametadatalocation.md)[] | :heavy_minus_sign: | N/A | |
| `chapter` | [operations.Chapter](../../../sdk/models/operations/chapter.md)[] | :heavy_minus_sign: | N/A | |
| `marker` | [operations.Marker](../../../sdk/models/operations/marker.md)[] | :heavy_minus_sign: | N/A | |
| `extras` | [operations.Extras](../../../sdk/models/operations/extras.md) | :heavy_minus_sign: | N/A | |

View File

@@ -3,7 +3,7 @@
## Example Usage
```typescript
import { GetMediaMetaDataPart } from "@lukehagar/plexjs/sdk/models/operations";
import { GetMediaMetaDataPart, GetMediaMetaDataStreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataPart = {
accessible: true,
@@ -22,7 +22,8 @@ let value: GetMediaMetaDataPart = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetMediaMetaDataStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -50,6 +51,7 @@ let value: GetMediaMetaDataPart = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -3,7 +3,12 @@
## Example Usage
```typescript
import { GetMediaMetaDataResponse } from "@lukehagar/plexjs/sdk/models/operations";
import {
GetMediaMetaDataLibraryType,
GetMediaMetaDataResponse,
GetMediaMetaDataStreamType,
GetMediaMetaDataType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
let value: GetMediaMetaDataResponse = {
@@ -24,55 +29,80 @@ let value: GetMediaMetaDataResponse = {
mediaTagVersion: 1734362201,
metadata: [
{
ratingKey: "44288",
parentRatingKey: "48047",
grandparentRatingKey: "45520",
parentGuid: "plex://season/618b89208dde18df707ad15c",
grandparentGuid: "plex://show/5e16253691c20300412003a8",
grandparentSlug: "alice-in-borderland-2020",
grandparentKey: "/library/metadata/45520",
parentKey: "/library/metadata/48047",
key: "/library/metadata/44288/children",
guid: "plex://show/5d9c08254eefaa001f5d6dcb",
slug: "better-call-saul",
studio: "Sony Pictures Television",
type: "show",
title: "Better Call Saul",
originalTitle: "Wicked: Part I",
librarySectionTitle: "TV Series ",
librarySectionID: 2,
librarySectionKey: "/library/sections/2",
contentRating: "TV-MA",
ratingKey: "58683",
key: "/library/metadata/58683",
guid: "plex://movie/5d7768ba96b655001fdc0408",
slug: "4-for-texas",
studio: "20th Century Studios",
type: GetMediaMetaDataType.Movie,
title: "Avatar: The Way of Water",
titleSort: "Whale",
contentRating: "PG-13",
summary:
"Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to \"Breaking Bad\" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman.",
"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,
grandparentTitle: "Alice in Borderland",
parentTitle: "Season 2",
audienceRating: 8.7,
viewCount: 4,
skipCount: 1,
lastViewedAt: 1625764795,
year: 2015,
rating: 6,
ratingImage: "rottentomatoes://image.rating.ripe",
tagline: "Make the call",
chapterSource: "media",
primaryExtraKey: "/library/metadata/134704",
thumb: "/library/metadata/44288/thumb/1736487993",
art: "/library/metadata/44288/art/1736487993",
theme: "/library/metadata/44288/theme/1736487993",
duration: 2700000,
originallyAvailableAt: new RFCDate("2015-02-08"),
leafCount: 63,
viewedLeafCount: 4,
childCount: 6,
leafCount: 14,
viewedLeafCount: 0,
childCount: 1,
seasonCount: 2022,
duration: 11558112,
originallyAvailableAt: new RFCDate("2022-12-14"),
addedAt: 1556281940,
updatedAt: 1556281940,
audienceRatingImage: "themoviedb://image.rating",
parentIndex: 2,
parentThumb: "/library/metadata/48047/thumb/1671800243",
grandparentThumb: "/library/metadata/45520/thumb/1736488003",
grandparentArt: "/library/metadata/45520/art/1736488003",
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: GetMediaMetaDataLibraryType.Background,
url: "/library/metadata/45521/thumb/1644710589",
},
],
ultraBlurColors: {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
},
librarySectionID: 1,
librarySectionTitle: "Movies",
librarySectionKey: "/library/sections/1",
media: [
{
id: 387322,
@@ -110,7 +140,8 @@ let value: GetMediaMetaDataResponse = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetMediaMetaDataStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -138,6 +169,7 @@ let value: GetMediaMetaDataResponse = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,
@@ -164,31 +196,60 @@ let value: GetMediaMetaDataResponse = {
],
},
],
image: [
{
alt: "Better Call Saul",
type: "coverPoster",
url: "/library/metadata/44288/thumb/1736487993",
},
],
ultraBlurColors: {
topLeft: "11333a",
topRight: "1d2721",
bottomRight: "5c451d",
bottomLeft: "372c10",
},
genre: [
{
id: 1057,
filter: "genre=1057",
id: 259,
tag: "Crime",
filter: "genre=19",
},
],
country: [
{
id: 58591,
filter: "country=58591",
id: 259,
tag: "United States of America",
filter: "country=19",
},
],
director: [
{
id: 126522,
tag: "Danny Boyle",
filter: "director=235876",
tagKey: "5d776831151a60001f24d031",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
},
],
writer: [
{
id: 126522,
tag: "Jamie P. Hanson",
filter: "writer=126522",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
tagKey: "5d77683d85719b001f3a535e",
},
],
producer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
role: [
{
id: 126522,
tag: "Teller",
role: "Self - Judge",
filter: "actor=126522",
tagKey: "5d77683d85719b001f3a535e",
thumb:
"https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg",
},
],
guids: [
@@ -203,50 +264,6 @@ let value: GetMediaMetaDataResponse = {
type: "audience",
},
],
role: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
director: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
writer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
producer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
similar: [
{
id: 26,
@@ -259,6 +276,32 @@ let value: GetMediaMetaDataResponse = {
path: "/TV Shows/Better Call Saul",
},
],
chapter: [
{
id: 4,
filter: "thumb=4",
index: 1,
startTimeOffset: 0,
endTimeOffset: 100100,
thumb: "/library/media/46883/chapterImages/1",
},
],
marker: [
{
id: 306970,
type: "credits",
startTimeOffset: 4176050,
endTimeOffset: 4393389,
final: true,
attributes: {
id: 306970,
version: 4,
},
},
],
extras: {
size: 1,
},
},
],
},

View File

@@ -5,7 +5,12 @@ The metadata of the library item.
## Example Usage
```typescript
import { GetMediaMetaDataResponseBody } from "@lukehagar/plexjs/sdk/models/operations";
import {
GetMediaMetaDataLibraryType,
GetMediaMetaDataResponseBody,
GetMediaMetaDataStreamType,
GetMediaMetaDataType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
let value: GetMediaMetaDataResponseBody = {
@@ -20,55 +25,80 @@ let value: GetMediaMetaDataResponseBody = {
mediaTagVersion: 1734362201,
metadata: [
{
ratingKey: "44288",
parentRatingKey: "48047",
grandparentRatingKey: "45520",
parentGuid: "plex://season/618b89208dde18df707ad15c",
grandparentGuid: "plex://show/5e16253691c20300412003a8",
grandparentSlug: "alice-in-borderland-2020",
grandparentKey: "/library/metadata/45520",
parentKey: "/library/metadata/48047",
key: "/library/metadata/44288/children",
guid: "plex://show/5d9c08254eefaa001f5d6dcb",
slug: "better-call-saul",
studio: "Sony Pictures Television",
type: "show",
title: "Better Call Saul",
originalTitle: "Wicked: Part I",
librarySectionTitle: "TV Series ",
librarySectionID: 2,
librarySectionKey: "/library/sections/2",
contentRating: "TV-MA",
ratingKey: "58683",
key: "/library/metadata/58683",
guid: "plex://movie/5d7768ba96b655001fdc0408",
slug: "4-for-texas",
studio: "20th Century Studios",
type: GetMediaMetaDataType.Movie,
title: "Avatar: The Way of Water",
titleSort: "Whale",
contentRating: "PG-13",
summary:
"Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to \"Breaking Bad\" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman.",
"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,
grandparentTitle: "Alice in Borderland",
parentTitle: "Season 2",
audienceRating: 8.7,
viewCount: 4,
skipCount: 1,
lastViewedAt: 1625764795,
year: 2015,
rating: 6,
ratingImage: "rottentomatoes://image.rating.ripe",
tagline: "Make the call",
chapterSource: "media",
primaryExtraKey: "/library/metadata/134704",
thumb: "/library/metadata/44288/thumb/1736487993",
art: "/library/metadata/44288/art/1736487993",
theme: "/library/metadata/44288/theme/1736487993",
duration: 2700000,
originallyAvailableAt: new RFCDate("2015-02-08"),
leafCount: 63,
viewedLeafCount: 4,
childCount: 6,
leafCount: 14,
viewedLeafCount: 0,
childCount: 1,
seasonCount: 2022,
duration: 11558112,
originallyAvailableAt: new RFCDate("2022-12-14"),
addedAt: 1556281940,
updatedAt: 1556281940,
audienceRatingImage: "themoviedb://image.rating",
parentIndex: 2,
parentThumb: "/library/metadata/48047/thumb/1671800243",
grandparentThumb: "/library/metadata/45520/thumb/1736488003",
grandparentArt: "/library/metadata/45520/art/1736488003",
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: GetMediaMetaDataLibraryType.Background,
url: "/library/metadata/45521/thumb/1644710589",
},
],
ultraBlurColors: {
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
},
librarySectionID: 1,
librarySectionTitle: "Movies",
librarySectionKey: "/library/sections/1",
media: [
{
id: 387322,
@@ -106,7 +136,8 @@ let value: GetMediaMetaDataResponseBody = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: GetMediaMetaDataStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -134,6 +165,7 @@ let value: GetMediaMetaDataResponseBody = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,
@@ -160,31 +192,60 @@ let value: GetMediaMetaDataResponseBody = {
],
},
],
image: [
{
alt: "Better Call Saul",
type: "coverPoster",
url: "/library/metadata/44288/thumb/1736487993",
},
],
ultraBlurColors: {
topLeft: "11333a",
topRight: "1d2721",
bottomRight: "5c451d",
bottomLeft: "372c10",
},
genre: [
{
id: 1057,
filter: "genre=1057",
id: 259,
tag: "Crime",
filter: "genre=19",
},
],
country: [
{
id: 58591,
filter: "country=58591",
id: 259,
tag: "United States of America",
filter: "country=19",
},
],
director: [
{
id: 126522,
tag: "Danny Boyle",
filter: "director=235876",
tagKey: "5d776831151a60001f24d031",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
},
],
writer: [
{
id: 126522,
tag: "Jamie P. Hanson",
filter: "writer=126522",
thumb:
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
tagKey: "5d77683d85719b001f3a535e",
},
],
producer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
role: [
{
id: 126522,
tag: "Teller",
role: "Self - Judge",
filter: "actor=126522",
tagKey: "5d77683d85719b001f3a535e",
thumb:
"https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg",
},
],
guids: [
@@ -199,50 +260,6 @@ let value: GetMediaMetaDataResponseBody = {
type: "audience",
},
],
role: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
director: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
writer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
producer: [
{
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
},
],
similar: [
{
id: 26,
@@ -255,6 +272,32 @@ let value: GetMediaMetaDataResponseBody = {
path: "/TV Shows/Better Call Saul",
},
],
chapter: [
{
id: 4,
filter: "thumb=4",
index: 1,
startTimeOffset: 0,
endTimeOffset: 100100,
thumb: "/library/media/46883/chapterImages/1",
},
],
marker: [
{
id: 306970,
type: "credits",
startTimeOffset: 4176050,
endTimeOffset: 4393389,
final: true,
attributes: {
id: 306970,
version: 4,
},
},
],
extras: {
size: 1,
},
},
],
},

View File

@@ -6,23 +6,23 @@
import { GetMediaMetaDataRole } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataRole = {
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
id: 126522,
tag: "Teller",
role: "Self - Judge",
filter: "actor=126522",
tagKey: "5d77683d85719b001f3a535e",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
"https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| `id` | *number* | :heavy_check_mark: | The unique role identifier. | 109501 |
| `filter` | *string* | :heavy_check_mark: | The filter string for the role. | actor=109501 |
| `tag` | *string* | :heavy_check_mark: | The actor's name. | Bob Odenkirk |
| `tagKey` | *string* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 |
| `role` | *string* | :heavy_minus_sign: | The character name or role. | Jimmy McGill |
| `thumb` | *string* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg |
| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| `id` | *number* | :heavy_check_mark: | Unique identifier for the actor or role. | 126522 |
| `tag` | *string* | :heavy_check_mark: | The display tag for the actor (typically the actor's name). | Teller |
| `role` | *string* | :heavy_minus_sign: | The role played by the actor in the media item. | Self - Judge |
| `filter` | *string* | :heavy_check_mark: | The filter string used to query this actor. For example, it may indicate that this is an actor with a given key. | actor=126522 |
| `tagKey` | *string* | :heavy_minus_sign: | A unique key associated with the actor's tag, used for internal identification. | 5d77683d85719b001f3a535e |
| `thumb` | *string* | :heavy_minus_sign: | The URL of the thumbnail image for the actor. | https://metadata-static.plex.tv/7/people/708568fd018d7aa8b1032dcf867747e8.jpg |

View File

@@ -3,11 +3,12 @@
## Example Usage
```typescript
import { GetMediaMetaDataStream } from "@lukehagar/plexjs/sdk/models/operations";
import { GetMediaMetaDataStream, GetMediaMetaDataStreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataStream = {
id: 1002625,
streamType: 1,
streamType: GetMediaMetaDataStreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -35,6 +36,7 @@ let value: GetMediaMetaDataStream = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,
@@ -61,12 +63,13 @@ let value: GetMediaMetaDataStream = {
## 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 |
| `streamType` | [operations.GetMediaMetaDataStreamType](../../../sdk/models/operations/getmediametadatastreamtype.md) | :heavy_check_mark: | Stream type:<br/> - 1 = video<br/> - 2 = audio<br/> - 3 = subtitle<br/> | 1 |
| `format` | *string* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
| `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 |
| `index` | *number* | :heavy_minus_sign: | 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 |
@@ -91,6 +94,7 @@ let value: GetMediaMetaDataStream = {
| `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 |
| `key` | *string* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
| `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 |

View File

@@ -0,0 +1,26 @@
# GetMediaMetaDataStreamType
Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
## Example Usage
```typescript
import { GetMediaMetaDataStreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataStreamType = GetMediaMetaDataStreamType.Video;
```
## Values
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
| Name | Value |
| ---------------------- | ---------------------- |
| `Video` | 1 |
| `Audio` | 2 |
| `Subtitle` | 3 |
| - | `Unrecognized<number>` |

View File

@@ -0,0 +1,26 @@
# GetMediaMetaDataType
The type of media content
## Example Usage
```typescript
import { GetMediaMetaDataType } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataType = GetMediaMetaDataType.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 |
| - | `Unrecognized<string>` |

View File

@@ -6,18 +6,18 @@
import { GetMediaMetaDataUltraBlurColors } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataUltraBlurColors = {
topLeft: "11333a",
topRight: "1d2721",
bottomRight: "5c451d",
bottomLeft: "372c10",
topLeft: "11333b",
topRight: "0a232d",
bottomRight: "73958",
bottomLeft: "1f5066",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- |
| `topLeft` | *string* | :heavy_check_mark: | The top-left color value. | 11333a |
| `topRight` | *string* | :heavy_check_mark: | The top-right color value. | 1d2721 |
| `bottomRight` | *string* | :heavy_check_mark: | The bottom-right color value. | 5c451d |
| `bottomLeft` | *string* | :heavy_check_mark: | The bottom-left color value. | 372c10 |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `topLeft` | *string* | :heavy_check_mark: | N/A | 11333b |
| `topRight` | *string* | :heavy_check_mark: | N/A | 0a232d |
| `bottomRight` | *string* | :heavy_check_mark: | N/A | 73958 |
| `bottomLeft` | *string* | :heavy_check_mark: | N/A | 1f5066 |

View File

@@ -6,23 +6,21 @@
import { GetMediaMetaDataWriter } from "@lukehagar/plexjs/sdk/models/operations";
let value: GetMediaMetaDataWriter = {
id: 109501,
filter: "actor=109501",
tag: "Bob Odenkirk",
tagKey: "5d77683254f42c001f8c3f69",
role: "Jimmy McGill",
id: 126522,
tag: "Jamie P. Hanson",
filter: "writer=126522",
thumb:
"https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg",
"https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg",
tagKey: "5d77683d85719b001f3a535e",
};
```
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| `id` | *number* | :heavy_check_mark: | The unique role identifier. | 109501 |
| `filter` | *string* | :heavy_check_mark: | The filter string for the role. | actor=109501 |
| `tag` | *string* | :heavy_check_mark: | The actor's name. | Bob Odenkirk |
| `tagKey` | *string* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 |
| `role` | *string* | :heavy_minus_sign: | The character name or role. | Jimmy McGill |
| `thumb` | *string* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg |
| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `id` | *number* | :heavy_check_mark: | Unique identifier for the writer. | 126522 |
| `tag` | *string* | :heavy_check_mark: | The role of Writer | Jamie P. Hanson |
| `filter` | *string* | :heavy_check_mark: | The filter string used to query this writer. | writer=126522 |
| `thumb` | *string* | :heavy_minus_sign: | The URL of the thumbnail image for the writer. | https://metadata-static.plex.tv/8/people/8d65fa96804802e08f2de09fe014408e.jpg |
| `tagKey` | *string* | :heavy_minus_sign: | A unique key associated with the writers tag, used for internal identification. | 5d77683d85719b001f3a535e |

View File

@@ -7,6 +7,7 @@ import {
GetRecentlyAddedHubsResponseType,
GetRecentlyAddedHubsType,
GetRecentlyAddedMediaContainer,
StreamType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
@@ -183,7 +184,8 @@ let value: GetRecentlyAddedMediaContainer = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: StreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -211,6 +213,7 @@ let value: GetRecentlyAddedMediaContainer = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -10,6 +10,7 @@ import {
GetRecentlyAddedHubsResponseType,
GetRecentlyAddedHubsType,
GetRecentlyAddedMetadata,
StreamType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
@@ -129,7 +130,8 @@ let value: GetRecentlyAddedMetadata = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: StreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -157,6 +159,7 @@ let value: GetRecentlyAddedMetadata = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -7,6 +7,7 @@ import {
GetRecentlyAddedHubsResponseType,
GetRecentlyAddedHubsType,
GetRecentlyAddedResponse,
StreamType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
@@ -190,7 +191,8 @@ let value: GetRecentlyAddedResponse = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: StreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -218,6 +220,7 @@ let value: GetRecentlyAddedResponse = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -9,6 +9,7 @@ import {
GetRecentlyAddedHubsResponseType,
GetRecentlyAddedHubsType,
GetRecentlyAddedResponseBody,
StreamType,
} from "@lukehagar/plexjs/sdk/models/operations";
import { RFCDate } from "@lukehagar/plexjs/sdk/types";
@@ -186,7 +187,8 @@ let value: GetRecentlyAddedResponseBody = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: StreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -214,6 +216,7 @@ let value: GetRecentlyAddedResponseBody = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -0,0 +1,32 @@
# Marker
The final status of the marker
## Example Usage
```typescript
import { Marker } from "@lukehagar/plexjs/sdk/models/operations";
let value: Marker = {
id: 306970,
type: "credits",
startTimeOffset: 4176050,
endTimeOffset: 4393389,
final: true,
attributes: {
id: 306970,
version: 4,
},
};
```
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `id` | *number* | :heavy_check_mark: | N/A | 306970 |
| `type` | *string* | :heavy_check_mark: | N/A | credits |
| `startTimeOffset` | *number* | :heavy_check_mark: | N/A | 4176050 |
| `endTimeOffset` | *number* | :heavy_check_mark: | N/A | 4393389 |
| `final` | *boolean* | :heavy_minus_sign: | N/A | true |
| `attributes` | [operations.Attributes](../../../sdk/models/operations/attributes.md) | :heavy_minus_sign: | Attributes associated with the marker. | |

View File

@@ -3,7 +3,7 @@
## Example Usage
```typescript
import { Media } from "@lukehagar/plexjs/sdk/models/operations";
import { Media, StreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: Media = {
id: 387322,
@@ -41,7 +41,8 @@ let value: Media = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: StreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -69,6 +70,7 @@ let value: Media = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -3,7 +3,7 @@
## Example Usage
```typescript
import { Part } from "@lukehagar/plexjs/sdk/models/operations";
import { Part, StreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: Part = {
accessible: true,
@@ -22,7 +22,8 @@ let value: Part = {
stream: [
{
id: 1002625,
streamType: 1,
streamType: StreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -50,6 +51,7 @@ let value: Part = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,

View File

@@ -3,11 +3,12 @@
## Example Usage
```typescript
import { Stream } from "@lukehagar/plexjs/sdk/models/operations";
import { Stream, StreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: Stream = {
id: 1002625,
streamType: 1,
streamType: StreamType.Video,
format: "srt",
default: true,
codec: "hevc",
index: 0,
@@ -35,6 +36,7 @@ let value: Stream = {
colorSpace: "bt2020nc",
colorTrc: "smpte2084",
frameRate: 23.976,
key: "/library/streams/216389",
height: 1602,
level: 150,
original: true,
@@ -61,12 +63,13 @@ let value: Stream = {
## 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 |
| `streamType` | [operations.StreamType](../../../sdk/models/operations/streamtype.md) | :heavy_check_mark: | Stream type:<br/> - 1 = video<br/> - 2 = audio<br/> - 3 = subtitle<br/> | 1 |
| `format` | *string* | :heavy_minus_sign: | Format of the stream (e.g., srt). | srt |
| `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 |
| `index` | *number* | :heavy_minus_sign: | 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 |
@@ -91,6 +94,7 @@ let value: Stream = {
| `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 |
| `key` | *string* | :heavy_minus_sign: | Key to access this stream part. | /library/streams/216389 |
| `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 |

View File

@@ -0,0 +1,26 @@
# StreamType
Stream type:
- 1 = video
- 2 = audio
- 3 = subtitle
## Example Usage
```typescript
import { StreamType } from "@lukehagar/plexjs/sdk/models/operations";
let value: StreamType = StreamType.Video;
```
## Values
This is an open enum. Unrecognized values will be captured as the `Unrecognized<number>` branded type.
| Name | Value |
| ---------------------- | ---------------------- |
| `Video` | 1 |
| `Audio` | 2 |
| `Subtitle` | 3 |
| - | `Unrecognized<number>` |

View File

@@ -1353,13 +1353,14 @@ Uploads an image to use as the background artwork for a library item, either fro
```typescript
import { PlexAPI } from "@lukehagar/plexjs";
import { openAsBlob } from "node:fs";
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");
const result = await plexAPI.library.postMediaArts(2268, await openAsBlob("example.file"), "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
// Handle the result
console.log(result);
@@ -1375,6 +1376,7 @@ The standalone function version of this method:
```typescript
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { libraryPostMediaArts } from "@lukehagar/plexjs/funcs/libraryPostMediaArts.js";
import { openAsBlob } from "node:fs";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
@@ -1383,7 +1385,7 @@ const plexAPI = new PlexAPICore({
});
async function run() {
const res = await libraryPostMediaArts(plexAPI, 2268, "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
const res = await libraryPostMediaArts(plexAPI, 2268, await openAsBlob("example.file"), "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
if (!res.ok) {
throw res.error;
@@ -1499,13 +1501,14 @@ Uploads a poster to a library item, either from a local file or a remote URL
```typescript
import { PlexAPI } from "@lukehagar/plexjs";
import { openAsBlob } from "node:fs";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await plexAPI.library.postMediaPoster(2268, "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
const result = await plexAPI.library.postMediaPoster(2268, await openAsBlob("example.file"), "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
// Handle the result
console.log(result);
@@ -1521,6 +1524,7 @@ The standalone function version of this method:
```typescript
import { PlexAPICore } from "@lukehagar/plexjs/core.js";
import { libraryPostMediaPoster } from "@lukehagar/plexjs/funcs/libraryPostMediaPoster.js";
import { openAsBlob } from "node:fs";
// Use `PlexAPICore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
@@ -1529,7 +1533,7 @@ const plexAPI = new PlexAPICore({
});
async function run() {
const res = await libraryPostMediaPoster(plexAPI, 2268, "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
const res = await libraryPostMediaPoster(plexAPI, 2268, await openAsBlob("example.file"), "https://api.mediux.pro/assets/fcfdc487-dd07-4993-a0c1-0a3015362e5b");
if (!res.ok) {
throw res.error;

View File

@@ -11,6 +11,7 @@ export default [
{
rules: {
"no-constant-condition": "off",
"no-useless-escape": "off",
// Handled by typescript compiler
"@typescript-eslint/no-unused-vars": "off",
"@typescript-eslint/no-explicit-any": "off",

View File

@@ -2,7 +2,7 @@
{
"name": "@lukehagar/plexjs",
"version": "0.37.0",
"version": "0.37.1",
"exports": {
".": "./src/index.ts",
"./sdk/models/errors": "./src/sdk/models/errors/index.ts",

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@lukehagar/plexjs",
"version": "0.37.0",
"version": "0.37.1",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@lukehagar/plexjs",
"version": "0.37.0",
"version": "0.37.1",
"devDependencies": {
"@eslint/js": "^9.19.0",
"eslint": "^9.19.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@lukehagar/plexjs",
"version": "0.37.0",
"version": "0.37.1",
"author": "LukeHagar",
"main": "./index.js",
"sideEffects": false,

View File

@@ -15,7 +15,7 @@ export const ServerList = [
/**
* The full address of your Plex Server
*/
"https://10.10.10.47:32400",
"{protocol}://{ip}:{port}",
] as const;
/**
@@ -90,7 +90,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
export const SDK_METADATA = {
language: "typescript",
openapiDocVersion: "0.0.3",
sdkVersion: "0.37.0",
genVersion: "2.585.2",
userAgent: "speakeasy-sdk/typescript 0.37.0 2.585.2 0.0.3 @lukehagar/plexjs",
sdkVersion: "0.37.1",
genVersion: "2.595.4",
userAgent: "speakeasy-sdk/typescript 0.37.1 2.595.4 0.0.3 @lukehagar/plexjs",
} as const;

View File

@@ -46,12 +46,14 @@ export type RequestOptions = {
*/
serverURL?: string | URL;
/**
* @deprecated `fetchOptions` has been flattened into `RequestOptions`.
*
* Sets various request options on the `fetch` call made by an SDK method.
*
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options|Request}
*/
fetchOptions?: Omit<RequestInit, "method" | "body">;
};
} & Omit<RequestInit, "method" | "body">;
type RequestConfig = {
method: string;
@@ -168,7 +170,9 @@ export class ClientSDK {
cookie = cookie.startsWith("; ") ? cookie.slice(2) : cookie;
headers.set("cookie", cookie);
const userHeaders = new Headers(options?.fetchOptions?.headers);
const userHeaders = new Headers(
options?.headers ?? options?.fetchOptions?.headers,
);
for (const [k, v] of userHeaders) {
headers.set(k, v);
}
@@ -179,20 +183,16 @@ export class ClientSDK {
headers.set(conf.uaHeader ?? "user-agent", SDK_METADATA.userAgent);
}
let fetchOptions = options?.fetchOptions;
const fetchOptions: Omit<RequestInit, "method" | "body"> = {
...options?.fetchOptions,
...options,
};
if (!fetchOptions?.signal && conf.timeoutMs && conf.timeoutMs > 0) {
const timeoutSignal = AbortSignal.timeout(conf.timeoutMs);
if (!fetchOptions) {
fetchOptions = { signal: timeoutSignal };
} else {
fetchOptions.signal = timeoutSignal;
}
}
if (conf.body instanceof ReadableStream) {
if (!fetchOptions) {
fetchOptions = {};
}
Object.assign(fetchOptions, { duplex: "half" });
}

View File

@@ -299,15 +299,49 @@ export enum GetAllMediaLibraryHasThumbnail {
True = "1",
}
/**
* Stream type:
*
* @remarks
* - 1 = video
* - 2 = audio
* - 3 = subtitle
*/
export enum GetAllMediaLibraryStreamType {
Video = 1,
Audio = 2,
Subtitle = 3,
}
/**
* Stream type:
*
* @remarks
* - 1 = video
* - 2 = audio
* - 3 = subtitle
*/
export type GetAllMediaLibraryStreamTypeOpen = OpenEnum<
typeof GetAllMediaLibraryStreamType
>;
export type GetAllMediaLibraryStream = {
/**
* Unique stream identifier.
*/
id: number;
/**
* Stream type (1=video, 2=audio, 3=subtitle).
* Stream type:
*
* @remarks
* - 1 = video
* - 2 = audio
* - 3 = subtitle
*/
streamType: number;
streamType: GetAllMediaLibraryStreamTypeOpen;
/**
* Format of the stream (e.g., srt).
*/
format?: string | undefined;
/**
* Indicates if this stream is default.
*/
@@ -319,7 +353,7 @@ export type GetAllMediaLibraryStream = {
/**
* Index of the stream.
*/
index: number;
index?: number | undefined;
/**
* Bitrate of the stream.
*/
@@ -413,6 +447,10 @@ export type GetAllMediaLibraryStream = {
* Frame rate of the stream.
*/
frameRate?: number | undefined;
/**
* Key to access this stream part.
*/
key?: string | undefined;
/**
* Height of the video stream.
*/
@@ -2170,6 +2208,38 @@ export namespace GetAllMediaLibraryHasThumbnail$ {
export const outboundSchema = GetAllMediaLibraryHasThumbnail$outboundSchema;
}
/** @internal */
export const GetAllMediaLibraryStreamType$inboundSchema: z.ZodType<
GetAllMediaLibraryStreamTypeOpen,
z.ZodTypeDef,
unknown
> = z
.union([
z.nativeEnum(GetAllMediaLibraryStreamType),
z.number().transform(catchUnrecognizedEnum),
]);
/** @internal */
export const GetAllMediaLibraryStreamType$outboundSchema: z.ZodType<
GetAllMediaLibraryStreamTypeOpen,
z.ZodTypeDef,
GetAllMediaLibraryStreamTypeOpen
> = z.union([
z.nativeEnum(GetAllMediaLibraryStreamType),
z.number().and(z.custom<Unrecognized<number>>()),
]);
/**
* @internal
* @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
*/
export namespace GetAllMediaLibraryStreamType$ {
/** @deprecated use `GetAllMediaLibraryStreamType$inboundSchema` instead. */
export const inboundSchema = GetAllMediaLibraryStreamType$inboundSchema;
/** @deprecated use `GetAllMediaLibraryStreamType$outboundSchema` instead. */
export const outboundSchema = GetAllMediaLibraryStreamType$outboundSchema;
}
/** @internal */
export const GetAllMediaLibraryStream$inboundSchema: z.ZodType<
GetAllMediaLibraryStream,
@@ -2177,10 +2247,11 @@ export const GetAllMediaLibraryStream$inboundSchema: z.ZodType<
unknown
> = z.object({
id: z.number().int(),
streamType: z.number().int(),
streamType: GetAllMediaLibraryStreamType$inboundSchema,
format: z.string().optional(),
default: z.boolean().optional(),
codec: z.string(),
index: z.number().int(),
index: z.number().int().optional(),
bitrate: z.number().int().optional(),
language: z.string().optional(),
languageTag: z.string().optional(),
@@ -2205,6 +2276,7 @@ export const GetAllMediaLibraryStream$inboundSchema: z.ZodType<
colorSpace: z.string().optional(),
colorTrc: z.string().optional(),
frameRate: z.number().optional(),
key: z.string().optional(),
height: z.number().int().optional(),
level: z.number().int().optional(),
original: z.boolean().optional(),
@@ -2242,9 +2314,10 @@ export const GetAllMediaLibraryStream$inboundSchema: z.ZodType<
export type GetAllMediaLibraryStream$Outbound = {
id: number;
streamType: number;
format?: string | undefined;
default?: boolean | undefined;
codec: string;
index: number;
index?: number | undefined;
bitrate?: number | undefined;
language?: string | undefined;
languageTag?: string | undefined;
@@ -2269,6 +2342,7 @@ export type GetAllMediaLibraryStream$Outbound = {
colorSpace?: string | undefined;
colorTrc?: string | undefined;
frameRate?: number | undefined;
key?: string | undefined;
height?: number | undefined;
level?: number | undefined;
original?: boolean | undefined;
@@ -2298,10 +2372,11 @@ export const GetAllMediaLibraryStream$outboundSchema: z.ZodType<
GetAllMediaLibraryStream
> = z.object({
id: z.number().int(),
streamType: z.number().int(),
streamType: GetAllMediaLibraryStreamType$outboundSchema,
format: z.string().optional(),
default: z.boolean().optional(),
codec: z.string(),
index: z.number().int(),
index: z.number().int().optional(),
bitrate: z.number().int().optional(),
language: z.string().optional(),
languageTag: z.string().optional(),
@@ -2326,6 +2401,7 @@ export const GetAllMediaLibraryStream$outboundSchema: z.ZodType<
colorSpace: z.string().optional(),
colorTrc: z.string().optional(),
frameRate: z.number().optional(),
key: z.string().optional(),
height: z.number().int().optional(),
level: z.number().int().optional(),
original: z.boolean().optional(),

File diff suppressed because it is too large Load Diff

View File

@@ -266,15 +266,47 @@ export enum HasThumbnail {
True = "1",
}
/**
* Stream type:
*
* @remarks
* - 1 = video
* - 2 = audio
* - 3 = subtitle
*/
export enum StreamType {
Video = 1,
Audio = 2,
Subtitle = 3,
}
/**
* Stream type:
*
* @remarks
* - 1 = video
* - 2 = audio
* - 3 = subtitle
*/
export type StreamTypeOpen = OpenEnum<typeof StreamType>;
export type Stream = {
/**
* Unique stream identifier.
*/
id: number;
/**
* Stream type (1=video, 2=audio, 3=subtitle).
* Stream type:
*
* @remarks
* - 1 = video
* - 2 = audio
* - 3 = subtitle
*/
streamType: number;
streamType: StreamTypeOpen;
/**
* Format of the stream (e.g., srt).
*/
format?: string | undefined;
/**
* Indicates if this stream is default.
*/
@@ -286,7 +318,7 @@ export type Stream = {
/**
* Index of the stream.
*/
index: number;
index?: number | undefined;
/**
* Bitrate of the stream.
*/
@@ -380,6 +412,10 @@ export type Stream = {
* Frame rate of the stream.
*/
frameRate?: number | undefined;
/**
* Key to access this stream part.
*/
key?: string | undefined;
/**
* Height of the video stream.
*/
@@ -2051,14 +2087,47 @@ export namespace HasThumbnail$ {
export const outboundSchema = HasThumbnail$outboundSchema;
}
/** @internal */
export const StreamType$inboundSchema: z.ZodType<
StreamTypeOpen,
z.ZodTypeDef,
unknown
> = z
.union([
z.nativeEnum(StreamType),
z.number().transform(catchUnrecognizedEnum),
]);
/** @internal */
export const StreamType$outboundSchema: z.ZodType<
StreamTypeOpen,
z.ZodTypeDef,
StreamTypeOpen
> = z.union([
z.nativeEnum(StreamType),
z.number().and(z.custom<Unrecognized<number>>()),
]);
/**
* @internal
* @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
*/
export namespace StreamType$ {
/** @deprecated use `StreamType$inboundSchema` instead. */
export const inboundSchema = StreamType$inboundSchema;
/** @deprecated use `StreamType$outboundSchema` instead. */
export const outboundSchema = StreamType$outboundSchema;
}
/** @internal */
export const Stream$inboundSchema: z.ZodType<Stream, z.ZodTypeDef, unknown> = z
.object({
id: z.number().int(),
streamType: z.number().int(),
streamType: StreamType$inboundSchema,
format: z.string().optional(),
default: z.boolean().optional(),
codec: z.string(),
index: z.number().int(),
index: z.number().int().optional(),
bitrate: z.number().int().optional(),
language: z.string().optional(),
languageTag: z.string().optional(),
@@ -2083,6 +2152,7 @@ export const Stream$inboundSchema: z.ZodType<Stream, z.ZodTypeDef, unknown> = z
colorSpace: z.string().optional(),
colorTrc: z.string().optional(),
frameRate: z.number().optional(),
key: z.string().optional(),
height: z.number().int().optional(),
level: z.number().int().optional(),
original: z.boolean().optional(),
@@ -2120,9 +2190,10 @@ export const Stream$inboundSchema: z.ZodType<Stream, z.ZodTypeDef, unknown> = z
export type Stream$Outbound = {
id: number;
streamType: number;
format?: string | undefined;
default?: boolean | undefined;
codec: string;
index: number;
index?: number | undefined;
bitrate?: number | undefined;
language?: string | undefined;
languageTag?: string | undefined;
@@ -2147,6 +2218,7 @@ export type Stream$Outbound = {
colorSpace?: string | undefined;
colorTrc?: string | undefined;
frameRate?: number | undefined;
key?: string | undefined;
height?: number | undefined;
level?: number | undefined;
original?: boolean | undefined;
@@ -2176,10 +2248,11 @@ export const Stream$outboundSchema: z.ZodType<
Stream
> = z.object({
id: z.number().int(),
streamType: z.number().int(),
streamType: StreamType$outboundSchema,
format: z.string().optional(),
default: z.boolean().optional(),
codec: z.string(),
index: z.number().int(),
index: z.number().int().optional(),
bitrate: z.number().int().optional(),
language: z.string().optional(),
languageTag: z.string().optional(),
@@ -2204,6 +2277,7 @@ export const Stream$outboundSchema: z.ZodType<
colorSpace: z.string().optional(),
colorTrc: z.string().optional(),
frameRate: z.number().optional(),
key: z.string().optional(),
height: z.number().int().optional(),
level: z.number().int().optional(),
original: z.boolean().optional(),