Compare commits

..

18 Commits

Author SHA1 Message Date
speakeasybot
b593c2c54b ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.285.1 2024-05-09 04:16:24 +00:00
speakeasybot
a449d25ac4 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.285.1 2024-05-09 03:47:33 +00:00
speakeasybot
6af375d524 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.285.1 2024-05-09 03:32:46 +00:00
speakeasybot
fc838e8ebf ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.285.1 2024-05-09 00:27:26 +00:00
speakeasybot
162b3b3d13 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.285.0 2024-05-08 18:17:06 +00:00
speakeasybot
3dff2b9225 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.283.1 2024-05-08 00:22:37 +00:00
speakeasybot
d6d9c46f51 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.280.1 2024-05-07 00:27:35 +00:00
speakeasybot
f79b24ee0e ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.279.0 2024-05-06 00:28:31 +00:00
speakeasybot
78c540ebf4 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.279.0 2024-05-05 00:29:51 +00:00
speakeasybot
3fc9856c81 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.279.0 2024-05-04 00:26:43 +00:00
speakeasybot
bc1fa68557 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.277.8 2024-05-03 00:29:29 +00:00
speakeasybot
182d88f7f1 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.277.4 2024-05-02 00:27:06 +00:00
speakeasybot
300cbb21cd ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.277.4 2024-05-01 00:29:38 +00:00
speakeasybot
53f3bfd615 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.277.0 2024-04-30 00:28:14 +00:00
speakeasybot
92b22220f1 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.276.0 2024-04-29 00:28:07 +00:00
speakeasybot
a42f887042 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.276.0 2024-04-28 00:30:12 +00:00
speakeasybot
8b9c5c6e41 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.276.0 2024-04-27 00:26:39 +00:00
speakeasybot
eab41f5f41 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.274.1 2024-04-26 00:27:29 +00:00
65 changed files with 1819 additions and 2462 deletions

View File

@@ -1,27 +1,32 @@
lockVersion: 2.0.0
id: 16f22cbf-f23f-4419-8924-3a4b06381947
management:
docChecksum: 7a43cd3413d535205cfaee20a4b6a250
docChecksum: 3b1e16609cf3ceba90d86b8161166c39
docVersion: 0.0.3
speakeasyVersion: 1.274.1
generationVersion: 2.314.0
releaseVersion: 0.14.0
configChecksum: 174408b6a33150c64008fb08840eecc3
speakeasyVersion: 1.285.1
generationVersion: 2.326.3
releaseVersion: 0.15.3
configChecksum: e49236e08142476473219ef9380215f4
repoURL: https://github.com/LukeHagar/plexjs.git
repoSubDirectory: .
installationURL: https://github.com/LukeHagar/plexjs
published: true
features:
typescript:
additionalDependencies: 0.1.0
constsAndDefaults: 0.1.5
core: 3.9.0
core: 3.9.3
flattening: 2.81.1
globalSecurity: 2.82.9
globalSecurityCallbacks: 0.1.0
globalSecurityFlattening: 0.1.0
globalServerURLs: 2.82.4
globals: 2.82.1
methodServerURLs: 2.82.1
nameOverrides: 2.81.2
responseFormat: 0.2.3
sdkHooks: 0.1.0
unions: 2.85.4
generatedFiles:
- src/sdk/server.ts
- src/sdk/media.ts
@@ -92,7 +97,6 @@ generatedFiles:
- src/models/operations/getlibraries.ts
- src/models/operations/getlibrary.ts
- src/models/operations/deletelibrary.ts
- src/models/operations/getlibraryitems.ts
- src/models/operations/refreshlibrary.ts
- src/models/operations/searchlibrary.ts
- src/models/operations/getmetadata.ts
@@ -315,19 +319,6 @@ generatedFiles:
- docs/models/operations/getlibraryresponse.md
- docs/models/operations/deletelibraryrequest.md
- docs/models/operations/deletelibraryresponse.md
- docs/models/operations/tag.md
- docs/models/operations/getlibraryitemsrequest.md
- docs/models/operations/getlibraryitemspart.md
- docs/models/operations/getlibraryitemsmedia.md
- docs/models/operations/getlibraryitemsgenre.md
- docs/models/operations/getlibraryitemscountry.md
- docs/models/operations/getlibraryitemsdirector.md
- docs/models/operations/getlibraryitemswriter.md
- docs/models/operations/getlibraryitemsrole.md
- docs/models/operations/getlibraryitemsmetadata.md
- docs/models/operations/getlibraryitemsmediacontainer.md
- docs/models/operations/getlibraryitemsresponsebody.md
- docs/models/operations/getlibraryitemsresponse.md
- docs/models/operations/refreshlibraryrequest.md
- docs/models/operations/refreshlibraryresponse.md
- docs/models/operations/type.md

View File

@@ -12,7 +12,7 @@ generation:
auth:
oAuth2ClientCredentialsEnabled: false
typescript:
version: 0.14.0
version: 0.15.3
additionalDependencies:
dependencies: {}
devDependencies: {}
@@ -32,6 +32,7 @@ typescript:
webhooks: models/webhooks
inputModelSuffix: input
maxMethodParams: 4
methodArguments: require-security-and-request
outputModelSuffix: output
packageName: '@lukehagar/plexjs'
responseFormat: envelope

View File

@@ -1,9 +1,18 @@
speakeasyVersion: 1.274.1
speakeasyVersion: 1.285.1
sources:
my-source: {}
my-source:
sourceNamespace: my-source
sourceRevisionDigest: sha256:568fdf0282ce4ed92d85200ae101163540dc48a67f013187ef56abfa72d36731
sourceBlobDigest: sha256:b7eb9c548faa01fc9c05954cb7bfc176db3fee16d2e5633da2791ffbf375114d
tags:
- latest
- main
targets:
plexjs:
source: my-source
sourceNamespace: my-source
sourceRevisionDigest: sha256:568fdf0282ce4ed92d85200ae101163540dc48a67f013187ef56abfa72d36731
sourceBlobDigest: sha256:b7eb9c548faa01fc9c05954cb7bfc176db3fee16d2e5633da2791ffbf375114d
outLocation: /github/workspace/repo
workflow:
workflowVersion: 1.0.0
@@ -12,6 +21,8 @@ workflow:
my-source:
inputs:
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
registry:
location: registry.speakeasyapi.dev/lukehagar/lukehagar/my-source
targets:
plexjs:
target: typescript

View File

@@ -1,15 +1,17 @@
workflowVersion: 1.0.0
speakeasyVersion: latest
sources:
my-source:
inputs:
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
my-source:
inputs:
- location: https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-media-server-spec-dereferenced.yaml
registry:
location: registry.speakeasyapi.dev/lukehagar/lukehagar/my-source
targets:
plexjs:
target: typescript
source: my-source
codeSamples:
output: codeSamples.yaml
publish:
npm:
token: $NPM_TOKEN
plexjs:
target: typescript
source: my-source
publish:
npm:
token: $NPM_TOKEN
codeSamples:
output: codeSamples.yaml

View File

@@ -104,7 +104,6 @@ run();
* [getLibraries](docs/sdks/library/README.md#getlibraries) - Get All Libraries
* [getLibrary](docs/sdks/library/README.md#getlibrary) - Get Library Details
* [deleteLibrary](docs/sdks/library/README.md#deletelibrary) - Delete Library Section
* [getLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
* [refreshLibrary](docs/sdks/library/README.md#refreshlibrary) - Refresh Library
* [searchLibrary](docs/sdks/library/README.md#searchlibrary) - Search Library
* [getMetadata](docs/sdks/library/README.md#getmetadata) - Get Items Metadata
@@ -284,10 +283,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const strong = false;
const xPlexClientIdentifier = "Postman";
const result = await plexAPI.plex.getPin(strong, xPlexClientIdentifier, {
const result = await plexAPI.plex.getPin(false, "Postman", {
serverURL: "https://plex.tv/api/v2",
});
@@ -330,7 +326,7 @@ const httpClient = new HTTPClient({
httpClient.addHook("beforeRequest", (request) => {
const nextRequest = new Request(request, {
signal: request.signal || AbortSignal.timeout(5000);
signal: request.signal || AbortSignal.timeout(5000)
});
nextRequest.headers.set("x-custom-header", "custom value");
@@ -417,10 +413,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const strong = false;
const xPlexClientIdentifier = "Postman";
const result = await plexAPI.plex.getPin(strong, xPlexClientIdentifier);
const result = await plexAPI.plex.getPin(false, "Postman");
// Handle the result
console.log(result);

View File

@@ -379,3 +379,183 @@ Based on:
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-26 00:27:03
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.274.1 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-27 00:26:14
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.276.0 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-28 00:29:48
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.276.0 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-29 00:27:42
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.276.0 (2.314.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.0] .
### Releases
- [NPM v0.14.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.0 - .
## 2024-04-30 00:26:07
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.277.0 (2.317.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.1] .
### Releases
- [NPM v0.14.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.1 - .
## 2024-05-01 00:29:15
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.277.4 (2.318.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.1] .
### Releases
- [NPM v0.14.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.1 - .
## 2024-05-02 00:26:42
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.277.4 (2.318.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.1] .
### Releases
- [NPM v0.14.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.1 - .
## 2024-05-03 00:27:14
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.277.8 (2.319.10) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.2] .
### Releases
- [NPM v0.14.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.2 - .
## 2024-05-04 00:26:20
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.279.0 (2.322.5) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.2] .
### Releases
- [NPM v0.14.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.2 - .
## 2024-05-05 00:29:26
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.279.0 (2.322.5) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.2] .
### Releases
- [NPM v0.14.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.2 - .
## 2024-05-06 00:28:07
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.279.0 (2.322.5) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.2] .
### Releases
- [NPM v0.14.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.2 - .
## 2024-05-07 00:27:12
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.280.1 (2.322.5) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.2] .
### Releases
- [NPM v0.14.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.2 - .
## 2024-05-08 00:22:14
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.283.1 (2.324.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.14.2] .
### Releases
- [NPM v0.14.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.14.2 - .
## 2024-05-08 18:14:57
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.285.0 (2.326.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.15.0] .
### Releases
- [NPM v0.15.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.15.0 - .
## 2024-05-09 00:26:57
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.285.1 (2.326.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.15.0] .
### Releases
- [NPM v0.15.0] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.15.0 - .
## 2024-05-09 03:30:33
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.285.1 (2.326.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.15.1] .
### Releases
- [NPM v0.15.1] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.15.1 - .
## 2024-05-09 03:45:22
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.285.1 (2.326.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.15.2] .
### Releases
- [NPM v0.15.2] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.15.2 - .
## 2024-05-09 04:14:12
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.285.1 (2.326.3) https://github.com/speakeasy-api/speakeasy
### Generated
- [typescript v0.15.3] .
### Releases
- [NPM v0.15.3] https://www.npmjs.com/package/@lukehagar/plexjs/v/0.15.3 - .

File diff suppressed because it is too large Load Diff

View File

@@ -3,7 +3,7 @@
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tonight` | [operations.Tonight](../../models/operations/tonight.md) | :heavy_minus_sign: | Indicate that you want the update to run during the next Butler execution. Omitting this or setting it to false indicates that the update should install |
| `skip` | [operations.Skip](../../models/operations/skip.md) | :heavy_minus_sign: | Indicate that the latest version should be marked as skipped. The <Release> entry for this version will have the `state` set to `skipped`. |
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `tonight` | [operations.Tonight](../../models/operations/tonight.md) | :heavy_minus_sign: | Indicate that you want the update to run during the next Butler execution. Omitting this or setting it to false indicates that the update should install | 1 |
| `skip` | [operations.Skip](../../models/operations/skip.md) | :heavy_minus_sign: | Indicate that the latest version should be marked as skipped. The <Release> entry for this version will have the `state` set to `skipped`. | 1 |

View File

@@ -3,6 +3,6 @@
## Fields
| Field | Type | Required | Description |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `activityUUID` | *string* | :heavy_check_mark: | The UUID of the activity to cancel. |
| Field | Type | Required | Description | Example |
| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ |
| `activityUUID` | *string* | :heavy_check_mark: | The UUID of the activity to cancel. | 25b71ed5-0f9d-461c-baa7-d404e9e10d3e |

View File

@@ -3,6 +3,6 @@
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- |
| `download` | [operations.Download](../../models/operations/download.md) | :heavy_minus_sign: | Indicate that you want to start download any updates found. |
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- |
| `download` | [operations.Download](../../models/operations/download.md) | :heavy_minus_sign: | Indicate that you want to start download any updates found. | 1 |

View File

@@ -1,8 +0,0 @@
# GetLibraryItemsCountry
## Fields
| Field | Type | Required | Description | Example |
| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ |
| `tag` | *string* | :heavy_minus_sign: | N/A | United States of America |

View File

@@ -1,8 +0,0 @@
# GetLibraryItemsDirector
## Fields
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `tag` | *string* | :heavy_minus_sign: | N/A | James Cameron |

View File

@@ -1,8 +0,0 @@
# GetLibraryItemsGenre
## Fields
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `tag` | *string* | :heavy_minus_sign: | N/A | Adventure |

View File

@@ -1,21 +0,0 @@
# GetLibraryItemsMedia
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id` | *number* | :heavy_minus_sign: | N/A | 119534 |
| `duration` | *number* | :heavy_minus_sign: | N/A | 11558112 |
| `bitrate` | *number* | :heavy_minus_sign: | N/A | 25025 |
| `width` | *number* | :heavy_minus_sign: | N/A | 3840 |
| `height` | *number* | :heavy_minus_sign: | N/A | 2072 |
| `aspectRatio` | *number* | :heavy_minus_sign: | N/A | 1.85 |
| `audioChannels` | *number* | :heavy_minus_sign: | N/A | 6 |
| `audioCodec` | *string* | :heavy_minus_sign: | N/A | eac3 |
| `videoCodec` | *string* | :heavy_minus_sign: | N/A | hevc |
| `videoResolution` | *string* | :heavy_minus_sign: | N/A | 4k |
| `container` | *string* | :heavy_minus_sign: | N/A | mkv |
| `videoFrameRate` | *string* | :heavy_minus_sign: | N/A | 24p |
| `videoProfile` | *string* | :heavy_minus_sign: | N/A | main 10 |
| `part` | [operations.GetLibraryItemsPart](../../models/operations/getlibraryitemspart.md)[] | :heavy_minus_sign: | N/A | [<br/>{<br/>"id": 119542,<br/>"key": "/library/parts/119542/1680457526/file.mkv",<br/>"duration": 11558112,<br/>"file": "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv",<br/>"size": 36158371307,<br/>"container": "mkv",<br/>"videoProfile": "main 10"<br/>}<br/>] |

File diff suppressed because one or more lines are too long

View File

@@ -1,64 +0,0 @@
# GetLibraryItemsMetadata
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `ratingKey` | *string* | :heavy_minus_sign: | N/A | 58683 |
| `key` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683 |
| `guid` | *string* | :heavy_minus_sign: | N/A | plex://movie/5d7768ba96b655001fdc0408 |
| `studio` | *string* | :heavy_minus_sign: | N/A | 20th Century Studios |
| `type` | *string* | :heavy_minus_sign: | N/A | movie |
| `title` | *string* | :heavy_minus_sign: | N/A | Avatar: The Way of Water |
| `contentRating` | *string* | :heavy_minus_sign: | N/A | PG-13 |
| `summary` | *string* | :heavy_minus_sign: | N/A | Jake Sully lives with his newfound family formed on the extrasolar moon Pandora. Once a familiar threat returns to finish what was previously started, Jake must work with Neytiri and the army of the Na'vi race to protect their home. |
| `rating` | *number* | :heavy_minus_sign: | N/A | 7.6 |
| `audienceRating` | *number* | :heavy_minus_sign: | N/A | 9.2 |
| `year` | *number* | :heavy_minus_sign: | N/A | 2022 |
| `tagline` | *string* | :heavy_minus_sign: | N/A | Return to Pandora. |
| `thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 |
| `art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 |
| `duration` | *number* | :heavy_minus_sign: | N/A | 11558112 |
| `originallyAvailableAt` | [RFCDate](../../types/rfcdate.md) | :heavy_minus_sign: | N/A | 2022-12-14 00:00:00 +0000 UTC |
| `addedAt` | *number* | :heavy_minus_sign: | N/A | 1680457607 |
| `updatedAt` | *number* | :heavy_minus_sign: | N/A | 1703239236 |
| `audienceRatingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.upright |
| `chapterSource` | *string* | :heavy_minus_sign: | N/A | media |
| `primaryExtraKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58684 |
| `ratingImage` | *string* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.ripe |
| `grandparentRatingKey` | *string* | :heavy_minus_sign: | N/A | 66 |
| `grandparentGuid` | *string* | :heavy_minus_sign: | N/A | plex://show/5d9c081b170e24001f2a7be4 |
| `grandparentKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66 |
| `grandparentTitle` | *string* | :heavy_minus_sign: | N/A | Caprica |
| `grandparentThumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66/thumb/1705716261 |
| `grandparentArt` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66/art/1705716261 |
| `grandparentTheme` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66/theme/1705716261 |
| `media` | [operations.GetLibraryItemsMedia](../../models/operations/getlibraryitemsmedia.md)[] | :heavy_minus_sign: | N/A | [<br/>{<br/>"id": 119534,<br/>"duration": 11558112,<br/>"bitrate": 25025,<br/>"width": 3840,<br/>"height": 2072,<br/>"aspectRatio": 1.85,<br/>"audioChannels": 6,<br/>"audioCodec": "eac3",<br/>"videoCodec": "hevc",<br/>"videoResolution": "4k",<br/>"container": "mkv",<br/>"videoFrameRate": "24p",<br/>"videoProfile": "main 10",<br/>"Part": [<br/>{<br/>"id": 119542,<br/>"key": "/library/parts/119542/1680457526/file.mkv",<br/>"duration": 11558112,<br/>"file": "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv",<br/>"size": 36158371307,<br/>"container": "mkv",<br/>"videoProfile": "main 10"<br/>}<br/>]<br/>}<br/>] |
| `genre` | [operations.GetLibraryItemsGenre](../../models/operations/getlibraryitemsgenre.md)[] | :heavy_minus_sign: | N/A | [<br/>{<br/>"tag": "Adventure"<br/>}<br/>] |
| `country` | [operations.GetLibraryItemsCountry](../../models/operations/getlibraryitemscountry.md)[] | :heavy_minus_sign: | N/A | [<br/>{<br/>"tag": "United States of America"<br/>}<br/>] |
| `director` | [operations.GetLibraryItemsDirector](../../models/operations/getlibraryitemsdirector.md)[] | :heavy_minus_sign: | N/A | [<br/>{<br/>"tag": "James Cameron"<br/>}<br/>] |
| `writer` | [operations.GetLibraryItemsWriter](../../models/operations/getlibraryitemswriter.md)[] | :heavy_minus_sign: | N/A | [<br/>{<br/>"tag": "James Cameron"<br/>}<br/>] |
| `role` | [operations.GetLibraryItemsRole](../../models/operations/getlibraryitemsrole.md)[] | :heavy_minus_sign: | N/A | [<br/>{<br/>"tag": "Sigourney Weaver"<br/>}<br/>] |
| `titleSort` | *string* | :heavy_minus_sign: | N/A | Whale |
| `viewCount` | *number* | :heavy_minus_sign: | N/A | 1 |
| `lastViewedAt` | *number* | :heavy_minus_sign: | N/A | 1682752242 |
| `originalTitle` | *string* | :heavy_minus_sign: | N/A | 映画 ブラッククローバー 魔法帝の剣 |
| `viewOffset` | *number* | :heavy_minus_sign: | N/A | 5222500 |
| `skipCount` | *number* | :heavy_minus_sign: | N/A | 1 |
| `index` | *number* | :heavy_minus_sign: | N/A | 1 |
| `theme` | *string* | :heavy_minus_sign: | N/A | /library/metadata/1/theme/1705636920 |
| `leafCount` | *number* | :heavy_minus_sign: | N/A | 14 |
| `viewedLeafCount` | *number* | :heavy_minus_sign: | N/A | 0 |
| `childCount` | *number* | :heavy_minus_sign: | N/A | 1 |
| `hasPremiumExtras` | *string* | :heavy_minus_sign: | N/A | 1 |
| `hasPremiumPrimaryExtra` | *string* | :heavy_minus_sign: | N/A | 1 |
| `parentRatingKey` | *string* | :heavy_minus_sign: | N/A | 66 |
| `parentGuid` | *string* | :heavy_minus_sign: | N/A | plex://show/5d9c081b170e24001f2a7be4 |
| `parentStudio` | *string* | :heavy_minus_sign: | N/A | UCP |
| `parentKey` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66 |
| `parentTitle` | *string* | :heavy_minus_sign: | N/A | Caprica |
| `parentIndex` | *number* | :heavy_minus_sign: | N/A | 1 |
| `parentYear` | *number* | :heavy_minus_sign: | N/A | 2010 |
| `parentThumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66/thumb/1705716261 |
| `parentTheme` | *string* | :heavy_minus_sign: | N/A | /library/metadata/66/theme/1705716261 |

View File

@@ -1,14 +0,0 @@
# GetLibraryItemsPart
## Fields
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `id` | *number* | :heavy_minus_sign: | N/A | 119542 |
| `key` | *string* | :heavy_minus_sign: | N/A | /library/parts/119542/1680457526/file.mkv |
| `duration` | *number* | :heavy_minus_sign: | N/A | 11558112 |
| `file` | *string* | :heavy_minus_sign: | N/A | /movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv |
| `size` | *number* | :heavy_minus_sign: | N/A | 36158371307 |
| `container` | *string* | :heavy_minus_sign: | N/A | mkv |
| `videoProfile` | *string* | :heavy_minus_sign: | N/A | main 10 |

View File

@@ -1,9 +0,0 @@
# GetLibraryItemsRequest
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- |
| `sectionId` | *number* | :heavy_check_mark: | the Id of the library to query |
| `tag` | [operations.Tag](../../models/operations/tag.md) | :heavy_check_mark: | A key representing a specific tag within the section. |

View File

@@ -1,11 +0,0 @@
# GetLibraryItemsResponse
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
| `rawResponse` | [Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `object` | [operations.GetLibraryItemsResponseBody](../../models/operations/getlibraryitemsresponsebody.md) | :heavy_minus_sign: | The contents of the library by section and tag |

View File

@@ -1,10 +0,0 @@
# GetLibraryItemsResponseBody
The contents of the library by section and tag
## Fields
| Field | Type | Required | Description |
| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `mediaContainer` | [operations.GetLibraryItemsMediaContainer](../../models/operations/getlibraryitemsmediacontainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -1,8 +0,0 @@
# GetLibraryItemsRole
## Fields
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `tag` | *string* | :heavy_minus_sign: | N/A | Sigourney Weaver |

View File

@@ -1,8 +0,0 @@
# GetLibraryItemsWriter
## Fields
| Field | Type | Required | Description | Example |
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| `tag` | *string* | :heavy_minus_sign: | N/A | James Cameron |

View File

@@ -3,6 +3,6 @@
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| `timespan` | *number* | :heavy_minus_sign: | The timespan to retrieve statistics for<br/>the exact meaning of this parameter is not known<br/> |
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| `timespan` | *number* | :heavy_minus_sign: | The timespan to retrieve statistics for<br/>the exact meaning of this parameter is not known<br/> | 4 |

View File

@@ -3,15 +3,15 @@
## Fields
| Field | Type | Required | Description |
| ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- |
| `ratingKey` | *number* | :heavy_check_mark: | The rating key of the media item |
| `key` | *string* | :heavy_check_mark: | The key of the media item to get the timeline for |
| `state` | [operations.State](../../models/operations/state.md) | :heavy_check_mark: | The state of the media item |
| `hasMDE` | *number* | :heavy_check_mark: | Whether the media item has MDE |
| `time` | *number* | :heavy_check_mark: | The time of the media item |
| `duration` | *number* | :heavy_check_mark: | The duration of the media item |
| `context` | *string* | :heavy_check_mark: | The context of the media item |
| `playQueueItemID` | *number* | :heavy_check_mark: | The play queue item ID of the media item |
| `playBackTime` | *number* | :heavy_check_mark: | The playback time of the media item |
| `row` | *number* | :heavy_check_mark: | The row of the media item |
| Field | Type | Required | Description | Example |
| ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- |
| `ratingKey` | *number* | :heavy_check_mark: | The rating key of the media item | 23409 |
| `key` | *string* | :heavy_check_mark: | The key of the media item to get the timeline for | /library/metadata/23409 |
| `state` | [operations.State](../../models/operations/state.md) | :heavy_check_mark: | The state of the media item | playing |
| `hasMDE` | *number* | :heavy_check_mark: | Whether the media item has MDE | 1 |
| `time` | *number* | :heavy_check_mark: | The time of the media item | 2000 |
| `duration` | *number* | :heavy_check_mark: | The duration of the media item | 10000 |
| `context` | *string* | :heavy_check_mark: | The context of the media item | home:hub.continueWatching |
| `playQueueItemID` | *number* | :heavy_check_mark: | The play queue item ID of the media item | 1 |
| `playBackTime` | *number* | :heavy_check_mark: | The playback time of the media item | 2000 |
| `row` | *number* | :heavy_check_mark: | The row of the media item | 1 |

View File

@@ -3,21 +3,21 @@
## Fields
| Field | Type | Required | Description |
| --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- |
| `hasMDE` | *number* | :heavy_check_mark: | Whether the media item has MDE |
| `path` | *string* | :heavy_check_mark: | The path to the media item to transcode |
| `mediaIndex` | *number* | :heavy_check_mark: | The index of the media item to transcode |
| `partIndex` | *number* | :heavy_check_mark: | The index of the part to transcode |
| `protocol` | *string* | :heavy_check_mark: | The protocol to use for the transcode session |
| `fastSeek` | *number* | :heavy_minus_sign: | Whether to use fast seek or not |
| `directPlay` | *number* | :heavy_minus_sign: | Whether to use direct play or not |
| `directStream` | *number* | :heavy_minus_sign: | Whether to use direct stream or not |
| `subtitleSize` | *number* | :heavy_minus_sign: | The size of the subtitles |
| `subtites` | *string* | :heavy_minus_sign: | The subtitles |
| `audioBoost` | *number* | :heavy_minus_sign: | The audio boost |
| `location` | *string* | :heavy_minus_sign: | The location of the transcode session |
| `mediaBufferSize` | *number* | :heavy_minus_sign: | The size of the media buffer |
| `session` | *string* | :heavy_minus_sign: | The session ID |
| `addDebugOverlay` | *number* | :heavy_minus_sign: | Whether to add a debug overlay or not |
| `autoAdjustQuality` | *number* | :heavy_minus_sign: | Whether to auto adjust quality or not |
| Field | Type | Required | Description | Example |
| --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- |
| `hasMDE` | *number* | :heavy_check_mark: | Whether the media item has MDE | 1 |
| `path` | *string* | :heavy_check_mark: | The path to the media item to transcode | /library/metadata/23409 |
| `mediaIndex` | *number* | :heavy_check_mark: | The index of the media item to transcode | 0 |
| `partIndex` | *number* | :heavy_check_mark: | The index of the part to transcode | 0 |
| `protocol` | *string* | :heavy_check_mark: | The protocol to use for the transcode session | hls |
| `fastSeek` | *number* | :heavy_minus_sign: | Whether to use fast seek or not | 0 |
| `directPlay` | *number* | :heavy_minus_sign: | Whether to use direct play or not | 0 |
| `directStream` | *number* | :heavy_minus_sign: | Whether to use direct stream or not | 0 |
| `subtitleSize` | *number* | :heavy_minus_sign: | The size of the subtitles | 100 |
| `subtites` | *string* | :heavy_minus_sign: | The subtitles | burn |
| `audioBoost` | *number* | :heavy_minus_sign: | The audio boost | 100 |
| `location` | *string* | :heavy_minus_sign: | The location of the transcode session | lan |
| `mediaBufferSize` | *number* | :heavy_minus_sign: | The size of the media buffer | 102400 |
| `session` | *string* | :heavy_minus_sign: | The session ID | zvcage8b7rkioqcm8f4uns4c |
| `addDebugOverlay` | *number* | :heavy_minus_sign: | Whether to add a debug overlay or not | 0 |
| `autoAdjustQuality` | *number* | :heavy_minus_sign: | Whether to auto adjust quality or not | 0 |

View File

@@ -1,28 +0,0 @@
# Tag
A key representing a specific tag within the section.
## Values
| Name | Value |
| ---------------- | ---------------- |
| `All` | all |
| `Unwatched` | unwatched |
| `Newest` | newest |
| `RecentlyAdded` | recentlyAdded |
| `RecentlyViewed` | recentlyViewed |
| `OnDeck` | onDeck |
| `Collection` | collection |
| `Edition` | edition |
| `Genre` | genre |
| `Year` | year |
| `Decade` | decade |
| `Director` | director |
| `Actor` | actor |
| `Country` | country |
| `ContentRating` | contentRating |
| `Rating` | rating |
| `Resolution` | resolution |
| `FirstCharacter` | firstCharacter |
| `Folder` | folder |

View File

@@ -3,8 +3,8 @@
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
| `key` | *string* | :heavy_check_mark: | the media key |
| `time` | *number* | :heavy_check_mark: | The time, in milliseconds, used to set the media playback progress. |
| `state` | *string* | :heavy_check_mark: | The playback state of the media item. |
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
| `key` | *string* | :heavy_check_mark: | the media key | |
| `time` | *number* | :heavy_check_mark: | The time, in milliseconds, used to set the media playback progress. | 90000 |
| `state` | *string* | :heavy_check_mark: | The playback state of the media item. | played |

View File

@@ -74,9 +74,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const activityUUID = "<value>";
const result = await plexAPI.activities.cancelServerActivities(activityUUID);
const result = await plexAPI.activities.cancelServerActivities("25b71ed5-0f9d-461c-baa7-d404e9e10d3e");
// Handle the result
console.log(result)
@@ -87,11 +85,11 @@ run();
### Parameters
| Parameter | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `activityUUID` | *string* | :heavy_check_mark: | The UUID of the activity to cancel. |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
| Parameter | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `activityUUID` | *string* | :heavy_check_mark: | The UUID of the activity to cancel. | [object Object] |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | |
### Response

View File

@@ -28,10 +28,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const type = GetTransientTokenQueryParamType.Delegation;
const scope = Scope.All;
const result = await plexAPI.authentication.getTransientToken(type, scope);
const result = await plexAPI.authentication.getTransientToken(GetTransientTokenQueryParamType.Delegation, Scope.All);
// Handle the result
console.log(result)
@@ -77,9 +74,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const source = "server://client-identifier";
const result = await plexAPI.authentication.getSourceConnectionInformation(source);
const result = await plexAPI.authentication.getSourceConnectionInformation("server://client-identifier");
// Handle the result
console.log(result)

View File

@@ -167,9 +167,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const taskName = TaskName.CleanOldBundles;
const result = await plexAPI.butler.startTask(taskName);
const result = await plexAPI.butler.startTask(TaskName.CleanOldBundles);
// Handle the result
console.log(result)
@@ -214,9 +212,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const taskName = PathParamTaskName.BackupDatabase;
const result = await plexAPI.butler.stopTask(taskName);
const result = await plexAPI.butler.stopTask(PathParamTaskName.BackupDatabase);
// Handle the result
console.log(result)

View File

@@ -27,10 +27,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const count = 1262.49;
const onlyTransient = OnlyTransient.One;
const result = await plexAPI.hubs.getGlobalHubs(count, onlyTransient);
const result = await plexAPI.hubs.getGlobalHubs(1262.49, OnlyTransient.One);
// Handle the result
console.log(result)
@@ -76,11 +73,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const sectionId = 6728.76;
const count = 9010.22;
const onlyTransient = QueryParamOnlyTransient.Zero;
const result = await plexAPI.hubs.getLibraryHubs(sectionId, count, onlyTransient);
const result = await plexAPI.hubs.getLibraryHubs(6728.76, 9010.22, QueryParamOnlyTransient.Zero);
// Handle the result
console.log(result)

View File

@@ -13,7 +13,6 @@ API Calls interacting with Plex Media Server Libraries
* [getLibraries](#getlibraries) - Get All Libraries
* [getLibrary](#getlibrary) - Get Library Details
* [deleteLibrary](#deletelibrary) - Delete Library Section
* [getLibraryItems](#getlibraryitems) - Get Library Items
* [refreshLibrary](#refreshlibrary) - Refresh Library
* [searchLibrary](#searchlibrary) - Search Library
* [getMetadata](#getmetadata) - Get Items Metadata
@@ -35,10 +34,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const url = "file://C:\Image.png&type=13";
const type = 4462.17;
const result = await plexAPI.library.getFileHash(url, type);
const result = await plexAPI.library.getFileHash("file://C:\Image.png&type=13", 4462.17);
// Handle the result
console.log(result)
@@ -213,10 +209,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const sectionId = 1000;
const includeDetails = IncludeDetails.Zero;
const result = await plexAPI.library.getLibrary(sectionId, includeDetails);
const result = await plexAPI.library.getLibrary(1000, IncludeDetails.Zero);
// Handle the result
console.log(result)
@@ -260,9 +253,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const sectionId = 1000;
const result = await plexAPI.library.deleteLibrary(sectionId);
const result = await plexAPI.library.deleteLibrary(1000);
// Handle the result
console.log(result)
@@ -290,73 +281,6 @@ run();
| errors.DeleteLibraryResponseBody | 401 | application/json |
| errors.SDKError | 4xx-5xx | */* |
## getLibraryItems
Fetches details from a specific section of the library identified by a section key and a tag. The tag parameter accepts the following values:
- `all`: All items in the section.
- `unwatched`: Items that have not been played.
- `newest`: Items that are recently released.
- `recentlyAdded`: Items that are recently added to the library.
- `recentlyViewed`: Items that were recently viewed.
- `onDeck`: Items to continue watching.
- `collection`: Items categorized by collection.
- `edition`: Items categorized by edition.
- `genre`: Items categorized by genre.
- `year`: Items categorized by year of release.
- `decade`: Items categorized by decade.
- `director`: Items categorized by director.
- `actor`: Items categorized by starring actor.
- `country`: Items categorized by country of origin.
- `contentRating`: Items categorized by content rating.
- `rating`: Items categorized by rating.
- `resolution`: Items categorized by resolution.
- `firstCharacter`: Items categorized by the first letter.
- `folder`: Items categorized by folder.
### Example Usage
```typescript
import { PlexAPI } from "@lukehagar/plexjs";
import { Tag } from "@lukehagar/plexjs/models/operations";
const plexAPI = new PlexAPI({
accessToken: "<YOUR_API_KEY_HERE>",
xPlexClientIdentifier: "Postman",
});
async function run() {
const sectionId = 451092;
const tag = Tag.Unwatched;
const result = await plexAPI.library.getLibraryItems(sectionId, tag);
// Handle the result
console.log(result)
}
run();
```
### Parameters
| Parameter | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `sectionId` | *number* | :heavy_check_mark: | the Id of the library to query |
| `tag` | [operations.Tag](../../models/operations/tag.md) | :heavy_check_mark: | A key representing a specific tag within the section. |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
### Response
**Promise<[operations.GetLibraryItemsResponse](../../models/operations/getlibraryitemsresponse.md)>**
### Errors
| Error Object | Status Code | Content Type |
| --------------- | --------------- | --------------- |
| errors.SDKError | 4xx-5xx | */* |
## refreshLibrary
This endpoint Refreshes the library.
@@ -373,9 +297,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const sectionId = 934.16;
const result = await plexAPI.library.refreshLibrary(sectionId);
const result = await plexAPI.library.refreshLibrary(934.16);
// Handle the result
console.log(result)
@@ -437,10 +359,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const sectionId = 933505;
const type = Type.Four;
const result = await plexAPI.library.searchLibrary(sectionId, type);
const result = await plexAPI.library.searchLibrary(933505, Type.Four);
// Handle the result
console.log(result)
@@ -484,9 +403,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const ratingKey = 8382.31;
const result = await plexAPI.library.getMetadata(ratingKey);
const result = await plexAPI.library.getMetadata(8382.31);
// Handle the result
console.log(result)
@@ -530,9 +447,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const ratingKey = 1539.14;
const result = await plexAPI.library.getMetadataChildren(ratingKey);
const result = await plexAPI.library.getMetadataChildren(1539.14);
// Handle the result
console.log(result)

View File

@@ -29,11 +29,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const level = Level.Three;
const message = "Test log message";
const source = "Postman";
const result = await plexAPI.log.logLine(level, message, source);
const result = await plexAPI.log.logLine(Level.Three, "Test log message", "Postman");
// Handle the result
console.log(result)

View File

@@ -27,9 +27,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const key = 59398;
const result = await plexAPI.media.markPlayed(key);
const result = await plexAPI.media.markPlayed(59398);
// Handle the result
console.log(result)
@@ -72,9 +70,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const key = 59398;
const result = await plexAPI.media.markUnplayed(key);
const result = await plexAPI.media.markUnplayed(59398);
// Handle the result
console.log(result)
@@ -118,11 +114,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const key = "<value>";
const time = 6900.91;
const state = "<value>";
const result = await plexAPI.media.updatePlayProgress(key, time, state);
const result = await plexAPI.media.updatePlayProgress("<value>", 90000, "played");
// Handle the result
console.log(result)
@@ -133,13 +125,13 @@ run();
### Parameters
| Parameter | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `key` | *string* | :heavy_check_mark: | the media key |
| `time` | *number* | :heavy_check_mark: | The time, in milliseconds, used to set the media playback progress. |
| `state` | *string* | :heavy_check_mark: | The playback state of the media item. |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
| Parameter | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `key` | *string* | :heavy_check_mark: | the media key | |
| `time` | *number* | :heavy_check_mark: | The time, in milliseconds, used to set the media playback progress. | [object Object] |
| `state` | *string* | :heavy_check_mark: | The playback state of the media item. | [object Object] |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | |
### Response

View File

@@ -89,10 +89,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const playlistType = PlaylistType.Audio;
const smart = QueryParamSmart.Zero;
const result = await plexAPI.playlists.getPlaylists(playlistType, smart);
const result = await plexAPI.playlists.getPlaylists(PlaylistType.Audio, QueryParamSmart.Zero);
// Handle the result
console.log(result)
@@ -138,9 +135,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const playlistID = 4109.48;
const result = await plexAPI.playlists.getPlaylist(playlistID);
const result = await plexAPI.playlists.getPlaylist(4109.48);
// Handle the result
console.log(result)
@@ -184,9 +179,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const playlistID = 216.22;
const result = await plexAPI.playlists.deletePlaylist(playlistID);
const result = await plexAPI.playlists.deletePlaylist(216.22);
// Handle the result
console.log(result)
@@ -230,11 +223,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const playlistID = 3915;
const title = "<value>";
const summary = "<value>";
const result = await plexAPI.playlists.updatePlaylist(playlistID, title, summary);
const result = await plexAPI.playlists.updatePlaylist(3915, "<value>", "<value>");
// Handle the result
console.log(result)
@@ -283,10 +272,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const playlistID = 5004.46;
const type = 9403.59;
const result = await plexAPI.playlists.getPlaylistContents(playlistID, type);
const result = await plexAPI.playlists.getPlaylistContents(5004.46, 9403.59);
// Handle the result
console.log(result)
@@ -331,9 +317,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const playlistID = 1893.18;
const result = await plexAPI.playlists.clearPlaylistContents(playlistID);
const result = await plexAPI.playlists.clearPlaylistContents(1893.18);
// Handle the result
console.log(result)
@@ -378,11 +362,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const playlistID = 8502.01;
const uri = "server://12345/com.plexapp.plugins.library/library/metadata/1";
const playQueueID = 123;
const result = await plexAPI.playlists.addPlaylistContents(playlistID, uri, playQueueID);
const result = await plexAPI.playlists.addPlaylistContents(8502.01, "server://12345/com.plexapp.plugins.library/library/metadata/1", 123);
// Handle the result
console.log(result)
@@ -429,10 +409,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const path = "/home/barkley/playlist.m3u";
const force = Force.Zero;
const result = await plexAPI.playlists.uploadPlaylist(path, force);
const result = await plexAPI.playlists.uploadPlaylist("/home/barkley/playlist.m3u", Force.Zero);
// Handle the result
console.log(result)

View File

@@ -25,10 +25,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const strong = false;
const xPlexClientIdentifier = "Postman";
const result = await plexAPI.plex.getPin(strong, xPlexClientIdentifier);
const result = await plexAPI.plex.getPin(false, "Postman");
// Handle the result
console.log(result)
@@ -72,10 +69,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const pinID = "<value>";
const xPlexClientIdentifier = "Postman";
const result = await plexAPI.plex.getToken(pinID, xPlexClientIdentifier);
const result = await plexAPI.plex.getToken("<value>", "Postman");
// Handle the result
console.log(result)

View File

@@ -39,11 +39,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const query = "dylan";
const sectionId = 1516.53;
const limit = 5;
const result = await plexAPI.search.performSearch(query, sectionId, limit);
const result = await plexAPI.search.performSearch("dylan", 1516.53, 5);
// Handle the result
console.log(result)
@@ -92,11 +88,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const query = "dead+poop";
const sectionId = 4094.8;
const limit = 5;
const result = await plexAPI.search.performVoiceSearch(query, sectionId, limit);
const result = await plexAPI.search.performVoiceSearch("dead+poop", 4094.8, 5);
// Handle the result
console.log(result)
@@ -141,9 +133,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const query = "110";
const result = await plexAPI.search.getSearchResults(query);
const result = await plexAPI.search.getSearchResults("110");
// Handle the result
console.log(result)

View File

@@ -154,9 +154,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const sessionKey = "zz7llzqlx8w9vnrsbnwhbmep";
const result = await plexAPI.sessions.stopTranscodeSession(sessionKey);
const result = await plexAPI.sessions.stopTranscodeSession("zz7llzqlx8w9vnrsbnwhbmep");
// Handle the result
console.log(result)

View File

@@ -25,9 +25,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const timespan = 411769;
const result = await plexAPI.statistics.getStatistics(timespan);
const result = await plexAPI.statistics.getStatistics(4);
// Handle the result
console.log(result)
@@ -38,11 +36,11 @@ run();
### Parameters
| Parameter | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `timespan` | *number* | :heavy_minus_sign: | The timespan to retrieve statistics for<br/>the exact meaning of this parameter is not known<br/> |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
| Parameter | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `timespan` | *number* | :heavy_minus_sign: | The timespan to retrieve statistics for<br/>the exact meaning of this parameter is not known<br/> | [object Object] |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | |
### Response

View File

@@ -71,9 +71,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const download = Download.One;
const result = await plexAPI.updater.checkForUpdates(download);
const result = await plexAPI.updater.checkForUpdates(Download.One);
// Handle the result
console.log(result)
@@ -84,11 +82,11 @@ run();
### Parameters
| Parameter | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `download` | [operations.Download](../../models/operations/download.md) | :heavy_minus_sign: | Indicate that you want to start download any updates found. |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
| Parameter | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `download` | [operations.Download](../../models/operations/download.md) | :heavy_minus_sign: | Indicate that you want to start download any updates found. | [object Object] |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | |
### Response
@@ -118,10 +116,7 @@ const plexAPI = new PlexAPI({
});
async function run() {
const tonight = Tonight.One;
const skip = Skip.Zero;
const result = await plexAPI.updater.applyUpdates(tonight, skip);
const result = await plexAPI.updater.applyUpdates(Tonight.One, Skip.One);
// Handle the result
console.log(result)
@@ -132,12 +127,12 @@ run();
### Parameters
| Parameter | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `tonight` | [operations.Tonight](../../models/operations/tonight.md) | :heavy_minus_sign: | Indicate that you want the update to run during the next Butler execution. Omitting this or setting it to false indicates that the update should install |
| `skip` | [operations.Skip](../../models/operations/skip.md) | :heavy_minus_sign: | Indicate that the latest version should be marked as skipped. The <Release> entry for this version will have the `state` set to `skipped`. |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
| Parameter | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `tonight` | [operations.Tonight](../../models/operations/tonight.md) | :heavy_minus_sign: | Indicate that you want the update to run during the next Butler execution. Omitting this or setting it to false indicates that the update should install | [object Object] |
| `skip` | [operations.Skip](../../models/operations/skip.md) | :heavy_minus_sign: | Indicate that the latest version should be marked as skipped. The <Release> entry for this version will have the `state` set to `skipped`. | [object Object] |
| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | |
| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | |
### Response

View File

@@ -28,16 +28,16 @@ const plexAPI = new PlexAPI({
async function run() {
const result = await plexAPI.video.getTimeline({
ratingKey: 716.56,
key: "<key>",
state: State.Paused,
hasMDE: 7574.33,
time: 3327.51,
duration: 7585.39,
context: "<value>",
playQueueItemID: 1406.21,
playBackTime: 2699.34,
row: 3536.42,
ratingKey: 23409,
key: "/library/metadata/23409",
state: State.Playing,
hasMDE: 1,
time: 2000,
duration: 10000,
context: "home:hub.continueWatching",
playQueueItemID: 1,
playBackTime: 2000,
row: 1,
});
// Handle the result
@@ -82,11 +82,22 @@ const plexAPI = new PlexAPI({
async function run() {
const result = await plexAPI.video.startUniversalTranscode({
hasMDE: 8924.99,
path: "/etc/mail",
mediaIndex: 9962.95,
partIndex: 1232.82,
protocol: "<value>",
hasMDE: 1,
path: "/library/metadata/23409",
mediaIndex: 0,
partIndex: 0,
protocol: "hls",
fastSeek: 0,
directPlay: 0,
directStream: 0,
subtitleSize: 100,
subtites: "burn",
audioBoost: 100,
location: "lan",
mediaBufferSize: 102400,
session: "zvcage8b7rkioqcm8f4uns4c",
addDebugOverlay: 0,
autoAdjustQuality: 0,
});
// Handle the result

View File

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

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@lukehagar/plexjs",
"version": "0.14.0",
"version": "0.15.3",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@lukehagar/plexjs",
"version": "0.14.0",
"version": "0.15.3",
"devDependencies": {
"@types/jsonpath": "^0.2.4",
"@typescript-eslint/eslint-plugin": "^7.7.1",

View File

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

View File

@@ -87,7 +87,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
export const SDK_METADATA = {
language: "typescript",
openapiDocVersion: "0.0.3",
sdkVersion: "0.14.0",
genVersion: "2.314.0",
userAgent: "speakeasy-sdk/typescript 0.14.0 2.314.0 0.0.3 @lukehagar/plexjs",
sdkVersion: "0.15.3",
genVersion: "2.326.3",
userAgent: "speakeasy-sdk/typescript 0.15.3 2.326.3 0.0.3 @lukehagar/plexjs",
} as const;

View File

@@ -9,7 +9,17 @@ export type Fetcher = (
export type Awaitable<T> = T | Promise<T>;
const DEFAULT_FETCHER: Fetcher = (input, init) => fetch(input, init);
const DEFAULT_FETCHER: Fetcher = (input, init) => {
// If input is a Request and init is undefined, Bun will discard the method,
// headers, body and other options that were set on the request object.
// Node.js and browers would ignore an undefined init value. This check is
// therefore needed for interop with Bun.
if (init == null) {
return fetch(input);
} else {
return fetch(input, init);
}
};
export type RequestInput = {
/**
@@ -141,29 +151,56 @@ export class HTTPClient {
}
}
export function matchContentType(response: Response, pattern: string): boolean {
if (pattern === "*" || pattern === "*/*") {
// A semicolon surrounded by optional whitespace characters is used to separate
// segments in a media type string.
const mediaParamSeparator = /\s*;\s*/g;
function matchContentType(response: Response, pattern: string): boolean {
// `*` is a special case which means anything is acceptable.
if (pattern === "*") {
return true;
}
const contentType =
response.headers.get("content-type") ?? "application/octet-stream";
let contentType =
response.headers.get("content-type")?.trim() || "application/octet-stream";
contentType = contentType.toLowerCase();
const idx = contentType.split(";").findIndex((raw) => {
const ctype = raw.trim();
if (ctype === pattern) {
return true;
}
const wantParts = pattern.toLowerCase().trim().split(mediaParamSeparator);
const [wantType = "", ...wantParams] = wantParts;
const parts = ctype.split("/");
if (parts.length !== 2) {
if (wantType.split("/").length !== 2) {
return false;
}
const gotParts = contentType.split(mediaParamSeparator);
const [gotType = "", ...gotParams] = gotParts;
const [type = "", subtype = ""] = gotType.split("/");
if (!type || !subtype) {
return false;
}
if (
wantType !== "*/*" &&
gotType !== wantType &&
`${type}/*` !== wantType &&
`*/${subtype}` !== wantType
) {
return false;
}
if (gotParams.length < wantParams.length) {
return false;
}
const params = new Set(gotParams);
for (const wantParam of wantParams) {
if (!params.has(wantParam)) {
return false;
}
}
return `${parts[0]}/*` === pattern || `*/${parts[1]}` === pattern;
});
return idx >= 0;
return true;
}
const codeRangeRE = new RegExp("^[0-9]xx$", "i");

View File

@@ -68,7 +68,7 @@ type SecurityInputOAuth2 = {
type SecurityInputOAuth2ClientCredentials = {
type: "oauth2:client_credentials";
value: string | null | undefined;
fieldName: "clientID" | "clientSecret";
fieldName: string;
};
export type SecurityInput =

View File

@@ -4,6 +4,7 @@
export class SDKError extends Error {
public readonly statusCode: number;
public readonly contentType: string;
constructor(
message: string,
@@ -11,11 +12,13 @@ export class SDKError extends Error {
public readonly body: string = ""
) {
const statusCode = rawResponse.status;
const contentType = rawResponse.headers.get("content-type") || "";
const bodyString = body.length > 0 ? `\n${body}` : "";
super(`${message}: Status ${statusCode}${bodyString}`);
super(`${message}: Status ${statusCode} Content-Type ${contentType} Body ${bodyString}`);
this.statusCode = statusCode;
this.contentType = contentType;
this.name = "SDKError";
}

File diff suppressed because it is too large Load Diff

View File

@@ -19,7 +19,6 @@ export * from "./getglobalhubs";
export * from "./getlibraries";
export * from "./getlibrary";
export * from "./getlibraryhubs";
export * from "./getlibraryitems";
export * from "./getmetadata";
export * from "./getmetadatachildren";
export * from "./getmyplexaccount";

View File

@@ -71,7 +71,7 @@ export class Activities extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -83,12 +83,13 @@ export class Activities extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -119,7 +120,11 @@ export class Activities extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -173,7 +178,7 @@ export class Activities extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -186,12 +191,13 @@ export class Activities extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -211,7 +217,11 @@ export class Activities extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -90,7 +90,7 @@ export class Authentication extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -103,12 +103,13 @@ export class Authentication extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -128,7 +129,11 @@ export class Authentication extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -189,7 +194,7 @@ export class Authentication extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -202,12 +207,13 @@ export class Authentication extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -227,7 +233,11 @@ export class Authentication extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -69,7 +69,7 @@ export class Butler extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -81,12 +81,13 @@ export class Butler extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -117,7 +118,11 @@ export class Butler extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -157,7 +162,7 @@ export class Butler extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -169,12 +174,13 @@ export class Butler extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -194,7 +200,11 @@ export class Butler extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -236,7 +246,7 @@ export class Butler extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -248,12 +258,13 @@ export class Butler extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -273,7 +284,11 @@ export class Butler extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -338,7 +353,7 @@ export class Butler extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -351,12 +366,13 @@ export class Butler extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, [200, 202])) {
@@ -376,7 +392,11 @@ export class Butler extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -437,7 +457,7 @@ export class Butler extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "404", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -450,12 +470,13 @@ export class Butler extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -475,7 +496,11 @@ export class Butler extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -92,7 +92,7 @@ export class Hubs extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -105,12 +105,13 @@ export class Hubs extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -141,7 +142,11 @@ export class Hubs extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -208,7 +213,7 @@ export class Hubs extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -221,12 +226,13 @@ export class Hubs extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -257,7 +263,11 @@ export class Hubs extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
}

View File

@@ -89,7 +89,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -102,12 +102,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -127,7 +128,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -169,7 +174,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -181,12 +186,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -217,7 +223,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -258,7 +268,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -270,12 +280,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -306,7 +317,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -408,7 +423,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -421,12 +436,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -457,7 +473,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -511,7 +531,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -524,12 +544,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -549,7 +570,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -559,122 +584,6 @@ export class Library extends ClientSDK {
);
}
/**
* Get Library Items
*
* @remarks
* Fetches details from a specific section of the library identified by a section key and a tag. The tag parameter accepts the following values:
* - `all`: All items in the section.
* - `unwatched`: Items that have not been played.
* - `newest`: Items that are recently released.
* - `recentlyAdded`: Items that are recently added to the library.
* - `recentlyViewed`: Items that were recently viewed.
* - `onDeck`: Items to continue watching.
* - `collection`: Items categorized by collection.
* - `edition`: Items categorized by edition.
* - `genre`: Items categorized by genre.
* - `year`: Items categorized by year of release.
* - `decade`: Items categorized by decade.
* - `director`: Items categorized by director.
* - `actor`: Items categorized by starring actor.
* - `country`: Items categorized by country of origin.
* - `contentRating`: Items categorized by content rating.
* - `rating`: Items categorized by rating.
* - `resolution`: Items categorized by resolution.
* - `firstCharacter`: Items categorized by the first letter.
* - `folder`: Items categorized by folder.
*
*/
async getLibraryItems(
sectionId: number,
tag: operations.Tag,
options?: RequestOptions
): Promise<operations.GetLibraryItemsResponse> {
const input$: operations.GetLibraryItemsRequest = {
sectionId: sectionId,
tag: tag,
};
const headers$ = new Headers();
headers$.set("user-agent", SDK_METADATA.userAgent);
headers$.set("Accept", "application/json");
const payload$ = schemas$.parse(
input$,
(value$) => operations.GetLibraryItemsRequest$.outboundSchema.parse(value$),
"Input validation failed"
);
const body$ = null;
const pathParams$ = {
sectionId: enc$.encodeSimple("sectionId", payload$.sectionId, {
explode: false,
charEncoding: "percent",
}),
tag: enc$.encodeSimple("tag", payload$.tag, {
explode: false,
charEncoding: "percent",
}),
};
const path$ = this.templateURLComponent("/library/sections/{sectionId}/{tag}")(pathParams$);
const query$ = "";
let security$;
if (typeof this.options$.accessToken === "function") {
security$ = { accessToken: await this.options$.accessToken() };
} else if (this.options$.accessToken) {
security$ = { accessToken: this.options$.accessToken };
} else {
security$ = {};
}
const context = {
operationID: "getLibraryItems",
oAuth2Scopes: [],
securitySource: this.options$.accessToken,
};
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["4XX", "5XX"] };
const request = this.createRequest$(
context,
{
security: securitySettings$,
method: "GET",
path: path$,
headers: headers$,
query: query$,
body: body$,
},
options
);
const response = await this.do$(request, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
};
if (this.matchResponse(response, 200, "application/json")) {
const responseBody = await response.json();
const result = schemas$.parse(
responseBody,
(val$) => {
return operations.GetLibraryItemsResponse$.inboundSchema.parse({
...responseFields$,
object: val$,
});
},
"Response validation failed"
);
return result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
}
}
/**
* Refresh Library
*
@@ -728,7 +637,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -741,12 +650,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -766,7 +676,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -852,7 +766,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -865,12 +779,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -888,7 +803,11 @@ export class Library extends ClientSDK {
return result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -943,7 +862,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -956,12 +875,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -992,7 +912,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -1049,7 +973,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -1062,12 +986,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -1098,7 +1023,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -1134,7 +1063,7 @@ export class Library extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -1146,12 +1075,13 @@ export class Library extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -1182,7 +1112,11 @@ export class Library extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
}

View File

@@ -97,7 +97,7 @@ export class Log extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -110,12 +110,13 @@ export class Log extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -135,7 +136,11 @@ export class Log extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -173,16 +178,17 @@ export class Log extends ClientSDK {
*
*/
async logMultiLine(
input: string,
request: string,
options?: RequestOptions
): Promise<operations.LogMultiLineResponse> {
const input$ = request;
const headers$ = new Headers();
headers$.set("user-agent", SDK_METADATA.userAgent);
headers$.set("Content-Type", "text/plain");
headers$.set("Accept", "application/json");
const payload$ = schemas$.parse(
input,
input$,
(value$) => z.string().parse(value$),
"Input validation failed"
);
@@ -208,7 +214,7 @@ export class Log extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -221,12 +227,13 @@ export class Log extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -246,7 +253,11 @@ export class Log extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -288,7 +299,7 @@ export class Log extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "403", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -300,12 +311,13 @@ export class Log extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -325,7 +337,11 @@ export class Log extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -86,7 +86,7 @@ export class Media extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -99,12 +99,13 @@ export class Media extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -124,7 +125,11 @@ export class Media extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -182,7 +187,7 @@ export class Media extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -195,12 +200,13 @@ export class Media extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -220,7 +226,11 @@ export class Media extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -285,7 +295,7 @@ export class Media extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -298,12 +308,13 @@ export class Media extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -323,7 +334,11 @@ export class Media extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -48,15 +48,16 @@ export class Playlists extends ClientSDK {
*
*/
async createPlaylist(
input: operations.CreatePlaylistRequest,
request: operations.CreatePlaylistRequest,
options?: RequestOptions
): Promise<operations.CreatePlaylistResponse> {
const input$ = request;
const headers$ = new Headers();
headers$.set("user-agent", SDK_METADATA.userAgent);
headers$.set("Accept", "application/json");
const payload$ = schemas$.parse(
input,
input$,
(value$) => operations.CreatePlaylistRequest$.outboundSchema.parse(value$),
"Input validation failed"
);
@@ -93,7 +94,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -106,12 +107,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -142,7 +144,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -200,7 +206,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -213,12 +219,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -249,7 +256,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -305,7 +316,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -318,12 +329,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -354,7 +366,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -409,7 +425,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -422,12 +438,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -447,7 +464,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -520,7 +541,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -533,12 +554,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -558,7 +580,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -628,7 +654,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -641,12 +667,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -677,7 +704,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -732,7 +763,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -745,12 +776,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -770,7 +802,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -844,7 +880,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -857,12 +893,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -893,7 +930,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -949,7 +990,7 @@ export class Playlists extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -962,12 +1003,13 @@ export class Playlists extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -987,7 +1029,11 @@ export class Playlists extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -88,7 +88,7 @@ export class Plex extends ClientSDK {
const context = { operationID: "getPin", oAuth2Scopes: [], securitySource: null };
const doOptions = { context, errorCodes: ["400", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
method: "POST",
@@ -101,12 +101,13 @@ export class Plex extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -137,7 +138,11 @@ export class Plex extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -193,7 +198,7 @@ export class Plex extends ClientSDK {
const context = { operationID: "getToken", oAuth2Scopes: [], securitySource: null };
const doOptions = { context, errorCodes: ["400", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
method: "GET",
@@ -206,12 +211,13 @@ export class Plex extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -231,7 +237,11 @@ export class Plex extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -107,7 +107,7 @@ export class Search extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -120,12 +120,13 @@ export class Search extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -145,7 +146,11 @@ export class Search extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -216,7 +221,7 @@ export class Search extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -229,12 +234,13 @@ export class Search extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -254,7 +260,11 @@ export class Search extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -312,7 +322,7 @@ export class Search extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -325,12 +335,13 @@ export class Search extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -361,7 +372,11 @@ export class Search extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
}

View File

@@ -71,7 +71,7 @@ export class Server extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -83,12 +83,13 @@ export class Server extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -119,7 +120,11 @@ export class Server extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -156,7 +161,7 @@ export class Server extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -168,12 +173,13 @@ export class Server extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -204,7 +210,11 @@ export class Server extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -241,7 +251,7 @@ export class Server extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -253,12 +263,13 @@ export class Server extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -289,7 +300,11 @@ export class Server extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -324,7 +339,7 @@ export class Server extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -336,12 +351,13 @@ export class Server extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -372,7 +388,11 @@ export class Server extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -409,7 +429,7 @@ export class Server extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -421,12 +441,13 @@ export class Server extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -457,7 +478,11 @@ export class Server extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -492,7 +517,7 @@ export class Server extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -504,12 +529,13 @@ export class Server extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -540,7 +566,11 @@ export class Server extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -552,15 +582,16 @@ export class Server extends ClientSDK {
*
*/
async getResizedPhoto(
input: operations.GetResizedPhotoRequest,
request: operations.GetResizedPhotoRequest,
options?: RequestOptions
): Promise<operations.GetResizedPhotoResponse> {
const input$ = request;
const headers$ = new Headers();
headers$.set("user-agent", SDK_METADATA.userAgent);
headers$.set("Accept", "application/json");
const payload$ = schemas$.parse(
input,
input$,
(value$) => operations.GetResizedPhotoRequest$.outboundSchema.parse(value$),
"Input validation failed"
);
@@ -605,7 +636,7 @@ export class Server extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -618,12 +649,13 @@ export class Server extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -643,7 +675,11 @@ export class Server extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -684,7 +720,7 @@ export class Server extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -696,12 +732,13 @@ export class Server extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -732,7 +769,11 @@ export class Server extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
}

View File

@@ -69,7 +69,7 @@ export class Sessions extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -81,12 +81,13 @@ export class Sessions extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -117,7 +118,11 @@ export class Sessions extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -154,7 +159,7 @@ export class Sessions extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -166,12 +171,13 @@ export class Sessions extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -202,7 +208,11 @@ export class Sessions extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -239,7 +249,7 @@ export class Sessions extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -251,12 +261,13 @@ export class Sessions extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -287,7 +298,11 @@ export class Sessions extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -341,7 +356,7 @@ export class Sessions extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -354,12 +369,13 @@ export class Sessions extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 204)) {
@@ -379,7 +395,11 @@ export class Sessions extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -89,7 +89,7 @@ export class Statistics extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -102,12 +102,13 @@ export class Statistics extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -138,7 +139,11 @@ export class Statistics extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
}

View File

@@ -69,7 +69,7 @@ export class Updater extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -81,12 +81,13 @@ export class Updater extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchResponse(response, 200, "application/json")) {
@@ -117,7 +118,11 @@ export class Updater extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
}
@@ -172,7 +177,7 @@ export class Updater extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -185,12 +190,13 @@ export class Updater extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -210,7 +216,11 @@ export class Updater extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -275,7 +285,7 @@ export class Updater extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "500", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -288,12 +298,13 @@ export class Updater extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -313,7 +324,11 @@ export class Updater extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(

View File

@@ -45,15 +45,16 @@ export class Video extends ClientSDK {
* Get the timeline for a media item
*/
async getTimeline(
input: operations.GetTimelineRequest,
request: operations.GetTimelineRequest,
options?: RequestOptions
): Promise<operations.GetTimelineResponse> {
const input$ = request;
const headers$ = new Headers();
headers$.set("user-agent", SDK_METADATA.userAgent);
headers$.set("Accept", "application/json");
const payload$ = schemas$.parse(
input,
input$,
(value$) => operations.GetTimelineRequest$.outboundSchema.parse(value$),
"Input validation failed"
);
@@ -107,7 +108,7 @@ export class Video extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -120,12 +121,13 @@ export class Video extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -145,7 +147,11 @@ export class Video extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(
@@ -162,15 +168,16 @@ export class Video extends ClientSDK {
* Begin a Universal Transcode Session
*/
async startUniversalTranscode(
input: operations.StartUniversalTranscodeRequest,
request: operations.StartUniversalTranscodeRequest,
options?: RequestOptions
): Promise<operations.StartUniversalTranscodeResponse> {
const input$ = request;
const headers$ = new Headers();
headers$.set("user-agent", SDK_METADATA.userAgent);
headers$.set("Accept", "application/json");
const payload$ = schemas$.parse(
input,
input$,
(value$) => operations.StartUniversalTranscodeRequest$.outboundSchema.parse(value$),
"Input validation failed"
);
@@ -257,7 +264,7 @@ export class Video extends ClientSDK {
const securitySettings$ = this.resolveGlobalSecurity(security$);
const doOptions = { context, errorCodes: ["400", "401", "4XX", "5XX"] };
const request = this.createRequest$(
const request$ = this.createRequest$(
context,
{
security: securitySettings$,
@@ -270,12 +277,13 @@ export class Video extends ClientSDK {
options
);
const response = await this.do$(request, doOptions);
const response = await this.do$(request$, doOptions);
const responseFields$ = {
ContentType: response.headers.get("content-type") ?? "application/octet-stream",
StatusCode: response.status,
RawResponse: response,
Headers: {},
};
if (this.matchStatusCode(response, 200)) {
@@ -295,7 +303,11 @@ export class Video extends ClientSDK {
throw result;
} else {
const responseBody = await response.text();
throw new errors.SDKError("Unexpected API response", response, responseBody);
throw new errors.SDKError(
"Unexpected API response status or content-type",
response,
responseBody
);
}
return schemas$.parse(