mirror of
https://github.com/LukeHagar/plexgo.git
synced 2025-12-07 12:37:45 +00:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7af7441ac7 | ||
|
|
d1945b544b | ||
|
|
16bb49d558 | ||
|
|
4bea7ae0d8 | ||
|
|
da5491e935 | ||
|
|
aeebf438e1 | ||
|
|
dc815780a6 | ||
|
|
636840a553 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1 +1,2 @@
|
||||
.speakeasy/reports
|
||||
# .gitignore
|
||||
|
||||
1489
.speakeasy/gen.lock
1489
.speakeasy/gen.lock
File diff suppressed because one or more lines are too long
@@ -11,11 +11,13 @@ generation:
|
||||
requestResponseComponentNamesFeb2024: true
|
||||
auth:
|
||||
oAuth2ClientCredentialsEnabled: true
|
||||
oAuth2PasswordEnabled: false
|
||||
go:
|
||||
version: 0.13.0
|
||||
version: 0.17.2
|
||||
additionalDependencies: {}
|
||||
allowUnknownFieldsInWeakUnions: false
|
||||
clientServerStatusCodesAsErrors: true
|
||||
defaultErrorName: SDKError
|
||||
flattenGlobalSecurity: true
|
||||
imports:
|
||||
option: openapi
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
speakeasyVersion: 1.402.14
|
||||
speakeasyVersion: 1.476.0
|
||||
sources:
|
||||
my-source:
|
||||
sourceNamespace: my-source
|
||||
@@ -9,19 +9,19 @@ sources:
|
||||
- main
|
||||
plexapi:
|
||||
sourceNamespace: plexapi
|
||||
sourceRevisionDigest: sha256:b7081644a59eca24a22b8009506fcf459bf18b07dce0462b39bc36c40d94862e
|
||||
sourceBlobDigest: sha256:6b822f23afbc630bbc0fc12299316ea03d3671a2c2a81241ad4caa49022b430e
|
||||
sourceRevisionDigest: sha256:b146684d2d813daa8ba29e432a12334838753d0b20183beca8178a74ec4d895a
|
||||
sourceBlobDigest: sha256:58f51c4319fcda931d63950fd926e8650e20a2e1375e356bf3a930111e246a58
|
||||
tags:
|
||||
- latest
|
||||
- main
|
||||
- speakeasy-sdk-regen-1737763744
|
||||
targets:
|
||||
plexgo:
|
||||
source: plexapi
|
||||
sourceNamespace: plexapi
|
||||
sourceRevisionDigest: sha256:b7081644a59eca24a22b8009506fcf459bf18b07dce0462b39bc36c40d94862e
|
||||
sourceBlobDigest: sha256:6b822f23afbc630bbc0fc12299316ea03d3671a2c2a81241ad4caa49022b430e
|
||||
sourceRevisionDigest: sha256:b146684d2d813daa8ba29e432a12334838753d0b20183beca8178a74ec4d895a
|
||||
sourceBlobDigest: sha256:58f51c4319fcda931d63950fd926e8650e20a2e1375e356bf3a930111e246a58
|
||||
codeSamplesNamespace: code-samples-go-plexgo
|
||||
codeSamplesRevisionDigest: sha256:77cf87f3a1619a7cf598f60cf04a2f82dd0809dd1d449c2a1f67a63729f5726a
|
||||
codeSamplesRevisionDigest: sha256:a9b4a5597cc8dc7e97e7ce3e68de850538878f6a879c0b400ae0d4757f7f8743
|
||||
workflow:
|
||||
workflowVersion: 1.0.0
|
||||
speakeasyVersion: latest
|
||||
|
||||
247
README.md
247
README.md
@@ -11,21 +11,53 @@
|
||||
## Summary
|
||||
|
||||
Plex-API: An Open API Spec for interacting with Plex.tv and Plex Media Server
|
||||
|
||||
# Plex Media Server OpenAPI Specification
|
||||
|
||||
An Open Source OpenAPI Specification for Plex Media Server
|
||||
|
||||
Automation and SDKs provided by [Speakeasy](https://speakeasyapi.dev/)
|
||||
|
||||
## Documentation
|
||||
|
||||
[API Documentation](https://plexapi.dev)
|
||||
|
||||
## SDKs
|
||||
|
||||
The following SDKs are generated from the OpenAPI Specification. They are automatically generated and may not be fully tested. If you find any issues, please open an issue on the [main specification Repository](https://github.com/LukeHagar/plex-api-spec).
|
||||
|
||||
| Language | Repository | Releases | Other |
|
||||
| --------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------- |
|
||||
| Python | [GitHub](https://github.com/LukeHagar/plexpy) | [PyPI](https://pypi.org/project/plex-api-client/) | - |
|
||||
| JavaScript/TypeScript | [GitHub](https://github.com/LukeHagar/plexjs) | [NPM](https://www.npmjs.com/package/@lukehagar/plexjs) \ [JSR](https://jsr.io/@lukehagar/plexjs) | - |
|
||||
| Go | [GitHub](https://github.com/LukeHagar/plexgo) | [Releases](https://github.com/LukeHagar/plexgo/releases) | [GoDoc](https://pkg.go.dev/github.com/LukeHagar/plexgo) |
|
||||
| Ruby | [GitHub](https://github.com/LukeHagar/plexruby) | [Releases](https://github.com/LukeHagar/plexruby/releases) | - |
|
||||
| Swift | [GitHub](https://github.com/LukeHagar/plexswift) | [Releases](https://github.com/LukeHagar/plexswift/releases) | - |
|
||||
| PHP | [GitHub](https://github.com/LukeHagar/plexphp) | [Releases](https://github.com/LukeHagar/plexphp/releases) | - |
|
||||
| Java | [GitHub](https://github.com/LukeHagar/plexjava) | [Releases](https://github.com/LukeHagar/plexjava/releases) | - |
|
||||
| C# | [GitHub](https://github.com/LukeHagar/plexcsharp) | [Releases](https://github.com/LukeHagar/plexcsharp/releases) | -
|
||||
<!-- End Summary [summary] -->
|
||||
|
||||
<!-- Start Table of Contents [toc] -->
|
||||
## Table of Contents
|
||||
<!-- $toc-max-depth=2 -->
|
||||
* [github.com/LukeHagar/plexgo](#githubcomlukehagarplexgo)
|
||||
* [Plex Media Server OpenAPI Specification](#plex-media-server-openapi-specification)
|
||||
* [Documentation](#documentation)
|
||||
* [SDKs](#sdks)
|
||||
* [SDK Installation](#sdk-installation)
|
||||
* [SDK Example Usage](#sdk-example-usage)
|
||||
* [Available Resources and Operations](#available-resources-and-operations)
|
||||
* [Retries](#retries)
|
||||
* [Error Handling](#error-handling)
|
||||
* [Server Selection](#server-selection)
|
||||
* [Custom HTTP Client](#custom-http-client)
|
||||
* [Authentication](#authentication)
|
||||
* [Special Types](#special-types)
|
||||
* [Development](#development)
|
||||
* [Maturity](#maturity)
|
||||
* [Contributions](#contributions)
|
||||
|
||||
* [SDK Installation](#sdk-installation)
|
||||
* [SDK Example Usage](#sdk-example-usage)
|
||||
* [Available Resources and Operations](#available-resources-and-operations)
|
||||
* [Global Parameters](#global-parameters)
|
||||
* [Retries](#retries)
|
||||
* [Error Handling](#error-handling)
|
||||
* [Server Selection](#server-selection)
|
||||
* [Custom HTTP Client](#custom-http-client)
|
||||
* [Authentication](#authentication)
|
||||
* [Special Types](#special-types)
|
||||
<!-- End Table of Contents [toc] -->
|
||||
|
||||
<!-- Start SDK Installation [installation] -->
|
||||
@@ -52,16 +84,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -116,6 +144,7 @@ func main() {
|
||||
* [GetLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
|
||||
* [GetRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
|
||||
* [GetSearchLibrary](docs/sdks/library/README.md#getsearchlibrary) - Search Library
|
||||
* [GetSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
|
||||
* [GetMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey) - Get Metadata by RatingKey
|
||||
* [GetMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children
|
||||
* [GetTopWatchedContent](docs/sdks/library/README.md#gettopwatchedcontent) - Get Top Watched Content
|
||||
@@ -225,16 +254,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx, operations.WithRetries(
|
||||
retry.Config{
|
||||
Strategy: "backoff",
|
||||
@@ -268,6 +293,8 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithRetryConfig(
|
||||
retry.Config{
|
||||
@@ -281,14 +308,8 @@ func main() {
|
||||
RetryConnectionErrors: false,
|
||||
}),
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -304,13 +325,17 @@ func main() {
|
||||
<!-- Start Error Handling [errors] -->
|
||||
## Error Handling
|
||||
|
||||
Handling errors in this SDK should largely match your expectations. All operations return a response object or an error, they will never return both. When specified by the OpenAPI spec document, the SDK will return the appropriate subclass.
|
||||
Handling errors in this SDK should largely match your expectations. All operations return a response object or an error, they will never return both.
|
||||
|
||||
| Error Object | Status Code | Content Type |
|
||||
| ------------------------------------------- | ------------------------------------------- | ------------------------------------------- |
|
||||
| sdkerrors.GetServerCapabilitiesBadRequest | 400 | application/json |
|
||||
| sdkerrors.GetServerCapabilitiesUnauthorized | 401 | application/json |
|
||||
| sdkerrors.SDKError | 4xx-5xx | */* |
|
||||
By Default, an API error will return `sdkerrors.SDKError`. When custom error responses are specified for an operation, the SDK may also return their associated error. You can refer to respective *Errors* tables in SDK docs for more details on possible error types for each operation.
|
||||
|
||||
For example, the `GetServerCapabilities` function may return the following errors:
|
||||
|
||||
| Error Type | Status Code | Content Type |
|
||||
| ------------------------------------------- | ----------- | ---------------- |
|
||||
| sdkerrors.GetServerCapabilitiesBadRequest | 400 | application/json |
|
||||
| sdkerrors.GetServerCapabilitiesUnauthorized | 401 | application/json |
|
||||
| sdkerrors.SDKError | 4XX, 5XX | \*/\* |
|
||||
|
||||
### Example
|
||||
|
||||
@@ -326,16 +351,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
|
||||
@@ -365,58 +386,16 @@ func main() {
|
||||
<!-- Start Server Selection [server] -->
|
||||
## Server Selection
|
||||
|
||||
### Select Server by Index
|
||||
### Server Variables
|
||||
|
||||
You can override the default server globally using the `WithServerIndex` option when initializing the SDK client instance. The selected server will then be used as the default on the operations that use it. This table lists the indexes associated with the available servers:
|
||||
|
||||
| # | Server | Variables |
|
||||
| - | ------ | --------- |
|
||||
| 0 | `{protocol}://{ip}:{port}` | `protocol` (default is `https`), `ip` (default is `10.10.10.47`), `port` (default is `32400`) |
|
||||
|
||||
#### Example
|
||||
|
||||
```go
|
||||
package main
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
s := plexgo.New(
|
||||
plexgo.WithServerIndex(0),
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
if res.Object != nil {
|
||||
// handle response
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
#### Variables
|
||||
|
||||
Some of the server options above contain variables. If you want to set the values of those variables, the following options are provided for doing so:
|
||||
* `WithProtocol plexgo.ServerProtocol`
|
||||
* `WithIP string`
|
||||
* `WithPort string`
|
||||
The default server `{protocol}://{ip}:{port}` contains variables and is set to `https://10.10.10.47:32400` by default. To override default values, the following options are available when initializing the SDK client instance:
|
||||
* `WithProtocol(protocol ServerProtocol)`
|
||||
* `WithIP(ip string)`
|
||||
* `WithPort(port string)`
|
||||
|
||||
### Override Server URL Per-Client
|
||||
|
||||
The default server can also be overridden globally using the `WithServerURL` option when initializing the SDK client instance. For example:
|
||||
The default server can also be overridden globally using the `WithServerURL(serverURL string)` option when initializing the SDK client instance. For example:
|
||||
```go
|
||||
package main
|
||||
|
||||
@@ -427,17 +406,13 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithServerURL("{protocol}://{ip}:{port}"),
|
||||
plexgo.WithServerURL("https://10.10.10.47:32400"),
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -463,17 +438,13 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Plex.GetCompanionsData(ctx, operations.WithServerURL("https://plex.tv/api/v2/"))
|
||||
res, err := s.Plex.GetCompanionsData(ctx, operations.WithServerURL("https://plex.tv/api/v2"))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
@@ -521,9 +492,9 @@ This can be a convenient way to configure timeouts, cookies, proxies, custom hea
|
||||
|
||||
This SDK supports the following security scheme globally:
|
||||
|
||||
| Name | Type | Scheme |
|
||||
| ------------- | ------------- | ------------- |
|
||||
| `AccessToken` | apiKey | API key |
|
||||
| Name | Type | Scheme |
|
||||
| ------------- | ------ | ------- |
|
||||
| `AccessToken` | apiKey | API key |
|
||||
|
||||
You can configure it using the `WithSecurity` option when initializing the SDK client instance. For example:
|
||||
```go
|
||||
@@ -536,16 +507,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -584,64 +551,6 @@ d6 := types.MustDateFromString("2019-01-01") // returns types.Date and panics on
|
||||
```
|
||||
<!-- End Special Types [types] -->
|
||||
|
||||
<!-- Start Global Parameters [global-parameters] -->
|
||||
## Global Parameters
|
||||
|
||||
Certain parameters are configured globally. These parameters may be set on the SDK client instance itself during initialization. When configured as an option during SDK initialization, These global values will be used as defaults on the operations that use them. When such operations are called, there is a place in each to override the global value, if needed.
|
||||
|
||||
For example, you can set `ClientID` to `"gcgzw5rz2xovp84b4vha3a40"` at SDK initialization and then you do not have to pass the same value on calls to operations like `GetPin`. But if you want to do so you may, which will locally override the global setting. See the example code below for a demonstration.
|
||||
|
||||
|
||||
### Available Globals
|
||||
|
||||
The following global parameters are available.
|
||||
|
||||
| Name | Type | Required | Description |
|
||||
| ---- | ---- |:--------:| ----------- |
|
||||
| ClientID | string | | The unique identifier for the client application
|
||||
This is used to track the client application and its usage
|
||||
(UUID, serial number, or other number unique per device)
|
||||
|
|
||||
| ClientName | string | | The ClientName parameter. |
|
||||
| ClientVersion | string | | The ClientVersion parameter. |
|
||||
| ClientPlatform | string | | The ClientPlatform parameter. |
|
||||
| DeviceName | string | | The DeviceName parameter. |
|
||||
|
||||
|
||||
### Example
|
||||
|
||||
```go
|
||||
package main
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
s := plexgo.New(
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Plex.GetPin(ctx, operations.GetPinRequest{})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
if res.AuthPinContainer != nil {
|
||||
// handle response
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
<!-- End Global Parameters [global-parameters] -->
|
||||
|
||||
<!-- Placeholder for Future Speakeasy SDK Sections -->
|
||||
|
||||
# Development
|
||||
|
||||
80
RELEASES.md
80
RELEASES.md
@@ -923,3 +923,83 @@ Based on:
|
||||
- [go v0.13.0] .
|
||||
### Releases
|
||||
- [Go v0.13.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.13.0 - .
|
||||
|
||||
## 2024-10-01 00:10:01
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.405.6 (2.428.1) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.14.0] .
|
||||
### Releases
|
||||
- [Go v0.14.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.14.0 - .
|
||||
|
||||
## 2024-10-03 00:09:11
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.406.0 (2.429.0) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.15.0] .
|
||||
### Releases
|
||||
- [Go v0.15.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.15.0 - .
|
||||
|
||||
## 2024-10-04 00:09:04
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.406.0 (2.429.0) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.15.1] .
|
||||
### Releases
|
||||
- [Go v0.15.1] https://github.com/LukeHagar/plexgo/releases/tag/v0.15.1 - .
|
||||
|
||||
## 2024-11-12 00:08:55
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.438.1 (2.457.2) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.16.0] .
|
||||
### Releases
|
||||
- [Go v0.16.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.16.0 - .
|
||||
|
||||
## 2024-11-14 00:09:05
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.438.3 (2.457.9) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.16.1] .
|
||||
### Releases
|
||||
- [Go v0.16.1] https://github.com/LukeHagar/plexgo/releases/tag/v0.16.1 - .
|
||||
|
||||
## 2024-12-21 00:09:02
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.459.2 (2.483.1) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.17.0] .
|
||||
### Releases
|
||||
- [Go v0.17.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.17.0 - .
|
||||
|
||||
## 2024-12-23 00:09:31
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.459.2 (2.483.1) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.17.1] .
|
||||
### Releases
|
||||
- [Go v0.17.1] https://github.com/LukeHagar/plexgo/releases/tag/v0.17.1 - .
|
||||
|
||||
## 2025-01-25 00:08:47
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.476.0 (2.496.0) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.17.2] .
|
||||
### Releases
|
||||
- [Go v0.17.2] https://github.com/LukeHagar/plexgo/releases/tag/v0.17.2 - .
|
||||
8
USAGE.md
8
USAGE.md
@@ -9,16 +9,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("gcgzw5rz2xovp84b4vha3a40"),
|
||||
plexgo.WithClientName("Plex Web"),
|
||||
plexgo.WithClientVersion("4.133.0"),
|
||||
plexgo.WithClientPlatform("Chrome"),
|
||||
plexgo.WithDeviceName("Linux"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
110
activities.go
110
activities.go
@@ -10,8 +10,7 @@ import (
|
||||
"github.com/LukeHagar/plexgo/internal/utils"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"github.com/LukeHagar/plexgo/models/sdkerrors"
|
||||
"github.com/cenkalti/backoff/v4"
|
||||
"io"
|
||||
"github.com/LukeHagar/plexgo/retry"
|
||||
"net/http"
|
||||
"net/url"
|
||||
)
|
||||
@@ -55,7 +54,12 @@ func (s *Activities) GetServerActivities(ctx context.Context, opts ...operations
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := url.JoinPath(baseURL, "/activities")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -83,6 +87,10 @@ func (s *Activities) GetServerActivities(ctx context.Context, opts ...operations
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -113,7 +121,11 @@ func (s *Activities) GetServerActivities(ctx context.Context, opts ...operations
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -174,21 +186,11 @@ func (s *Activities) GetServerActivities(ctx context.Context, opts ...operations
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -200,17 +202,16 @@ func (s *Activities) GetServerActivities(ctx context.Context, opts ...operations
|
||||
|
||||
res.Object = &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -223,17 +224,16 @@ func (s *Activities) GetServerActivities(ctx context.Context, opts ...operations
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -246,28 +246,29 @@ func (s *Activities) GetServerActivities(ctx context.Context, opts ...operations
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
@@ -301,7 +302,12 @@ func (s *Activities) CancelServerActivities(ctx context.Context, activityUUID st
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := utils.GenerateURL(ctx, baseURL, "/activities/{activityUUID}", request, nil)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -329,6 +335,10 @@ func (s *Activities) CancelServerActivities(ctx context.Context, activityUUID st
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -359,7 +369,11 @@ func (s *Activities) CancelServerActivities(ctx context.Context, activityUUID st
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -420,22 +434,12 @@ func (s *Activities) CancelServerActivities(ctx context.Context, activityUUID st
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -448,17 +452,16 @@ func (s *Activities) CancelServerActivities(ctx context.Context, activityUUID st
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -471,28 +474,29 @@ func (s *Activities) CancelServerActivities(ctx context.Context, activityUUID st
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
|
||||
@@ -10,8 +10,7 @@ import (
|
||||
"github.com/LukeHagar/plexgo/internal/utils"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"github.com/LukeHagar/plexgo/models/sdkerrors"
|
||||
"github.com/cenkalti/backoff/v4"
|
||||
"io"
|
||||
"github.com/LukeHagar/plexgo/retry"
|
||||
"net/http"
|
||||
"net/url"
|
||||
)
|
||||
@@ -54,7 +53,12 @@ func (s *Authentication) GetTransientToken(ctx context.Context, type_ operations
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := url.JoinPath(baseURL, "/security/token")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -86,6 +90,10 @@ func (s *Authentication) GetTransientToken(ctx context.Context, type_ operations
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -116,7 +124,11 @@ func (s *Authentication) GetTransientToken(ctx context.Context, type_ operations
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -177,22 +189,12 @@ func (s *Authentication) GetTransientToken(ctx context.Context, type_ operations
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -205,17 +207,16 @@ func (s *Authentication) GetTransientToken(ctx context.Context, type_ operations
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -228,28 +229,29 @@ func (s *Authentication) GetTransientToken(ctx context.Context, type_ operations
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
@@ -284,7 +286,12 @@ func (s *Authentication) GetSourceConnectionInformation(ctx context.Context, sou
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := url.JoinPath(baseURL, "/security/resources")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -316,6 +323,10 @@ func (s *Authentication) GetSourceConnectionInformation(ctx context.Context, sou
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -346,7 +357,11 @@ func (s *Authentication) GetSourceConnectionInformation(ctx context.Context, sou
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -407,22 +422,12 @@ func (s *Authentication) GetSourceConnectionInformation(ctx context.Context, sou
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -435,17 +440,16 @@ func (s *Authentication) GetSourceConnectionInformation(ctx context.Context, sou
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -458,28 +462,29 @@ func (s *Authentication) GetSourceConnectionInformation(ctx context.Context, sou
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
@@ -499,7 +504,6 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
|
||||
o := operations.Options{}
|
||||
supportedOptions := []string{
|
||||
operations.SupportedOptionServerURL,
|
||||
operations.SupportedOptionRetries,
|
||||
operations.SupportedOptionTimeout,
|
||||
}
|
||||
@@ -542,6 +546,10 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -572,7 +580,11 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -633,21 +645,11 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -659,17 +661,16 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
|
||||
res.UserPlexAccount = &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -682,17 +683,16 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -705,28 +705,29 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
@@ -744,17 +745,8 @@ func (s *Authentication) PostUsersSignInData(ctx context.Context, request operat
|
||||
SecuritySource: nil,
|
||||
}
|
||||
|
||||
globals := operations.PostUsersSignInDataGlobals{
|
||||
ClientID: s.sdkConfiguration.Globals.ClientID,
|
||||
ClientName: s.sdkConfiguration.Globals.ClientName,
|
||||
DeviceName: s.sdkConfiguration.Globals.DeviceName,
|
||||
ClientVersion: s.sdkConfiguration.Globals.ClientVersion,
|
||||
ClientPlatform: s.sdkConfiguration.Globals.ClientPlatform,
|
||||
}
|
||||
|
||||
o := operations.Options{}
|
||||
supportedOptions := []string{
|
||||
operations.SupportedOptionServerURL,
|
||||
operations.SupportedOptionRetries,
|
||||
operations.SupportedOptionTimeout,
|
||||
}
|
||||
@@ -797,10 +789,14 @@ func (s *Authentication) PostUsersSignInData(ctx context.Context, request operat
|
||||
}
|
||||
req.Header.Set("Accept", "application/json")
|
||||
req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent)
|
||||
req.Header.Set("Content-Type", reqContentType)
|
||||
if reqContentType != "" {
|
||||
req.Header.Set("Content-Type", reqContentType)
|
||||
}
|
||||
|
||||
if err := utils.PopulateQueryParams(ctx, req, request, globals); err != nil {
|
||||
return nil, fmt.Errorf("error populating query params: %w", err)
|
||||
utils.PopulateHeaders(ctx, req, request, nil)
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
@@ -833,7 +829,11 @@ func (s *Authentication) PostUsersSignInData(ctx context.Context, request operat
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -894,21 +894,11 @@ func (s *Authentication) PostUsersSignInData(ctx context.Context, request operat
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 201:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -920,17 +910,16 @@ func (s *Authentication) PostUsersSignInData(ctx context.Context, request operat
|
||||
|
||||
res.UserPlexAccount = &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -943,17 +932,16 @@ func (s *Authentication) PostUsersSignInData(ctx context.Context, request operat
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -966,28 +954,29 @@ func (s *Authentication) PostUsersSignInData(ctx context.Context, request operat
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
|
||||
263
butler.go
263
butler.go
@@ -10,8 +10,7 @@ import (
|
||||
"github.com/LukeHagar/plexgo/internal/utils"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"github.com/LukeHagar/plexgo/models/sdkerrors"
|
||||
"github.com/cenkalti/backoff/v4"
|
||||
"io"
|
||||
"github.com/LukeHagar/plexgo/retry"
|
||||
"net/http"
|
||||
"net/url"
|
||||
)
|
||||
@@ -49,7 +48,12 @@ func (s *Butler) GetButlerTasks(ctx context.Context, opts ...operations.Option)
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := url.JoinPath(baseURL, "/butler")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -77,6 +81,10 @@ func (s *Butler) GetButlerTasks(ctx context.Context, opts ...operations.Option)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -107,7 +115,11 @@ func (s *Butler) GetButlerTasks(ctx context.Context, opts ...operations.Option)
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -168,21 +180,11 @@ func (s *Butler) GetButlerTasks(ctx context.Context, opts ...operations.Option)
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -194,17 +196,16 @@ func (s *Butler) GetButlerTasks(ctx context.Context, opts ...operations.Option)
|
||||
|
||||
res.Object = &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -217,17 +218,16 @@ func (s *Butler) GetButlerTasks(ctx context.Context, opts ...operations.Option)
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -240,28 +240,29 @@ func (s *Butler) GetButlerTasks(ctx context.Context, opts ...operations.Option)
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
@@ -295,7 +296,12 @@ func (s *Butler) StartAllTasks(ctx context.Context, opts ...operations.Option) (
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := url.JoinPath(baseURL, "/butler")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -323,6 +329,10 @@ func (s *Butler) StartAllTasks(ctx context.Context, opts ...operations.Option) (
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -353,7 +363,11 @@ func (s *Butler) StartAllTasks(ctx context.Context, opts ...operations.Option) (
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -414,22 +428,12 @@ func (s *Butler) StartAllTasks(ctx context.Context, opts ...operations.Option) (
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -442,17 +446,16 @@ func (s *Butler) StartAllTasks(ctx context.Context, opts ...operations.Option) (
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -465,28 +468,29 @@ func (s *Butler) StartAllTasks(ctx context.Context, opts ...operations.Option) (
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
@@ -516,7 +520,12 @@ func (s *Butler) StopAllTasks(ctx context.Context, opts ...operations.Option) (*
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := url.JoinPath(baseURL, "/butler")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -544,6 +553,10 @@ func (s *Butler) StopAllTasks(ctx context.Context, opts ...operations.Option) (*
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -574,7 +587,11 @@ func (s *Butler) StopAllTasks(ctx context.Context, opts ...operations.Option) (*
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -635,22 +652,12 @@ func (s *Butler) StopAllTasks(ctx context.Context, opts ...operations.Option) (*
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -663,17 +670,16 @@ func (s *Butler) StopAllTasks(ctx context.Context, opts ...operations.Option) (*
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -686,28 +692,29 @@ func (s *Butler) StopAllTasks(ctx context.Context, opts ...operations.Option) (*
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
@@ -745,7 +752,12 @@ func (s *Butler) StartTask(ctx context.Context, taskName operations.TaskName, op
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := utils.GenerateURL(ctx, baseURL, "/butler/{taskName}", request, nil)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -773,6 +785,10 @@ func (s *Butler) StartTask(ctx context.Context, taskName operations.TaskName, op
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -803,7 +819,11 @@ func (s *Butler) StartTask(ctx context.Context, taskName operations.TaskName, op
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -864,16 +884,6 @@ func (s *Butler) StartTask(ctx context.Context, taskName operations.TaskName, op
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
fallthrough
|
||||
@@ -881,7 +891,7 @@ func (s *Butler) StartTask(ctx context.Context, taskName operations.TaskName, op
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -894,17 +904,16 @@ func (s *Butler) StartTask(ctx context.Context, taskName operations.TaskName, op
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -917,28 +926,29 @@ func (s *Butler) StartTask(ctx context.Context, taskName operations.TaskName, op
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
@@ -972,7 +982,12 @@ func (s *Butler) StopTask(ctx context.Context, taskName operations.PathParamTask
|
||||
}
|
||||
}
|
||||
|
||||
baseURL := utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
var baseURL string
|
||||
if o.ServerURL == nil {
|
||||
baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails())
|
||||
} else {
|
||||
baseURL = *o.ServerURL
|
||||
}
|
||||
opURL, err := utils.GenerateURL(ctx, baseURL, "/butler/{taskName}", request, nil)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error generating URL: %w", err)
|
||||
@@ -1000,6 +1015,10 @@ func (s *Butler) StopTask(ctx context.Context, taskName operations.PathParamTask
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
if retryConfig == nil {
|
||||
@@ -1030,7 +1049,11 @@ func (s *Butler) StopTask(ctx context.Context, taskName operations.PathParamTask
|
||||
|
||||
req, err = s.sdkConfiguration.Hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req)
|
||||
if err != nil {
|
||||
return nil, backoff.Permanent(err)
|
||||
if retry.IsPermanentError(err) || retry.IsTemporaryError(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, retry.Permanent(err)
|
||||
}
|
||||
|
||||
httpRes, err := s.sdkConfiguration.Client.Do(req)
|
||||
@@ -1091,22 +1114,12 @@ func (s *Butler) StopTask(ctx context.Context, taskName operations.PathParamTask
|
||||
RawResponse: httpRes,
|
||||
}
|
||||
|
||||
getRawBody := func() ([]byte, error) {
|
||||
rawBody, err := io.ReadAll(httpRes.Body)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error reading response body: %w", err)
|
||||
}
|
||||
httpRes.Body.Close()
|
||||
httpRes.Body = io.NopCloser(bytes.NewBuffer(rawBody))
|
||||
return rawBody, nil
|
||||
}
|
||||
|
||||
switch {
|
||||
case httpRes.StatusCode == 200:
|
||||
case httpRes.StatusCode == 400:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -1119,17 +1132,16 @@ func (s *Butler) StopTask(ctx context.Context, taskName operations.PathParamTask
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 401:
|
||||
switch {
|
||||
case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`):
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -1142,30 +1154,31 @@ func (s *Butler) StopTask(ctx context.Context, taskName operations.PathParamTask
|
||||
out.RawResponse = httpRes
|
||||
return nil, &out
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
case httpRes.StatusCode == 404:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600:
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
default:
|
||||
rawBody, err := getRawBody()
|
||||
rawBody, err := utils.ConsumeRawBody(httpRes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, sdkerrors.NewSDKError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes)
|
||||
}
|
||||
|
||||
|
||||
2305
codeSamples.yaml
2305
codeSamples.yaml
File diff suppressed because it is too large
Load Diff
@@ -3,12 +3,12 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- |
|
||||
| `Protocol` | [operations.Protocol](../../models/operations/protocol.md) | :heavy_check_mark: | The protocol used for the connection (http, https, etc) |
|
||||
| `Address` | *string* | :heavy_check_mark: | The (ip) address or domain name used for the connection |
|
||||
| `Port` | *int* | :heavy_check_mark: | The port used for the connection |
|
||||
| `URI` | *string* | :heavy_check_mark: | The full URI of the connection |
|
||||
| `Local` | *bool* | :heavy_check_mark: | If the connection is local address |
|
||||
| `Relay` | *bool* | :heavy_check_mark: | If the connection is relayed through plex.direct |
|
||||
| `IPv6` | *bool* | :heavy_check_mark: | If the connection is using IPv6 |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- |
|
||||
| `Protocol` | [operations.Protocol](../../models/operations/protocol.md) | :heavy_check_mark: | The protocol used for the connection (http, https, etc) | http |
|
||||
| `Address` | *string* | :heavy_check_mark: | The (ip) address or domain name used for the connection | |
|
||||
| `Port` | *int* | :heavy_check_mark: | The port used for the connection | |
|
||||
| `URI` | *string* | :heavy_check_mark: | The full URI of the connection | |
|
||||
| `Local` | *bool* | :heavy_check_mark: | If the connection is local address | |
|
||||
| `Relay` | *bool* | :heavy_check_mark: | If the connection is relayed through plex.direct | |
|
||||
| `IPv6` | *bool* | :heavy_check_mark: | If the connection is using IPv6 | |
|
||||
11
docs/models/operations/enablecreditsmarkergeneration.md
Normal file
11
docs/models/operations/enablecreditsmarkergeneration.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# EnableCreditsMarkerGeneration
|
||||
|
||||
Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------------- | --------------------------------------------- |
|
||||
| `EnableCreditsMarkerGenerationLibraryDefault` | -1 |
|
||||
| `EnableCreditsMarkerGenerationDisabled` | 0 |
|
||||
12
docs/models/operations/episodesort.md
Normal file
12
docs/models/operations/episodesort.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# EpisodeSort
|
||||
|
||||
Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------- | --------------------------- |
|
||||
| `EpisodeSortLibraryDefault` | -1 |
|
||||
| `EpisodeSortOldestFirst` | 0 |
|
||||
| `EpisodeSortNewestFirst` | 1 |
|
||||
@@ -1,66 +0,0 @@
|
||||
# Features
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------------- | --------------------------------------------- |
|
||||
| `FeaturesAndroidDolbyVision` | Android - Dolby Vision |
|
||||
| `FeaturesAndroidPiP` | Android - PiP |
|
||||
| `FeaturesCuSunset` | CU Sunset |
|
||||
| `FeaturesHrkEnableEur` | HRK_enable_EUR |
|
||||
| `FeaturesTrebleShowFeatures` | TREBLE-show-features |
|
||||
| `FeaturesAdCountdownTimer` | ad-countdown-timer |
|
||||
| `FeaturesAdaptiveBitrate` | adaptive_bitrate |
|
||||
| `FeaturesAmazonLoopDebug` | amazon-loop-debug |
|
||||
| `FeaturesAvodAdAnalysis` | avod-ad-analysis |
|
||||
| `FeaturesAvodNewMedia` | avod-new-media |
|
||||
| `FeaturesBlacklistGetSignin` | blacklist_get_signin |
|
||||
| `FeaturesClientRadioStations` | client-radio-stations |
|
||||
| `FeaturesCloudflareTurnstileRequired` | cloudflare-turnstile-required |
|
||||
| `FeaturesCollections` | collections |
|
||||
| `FeaturesCommentsAndRepliesPushNotifications` | comments_and_replies_push_notifications |
|
||||
| `FeaturesCommunityAccessPlexTv` | community_access_plex_tv |
|
||||
| `FeaturesCompanionsSonos` | companions_sonos |
|
||||
| `FeaturesCustomHomeRemoval` | custom-home-removal |
|
||||
| `FeaturesDisableHomeUserFriendships` | disable_home_user_friendships |
|
||||
| `FeaturesDisableSharingFriendships` | disable_sharing_friendships |
|
||||
| `FeaturesDrmSupport` | drm_support |
|
||||
| `FeaturesExcludeRestrictions` | exclude restrictions |
|
||||
| `FeaturesFederatedAuth` | federated-auth |
|
||||
| `FeaturesFriendRequestPushNotifications` | friend_request_push_notifications |
|
||||
| `FeaturesGuidedUpgrade` | guided-upgrade |
|
||||
| `FeaturesHome` | home |
|
||||
| `FeaturesIncreasePasswordComplexity` | increase-password-complexity |
|
||||
| `FeaturesIos14PrivacyBanner` | ios14-privacy-banner |
|
||||
| `FeaturesIterableNotificationTokens` | iterable-notification-tokens |
|
||||
| `FeaturesKeepPaymentMethod` | keep-payment-method |
|
||||
| `FeaturesKevinBacon` | kevin-bacon |
|
||||
| `FeaturesKoreaConsent` | korea-consent |
|
||||
| `FeaturesLeIsrgRootX1` | le_isrg_root_x1 |
|
||||
| `FeaturesLetsEncrypt` | lets_encrypt |
|
||||
| `FeaturesLightningDvrPivot` | lightning-dvr-pivot |
|
||||
| `FeaturesLiveTvSupportIncompleteSegments` | live-tv-support-incomplete-segments |
|
||||
| `FeaturesLivetv` | livetv |
|
||||
| `FeaturesMetadataSearch` | metadata_search |
|
||||
| `FeaturesNewPlexPassPrices` | new_plex_pass_prices |
|
||||
| `FeaturesNewsProviderSunsetModal` | news-provider-sunset-modal |
|
||||
| `FeaturesPhotosFavorites` | photos-favorites |
|
||||
| `FeaturesPhotosMetadataEdition` | photos-metadata-edition |
|
||||
| `FeaturesPmsHealth` | pms_health |
|
||||
| `FeaturesRadio` | radio |
|
||||
| `FeaturesRateLimitClientToken` | rate-limit-client-token |
|
||||
| `FeaturesScrobblingServicePlexTv` | scrobbling-service-plex-tv |
|
||||
| `FeaturesSharedServerNotification` | shared_server_notification |
|
||||
| `FeaturesSharedSourceNotification` | shared_source_notification |
|
||||
| `FeaturesSigninWithApple` | signin_with_apple |
|
||||
| `FeaturesSpringServeAdProvider` | spring_serve_ad_provider |
|
||||
| `FeaturesTranscoderCache` | transcoder_cache |
|
||||
| `FeaturesTunerSharing` | tuner-sharing |
|
||||
| `FeaturesTwoFactorAuthentication` | two-factor-authentication |
|
||||
| `FeaturesUnsupportedtuners` | unsupportedtuners |
|
||||
| `FeaturesUpgrade3ds2` | upgrade-3ds2 |
|
||||
| `FeaturesVodSchema` | vod-schema |
|
||||
| `FeaturesVodCloudflare` | vod_cloudflare |
|
||||
| `FeaturesWatchTogetherInvite` | watch-together-invite |
|
||||
| `FeaturesWebServerDashboard` | web_server_dashboard |
|
||||
@@ -1,9 +1,12 @@
|
||||
# FlattenSeasons
|
||||
|
||||
Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------- | --------------------- |
|
||||
| `FlattenSeasonsFalse` | 0 |
|
||||
| `FlattenSeasonsTrue` | 1 |
|
||||
| Name | Value |
|
||||
| ------------------------------ | ------------------------------ |
|
||||
| `FlattenSeasonsLibraryDefault` | -1 |
|
||||
| `FlattenSeasonsHide` | 0 |
|
||||
| `FlattenSeasonsShow` | 1 |
|
||||
@@ -3,26 +3,26 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
|
||||
| `AllowSync` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `Art` | *string* | :heavy_check_mark: | N/A | /:/resources/movie-fanart.jpg |
|
||||
| `Composite` | *string* | :heavy_check_mark: | N/A | /library/sections/1/composite/1705615584 |
|
||||
| `Filters` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `Refreshing` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `Thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/movie.png |
|
||||
| `Key` | *string* | :heavy_check_mark: | N/A | 1 |
|
||||
| `Type` | *string* | :heavy_check_mark: | N/A | movie |
|
||||
| `Title` | *string* | :heavy_check_mark: | N/A | Movies |
|
||||
| `Agent` | *string* | :heavy_check_mark: | N/A | tv.plex.agents.movie |
|
||||
| `Scanner` | *string* | :heavy_check_mark: | N/A | Plex Movie |
|
||||
| `Language` | *string* | :heavy_check_mark: | N/A | en-US |
|
||||
| `UUID` | *string* | :heavy_check_mark: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 |
|
||||
| `UpdatedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `CreatedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `ScannedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `Content` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `Directory` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `ContentChangedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `Hidden` | *int* | :heavy_check_mark: | N/A | 0 |
|
||||
| `Location` | [][operations.Location](../../models/operations/location.md) | :heavy_check_mark: | N/A | |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `AllowSync` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `Art` | *string* | :heavy_check_mark: | N/A | /:/resources/movie-fanart.jpg |
|
||||
| `Composite` | *string* | :heavy_check_mark: | N/A | /library/sections/1/composite/1705615584 |
|
||||
| `Filters` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `Refreshing` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `Thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/movie.png |
|
||||
| `Key` | *string* | :heavy_check_mark: | N/A | 1 |
|
||||
| `Type` | *string* | :heavy_check_mark: | N/A | movie |
|
||||
| `Title` | *string* | :heavy_check_mark: | N/A | Movies |
|
||||
| `Agent` | *string* | :heavy_check_mark: | N/A | tv.plex.agents.movie |
|
||||
| `Scanner` | *string* | :heavy_check_mark: | N/A | Plex Movie |
|
||||
| `Language` | *string* | :heavy_check_mark: | N/A | en-US |
|
||||
| `UUID` | *string* | :heavy_check_mark: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 |
|
||||
| `UpdatedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `CreatedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `ScannedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `Content` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `Directory` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `ContentChangedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `Hidden` | *int* | :heavy_check_mark: | N/A | 0 |
|
||||
| `Location` | [][operations.GetAllLibrariesLocation](../../models/operations/getalllibrarieslocation.md) | :heavy_check_mark: | N/A | |
|
||||
9
docs/models/operations/getalllibrarieslocation.md
Normal file
9
docs/models/operations/getalllibrarieslocation.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# GetAllLibrariesLocation
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `ID` | *int* | :heavy_check_mark: | N/A | 1 |
|
||||
| `Path` | *string* | :heavy_check_mark: | N/A | /movies |
|
||||
@@ -10,4 +10,4 @@
|
||||
| `Height` | *int64* | :heavy_check_mark: | N/A | 396 |
|
||||
| `MinSize` | *int64* | :heavy_check_mark: | N/A | 1 |
|
||||
| `Upscale` | *int64* | :heavy_check_mark: | N/A | 1 |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | Plex Authentication Token | CV5xoxjTpFKUzBTShsaf |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | An authentication token, obtained from plex.tv | CV5xoxjTpFKUzBTShsaf |
|
||||
@@ -5,5 +5,5 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
||||
| `IncludeDetails` | [*operations.IncludeDetails](../../models/operations/includedetails.md) | :heavy_minus_sign: | Whether or not to include details for a section (types, filters, and sorts). <br/>Only exists for backwards compatibility, media providers other than the server libraries have it on always.<br/> | |
|
||||
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
||||
@@ -0,0 +1,11 @@
|
||||
# GetLibraryItemsEnableCreditsMarkerGeneration
|
||||
|
||||
Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------------------------------------------ | ------------------------------------------------------------ |
|
||||
| `GetLibraryItemsEnableCreditsMarkerGenerationLibraryDefault` | -1 |
|
||||
| `GetLibraryItemsEnableCreditsMarkerGenerationDisabled` | 0 |
|
||||
12
docs/models/operations/getlibraryitemsepisodesort.md
Normal file
12
docs/models/operations/getlibraryitemsepisodesort.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# GetLibraryItemsEpisodeSort
|
||||
|
||||
Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------------------------ | ------------------------------------------ |
|
||||
| `GetLibraryItemsEpisodeSortLibraryDefault` | -1 |
|
||||
| `GetLibraryItemsEpisodeSortOldestFirst` | 0 |
|
||||
| `GetLibraryItemsEpisodeSortNewestFirst` | 1 |
|
||||
@@ -1,9 +1,12 @@
|
||||
# GetLibraryItemsFlattenSeasons
|
||||
|
||||
Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------------------ | ------------------------------------ |
|
||||
| `GetLibraryItemsFlattenSeasonsFalse` | 0 |
|
||||
| `GetLibraryItemsFlattenSeasonsTrue` | 1 |
|
||||
| Name | Value |
|
||||
| --------------------------------------------- | --------------------------------------------- |
|
||||
| `GetLibraryItemsFlattenSeasonsLibraryDefault` | -1 |
|
||||
| `GetLibraryItemsFlattenSeasonsHide` | 0 |
|
||||
| `GetLibraryItemsFlattenSeasonsShow` | 1 |
|
||||
8
docs/models/operations/getlibraryitemslocation.md
Normal file
8
docs/models/operations/getlibraryitemslocation.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetLibraryItemsLocation
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `Path` | **string* | :heavy_minus_sign: | N/A | /TV Shows/House |
|
||||
@@ -6,19 +6,19 @@
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
|
||||
| `ID` | *int* | :heavy_check_mark: | N/A | 119534 |
|
||||
| `Duration` | *int* | :heavy_check_mark: | N/A | 11558112 |
|
||||
| `Bitrate` | *int* | :heavy_check_mark: | N/A | 25025 |
|
||||
| `Width` | *int* | :heavy_check_mark: | N/A | 3840 |
|
||||
| `Height` | *int* | :heavy_check_mark: | N/A | 2072 |
|
||||
| `AspectRatio` | *float64* | :heavy_check_mark: | N/A | 1.85 |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 11558112 |
|
||||
| `Bitrate` | **int* | :heavy_minus_sign: | N/A | 25025 |
|
||||
| `Width` | **int* | :heavy_minus_sign: | N/A | 3840 |
|
||||
| `Height` | **int* | :heavy_minus_sign: | N/A | 2072 |
|
||||
| `AspectRatio` | **float64* | :heavy_minus_sign: | N/A | 1.85 |
|
||||
| `AudioProfile` | **string* | :heavy_minus_sign: | N/A | dts |
|
||||
| `AudioChannels` | *int* | :heavy_check_mark: | N/A | 6 |
|
||||
| `AudioCodec` | *string* | :heavy_check_mark: | N/A | eac3 |
|
||||
| `VideoCodec` | *string* | :heavy_check_mark: | N/A | hevc |
|
||||
| `VideoResolution` | *string* | :heavy_check_mark: | N/A | 4k |
|
||||
| `AudioChannels` | **int* | :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_check_mark: | N/A | mkv |
|
||||
| `VideoFrameRate` | *string* | :heavy_check_mark: | N/A | 24p |
|
||||
| `VideoProfile` | *string* | :heavy_check_mark: | N/A | main 10 |
|
||||
| `VideoFrameRate` | **string* | :heavy_minus_sign: | N/A | 24p |
|
||||
| `VideoProfile` | **string* | :heavy_minus_sign: | N/A | main 10 |
|
||||
| `HasVoiceActivity` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `OptimizedForStreaming` | [*operations.GetLibraryItemsOptimizedForStreaming](../../models/operations/getlibraryitemsoptimizedforstreaming.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Has64bitOffsets` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
|
||||
@@ -29,5 +29,5 @@ The Meta object is only included in the response if the `includeMeta` parameter
|
||||
| `ViewGroup` | *string* | :heavy_check_mark: | N/A | movie |
|
||||
| `ViewMode` | **int* | :heavy_minus_sign: | N/A | 65592 |
|
||||
| `MixedParents` | **bool* | :heavy_minus_sign: | N/A | true |
|
||||
| `Metadata` | [][operations.GetLibraryItemsMetadata](../../models/operations/getlibraryitemsmetadata.md) | :heavy_check_mark: | N/A | |
|
||||
| `Metadata` | [][operations.GetLibraryItemsMetadata](../../models/operations/getlibraryitemsmetadata.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Meta` | [*operations.GetLibraryItemsMeta](../../models/operations/getlibraryitemsmeta.md) | :heavy_minus_sign: | The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.<br/> | |
|
||||
@@ -23,8 +23,10 @@
|
||||
| `Year` | **int* | :heavy_minus_sign: | N/A | 2022 |
|
||||
| `SeasonCount` | **int* | :heavy_minus_sign: | N/A | 2022 |
|
||||
| `Tagline` | **string* | :heavy_minus_sign: | N/A | Return to Pandora. |
|
||||
| `FlattenSeasons` | [*operations.GetLibraryItemsFlattenSeasons](../../models/operations/getlibraryitemsflattenseasons.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `ShowOrdering` | [*operations.GetLibraryItemsShowOrdering](../../models/operations/getlibraryitemsshowordering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show <br/>None = Library default, <br/>tmdbAiring = The Movie Database (Aired), <br/>aired = TheTVDB (Aired), <br/>dvd = TheTVDB (DVD), <br/>absolute = TheTVDB (Absolute)).<br/> | dvd |
|
||||
| `FlattenSeasons` | [*operations.GetLibraryItemsFlattenSeasons](../../models/operations/getlibraryitemsflattenseasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 |
|
||||
| `EpisodeSort` | [*operations.GetLibraryItemsEpisodeSort](../../models/operations/getlibraryitemsepisodesort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 |
|
||||
| `EnableCreditsMarkerGeneration` | [*operations.GetLibraryItemsEnableCreditsMarkerGeneration](../../models/operations/getlibraryitemsenablecreditsmarkergeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 |
|
||||
| `ShowOrdering` | [*operations.GetLibraryItemsShowOrdering](../../models/operations/getlibraryitemsshowordering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>tvdbAiring = TheTVDB (Aired),<br/>tvdbDvd = TheTVDB (DVD),<br/>tvdbAbsolute = TheTVDB (Absolute)).<br/> | tvdbDvd |
|
||||
| `Thumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 |
|
||||
| `Art` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 |
|
||||
| `Banner` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 |
|
||||
@@ -52,6 +54,7 @@
|
||||
| `Writer` | [][operations.GetLibraryItemsWriter](../../models/operations/getlibraryitemswriter.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Collection` | [][operations.GetLibraryItemsCollection](../../models/operations/getlibraryitemscollection.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Role` | [][operations.GetLibraryItemsRole](../../models/operations/getlibraryitemsrole.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Location` | [][operations.GetLibraryItemsLocation](../../models/operations/getlibraryitemslocation.md) | :heavy_minus_sign: | N/A | |
|
||||
| `MediaGUID` | [][operations.GetLibraryItemsMediaGUID](../../models/operations/getlibraryitemsmediaguid.md) | :heavy_minus_sign: | The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.<br/> | |
|
||||
| `UltraBlurColors` | [*operations.GetLibraryItemsUltraBlurColors](../../models/operations/getlibraryitemsultrablurcolors.md) | :heavy_minus_sign: | N/A | |
|
||||
| `MetaDataRating` | [][operations.GetLibraryItemsMetaDataRating](../../models/operations/getlibraryitemsmetadatarating.md) | :heavy_minus_sign: | N/A | |
|
||||
|
||||
@@ -7,14 +7,14 @@
|
||||
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
|
||||
| `ID` | *int* | :heavy_check_mark: | N/A | 119542 |
|
||||
| `Key` | *string* | :heavy_check_mark: | N/A | /library/parts/119542/1680457526/file.mkv |
|
||||
| `Duration` | *int* | :heavy_check_mark: | N/A | 11558112 |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 11558112 |
|
||||
| `File` | *string* | :heavy_check_mark: | 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` | *int64* | :heavy_check_mark: | N/A | 36158371307 |
|
||||
| `Container` | *string* | :heavy_check_mark: | The container format of the media file.<br/> | mkv |
|
||||
| `AudioProfile` | **string* | :heavy_minus_sign: | N/A | dts |
|
||||
| `Has64bitOffsets` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `OptimizedForStreaming` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `VideoProfile` | *string* | :heavy_check_mark: | N/A | main 10 |
|
||||
| `VideoProfile` | **string* | :heavy_minus_sign: | N/A | main 10 |
|
||||
| `Indexes` | **string* | :heavy_minus_sign: | N/A | sd |
|
||||
| `HasThumbnail` | [*operations.GetLibraryItemsHasThumbnail](../../models/operations/getlibraryitemshasthumbnail.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Stream` | [][operations.GetLibraryItemsStream](../../models/operations/getlibraryitemsstream.md) | :heavy_minus_sign: | N/A | |
|
||||
@@ -17,3 +17,6 @@ E.g. A movie library will not return anything with type 3 as there are no season
|
||||
| `GetLibraryItemsQueryParamTypeTvShow` | 2 |
|
||||
| `GetLibraryItemsQueryParamTypeSeason` | 3 |
|
||||
| `GetLibraryItemsQueryParamTypeEpisode` | 4 |
|
||||
| `GetLibraryItemsQueryParamTypeAudio` | 8 |
|
||||
| `GetLibraryItemsQueryParamTypeAlbum` | 9 |
|
||||
| `GetLibraryItemsQueryParamTypeTrack` | 10 |
|
||||
@@ -5,10 +5,10 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
||||
| `Tag` | [operations.Tag](../../models/operations/tag.md) | :heavy_check_mark: | A key representing a specific tag within the section. | |
|
||||
| `IncludeGuids` | [*operations.IncludeGuids](../../models/operations/includeguids.md) | :heavy_minus_sign: | Adds the Guids object to the response<br/> | 1 |
|
||||
| `Type` | [*operations.GetLibraryItemsQueryParamType](../../models/operations/getlibraryitemsqueryparamtype.md) | :heavy_minus_sign: | The type of media to retrieve.<br/>1 = movie<br/>2 = show<br/>3 = season<br/>4 = episode<br/>E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries<br/> | 2 |
|
||||
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
||||
| `IncludeMeta` | [*operations.GetLibraryItemsQueryParamIncludeMeta](../../models/operations/getlibraryitemsqueryparamincludemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response<br/> | 1 |
|
||||
| `XPlexContainerStart` | **int* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.<br/>If the number of items exceeds the limit, the response will be paginated.<br/>By default this is 0<br/> | 0 |
|
||||
| `XPlexContainerSize` | **int* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.<br/>If the number of items exceeds the limit, the response will be paginated.<br/>By default this is 50<br/> | 50 |
|
||||
@@ -3,18 +3,18 @@
|
||||
Setting that indicates the episode ordering for the show
|
||||
None = Library default,
|
||||
tmdbAiring = The Movie Database (Aired),
|
||||
aired = TheTVDB (Aired),
|
||||
dvd = TheTVDB (DVD),
|
||||
absolute = TheTVDB (Absolute)).
|
||||
tvdbAiring = TheTVDB (Aired),
|
||||
tvdbDvd = TheTVDB (DVD),
|
||||
tvdbAbsolute = TheTVDB (Absolute)).
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------- | --------------------------------------- |
|
||||
| `GetLibraryItemsShowOrderingNone` | None |
|
||||
| `GetLibraryItemsShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `GetLibraryItemsShowOrderingAired` | aired |
|
||||
| `GetLibraryItemsShowOrderingDvd` | dvd |
|
||||
| `GetLibraryItemsShowOrderingAbsolute` | absolute |
|
||||
| Name | Value |
|
||||
| ----------------------------------------- | ----------------------------------------- |
|
||||
| `GetLibraryItemsShowOrderingNone` | None |
|
||||
| `GetLibraryItemsShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `GetLibraryItemsShowOrderingTvdbAiring` | tvdbAiring |
|
||||
| `GetLibraryItemsShowOrderingTvdbDvd` | tvdbDvd |
|
||||
| `GetLibraryItemsShowOrderingTvdbAbsolute` | tvdbAbsolute |
|
||||
@@ -3,6 +3,6 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------- | ------------------------- | ------------------------- | ------------------------- | ------------------------- |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | Plex Authentication Token | CV5xoxjTpFKUzBTShsaf |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | An authentication token, obtained from plex.tv | CV5xoxjTpFKUzBTShsaf |
|
||||
@@ -14,6 +14,11 @@
|
||||
| `LibrarySectionTitle` | **string* | :heavy_minus_sign: | N/A | Movies |
|
||||
| `LibrarySectionID` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `LibrarySectionKey` | **string* | :heavy_minus_sign: | N/A | /library/sections/1 |
|
||||
| `GrandparentTitle` | **string* | :heavy_minus_sign: | The name of the album artist for the track when audio, and the name of the TV show for the episode when video. | |
|
||||
| `ParentTitle` | **string* | :heavy_minus_sign: | The name of the album for the track when audio, and the name of the season for the episode when TV show. | |
|
||||
| `OriginalTitle` | **string* | :heavy_minus_sign: | The orginal untranslated name of the media item when non-english. | |
|
||||
| `Index` | **int64* | :heavy_minus_sign: | The index starting from 0 of this media item in the MetaData array. | |
|
||||
| `ParentIndex` | **int64* | :heavy_minus_sign: | The parent index starting from 0 of this media item in the parent MetaData array. | |
|
||||
| `ContentRating` | **string* | :heavy_minus_sign: | N/A | PG-13 |
|
||||
| `Summary` | **string* | :heavy_minus_sign: | N/A | Serenity continues the story of the TV series it was based upon ("Firefly"). River Tam had a secret - one in which she's not even aware - so dangerous, no one's safe, as an Alliance operative's sent to capture her, and all others are considered irrelevant to his job. |
|
||||
| `Rating` | **float64* | :heavy_minus_sign: | N/A | 8.2 |
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
| `Title` | **string* | :heavy_minus_sign: | N/A | Season 2 |
|
||||
| `ParentKey` | **string* | :heavy_minus_sign: | N/A | /library/metadata/30072 |
|
||||
| `ParentTitle` | **string* | :heavy_minus_sign: | N/A | Reacher |
|
||||
| `Summary` | **string* | :heavy_minus_sign: | N/A | Based on"Bad Luck and Trouble," when members of Reacher's old military unit start turning up dead, Reacher has just one thing on his mind—revenge. |
|
||||
| `Summary` | **string* | :heavy_minus_sign: | N/A | Based on"Bad Luck and Trouble," when members of Reacher's old military unit start turning up dead, Reacher has just one thing on his mind-revenge. |
|
||||
| `Index` | **int* | :heavy_minus_sign: | N/A | 2 |
|
||||
| `ParentIndex` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `ViewCount` | **int* | :heavy_minus_sign: | N/A | 11 |
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
# GetPinGlobals
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 |
|
||||
| `ClientName` | **string* | :heavy_minus_sign: | N/A | Plex Web |
|
||||
| `DeviceName` | **string* | :heavy_minus_sign: | N/A | Linux |
|
||||
| `ClientVersion` | **string* | :heavy_minus_sign: | N/A | 4.133.0 |
|
||||
| `ClientPlatform` | **string* | :heavy_minus_sign: | N/A | Chrome |
|
||||
@@ -3,11 +3,11 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `Strong` | **bool* | :heavy_minus_sign: | Determines the kind of code returned by the API call<br/>Strong codes are used for Pin authentication flows<br/>Non-Strong codes are used for `Plex.tv/link`<br/> | |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 |
|
||||
| `ClientName` | **string* | :heavy_minus_sign: | N/A | Plex Web |
|
||||
| `DeviceName` | **string* | :heavy_minus_sign: | N/A | Linux |
|
||||
| `ClientVersion` | **string* | :heavy_minus_sign: | N/A | 4.133.0 |
|
||||
| `ClientPlatform` | **string* | :heavy_minus_sign: | N/A | Chrome |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `Strong` | **bool* | :heavy_minus_sign: | Determines the kind of code returned by the API call<br/>Strong codes are used for Pin authentication flows<br/>Non-Strong codes are used for `Plex.tv/link`<br/> | |
|
||||
| `ClientID` | *string* | :heavy_check_mark: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `ClientName` | **string* | :heavy_minus_sign: | The name of the client application. (Plex Web, Plex Media Server, etc.) | Plex for Roku |
|
||||
| `DeviceNickname` | **string* | :heavy_minus_sign: | A relatively friendly name for the client device | Roku 3 |
|
||||
| `ClientVersion` | **string* | :heavy_minus_sign: | The version of the client application. | 2.4.1 |
|
||||
| `Platform` | **string* | :heavy_minus_sign: | The platform of the client application. | Roku |
|
||||
@@ -17,3 +17,6 @@ E.g. A movie library will not return anything with type 3 as there are no season
|
||||
| `GetPlaylistContentsQueryParamTypeTvShow` | 2 |
|
||||
| `GetPlaylistContentsQueryParamTypeSeason` | 3 |
|
||||
| `GetPlaylistContentsQueryParamTypeEpisode` | 4 |
|
||||
| `GetPlaylistContentsQueryParamTypeAudio` | 8 |
|
||||
| `GetPlaylistContentsQueryParamTypeAlbum` | 9 |
|
||||
| `GetPlaylistContentsQueryParamTypeTrack` | 10 |
|
||||
@@ -23,8 +23,10 @@
|
||||
| `Year` | **int* | :heavy_minus_sign: | N/A | 2022 |
|
||||
| `SeasonCount` | **int* | :heavy_minus_sign: | N/A | 2022 |
|
||||
| `Tagline` | **string* | :heavy_minus_sign: | N/A | Return to Pandora. |
|
||||
| `FlattenSeasons` | [*operations.FlattenSeasons](../../models/operations/flattenseasons.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `ShowOrdering` | [*operations.ShowOrdering](../../models/operations/showordering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show <br/>None = Library default, <br/>tmdbAiring = The Movie Database (Aired), <br/>aired = TheTVDB (Aired), <br/>dvd = TheTVDB (DVD), <br/>absolute = TheTVDB (Absolute)).<br/> | dvd |
|
||||
| `FlattenSeasons` | [*operations.FlattenSeasons](../../models/operations/flattenseasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 |
|
||||
| `EpisodeSort` | [*operations.EpisodeSort](../../models/operations/episodesort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 |
|
||||
| `EnableCreditsMarkerGeneration` | [*operations.EnableCreditsMarkerGeneration](../../models/operations/enablecreditsmarkergeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 |
|
||||
| `ShowOrdering` | [*operations.ShowOrdering](../../models/operations/showordering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>tvdbAiring = TheTVDB (Aired),<br/>tvdbDvd = TheTVDB (DVD),<br/>tvdbAbsolute = TheTVDB (Absolute)).<br/> | tvdbDvd |
|
||||
| `Thumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 |
|
||||
| `Art` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 |
|
||||
| `Banner` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 |
|
||||
@@ -52,6 +54,7 @@
|
||||
| `Writer` | [][operations.Writer](../../models/operations/writer.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Collection` | [][operations.Collection](../../models/operations/collection.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Role` | [][operations.Role](../../models/operations/role.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Location` | [][operations.Location](../../models/operations/location.md) | :heavy_minus_sign: | N/A | |
|
||||
| `MediaGUID` | [][operations.MediaGUID](../../models/operations/mediaguid.md) | :heavy_minus_sign: | The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.<br/> | |
|
||||
| `UltraBlurColors` | [*operations.UltraBlurColors](../../models/operations/ultrablurcolors.md) | :heavy_minus_sign: | N/A | |
|
||||
| `MetaDataRating` | [][operations.MetaDataRating](../../models/operations/metadatarating.md) | :heavy_minus_sign: | N/A | |
|
||||
|
||||
@@ -5,5 +5,5 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
|
||||
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
||||
| `Force` | [*operations.Force](../../models/operations/force.md) | :heavy_minus_sign: | Force the refresh even if the library is already being refreshed. | 0 |
|
||||
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
|
||||
@@ -0,0 +1,8 @@
|
||||
# GetSearchAllLibrariesCollection
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `Tag` | **string* | :heavy_minus_sign: | N/A | Working NL Subs |
|
||||
8
docs/models/operations/getsearchalllibrariescountry.md
Normal file
8
docs/models/operations/getsearchalllibrariescountry.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetSearchAllLibrariesCountry
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ |
|
||||
| `Tag` | **string* | :heavy_minus_sign: | N/A | United States of America |
|
||||
8
docs/models/operations/getsearchalllibrariesdirector.md
Normal file
8
docs/models/operations/getsearchalllibrariesdirector.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetSearchAllLibrariesDirector
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `Tag` | **string* | :heavy_minus_sign: | N/A | James Cameron |
|
||||
@@ -0,0 +1,11 @@
|
||||
# GetSearchAllLibrariesEnableCreditsMarkerGeneration
|
||||
|
||||
Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------------------------------------------------ | ------------------------------------------------------------------ |
|
||||
| `GetSearchAllLibrariesEnableCreditsMarkerGenerationLibraryDefault` | -1 |
|
||||
| `GetSearchAllLibrariesEnableCreditsMarkerGenerationDisabled` | 0 |
|
||||
12
docs/models/operations/getsearchalllibrariesepisodesort.md
Normal file
12
docs/models/operations/getsearchalllibrariesepisodesort.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# GetSearchAllLibrariesEpisodeSort
|
||||
|
||||
Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------------------------------ | ------------------------------------------------ |
|
||||
| `GetSearchAllLibrariesEpisodeSortLibraryDefault` | -1 |
|
||||
| `GetSearchAllLibrariesEpisodeSortOldestFirst` | 0 |
|
||||
| `GetSearchAllLibrariesEpisodeSortNewestFirst` | 1 |
|
||||
@@ -0,0 +1,12 @@
|
||||
# GetSearchAllLibrariesFlattenSeasons
|
||||
|
||||
Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------------------- | --------------------------------------------------- |
|
||||
| `GetSearchAllLibrariesFlattenSeasonsLibraryDefault` | -1 |
|
||||
| `GetSearchAllLibrariesFlattenSeasonsHide` | 0 |
|
||||
| `GetSearchAllLibrariesFlattenSeasonsShow` | 1 |
|
||||
8
docs/models/operations/getsearchalllibrariesgenre.md
Normal file
8
docs/models/operations/getsearchalllibrariesgenre.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetSearchAllLibrariesGenre
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `Tag` | **string* | :heavy_minus_sign: | N/A | Adventure |
|
||||
@@ -0,0 +1,9 @@
|
||||
# GetSearchAllLibrariesHasThumbnail
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ---------------------------------------- | ---------------------------------------- |
|
||||
| `GetSearchAllLibrariesHasThumbnailFalse` | 0 |
|
||||
| `GetSearchAllLibrariesHasThumbnailTrue` | 1 |
|
||||
10
docs/models/operations/getsearchalllibrariesimage.md
Normal file
10
docs/models/operations/getsearchalllibrariesimage.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetSearchAllLibrariesImage
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||
| `Alt` | *string* | :heavy_check_mark: | N/A | Episode 1 |
|
||||
| `Type` | [operations.GetSearchAllLibrariesLibraryType](../../models/operations/getsearchalllibrarieslibrarytype.md) | :heavy_check_mark: | N/A | background |
|
||||
| `URL` | *string* | :heavy_check_mark: | N/A | /library/metadata/45521/thumb/1644710589 |
|
||||
11
docs/models/operations/getsearchalllibrarieslibrarytype.md
Normal file
11
docs/models/operations/getsearchalllibrarieslibrarytype.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetSearchAllLibrariesLibraryType
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------------- | --------------------------------------------- |
|
||||
| `GetSearchAllLibrariesLibraryTypeCoverPoster` | coverPoster |
|
||||
| `GetSearchAllLibrariesLibraryTypeBackground` | background |
|
||||
| `GetSearchAllLibrariesLibraryTypeSnapshot` | snapshot |
|
||||
| `GetSearchAllLibrariesLibraryTypeClearLogo` | clearLogo |
|
||||
8
docs/models/operations/getsearchalllibrarieslocation.md
Normal file
8
docs/models/operations/getsearchalllibrarieslocation.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetSearchAllLibrariesLocation
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `Path` | **string* | :heavy_minus_sign: | N/A | /TV Shows/House |
|
||||
25
docs/models/operations/getsearchalllibrariesmedia.md
Normal file
25
docs/models/operations/getsearchalllibrariesmedia.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# GetSearchAllLibrariesMedia
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `ID` | *int* | :heavy_check_mark: | N/A | 119534 |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 11558112 |
|
||||
| `Bitrate` | **int* | :heavy_minus_sign: | N/A | 25025 |
|
||||
| `Width` | **int* | :heavy_minus_sign: | N/A | 3840 |
|
||||
| `Height` | **int* | :heavy_minus_sign: | N/A | 2072 |
|
||||
| `AspectRatio` | **float64* | :heavy_minus_sign: | N/A | 1.85 |
|
||||
| `AudioProfile` | **string* | :heavy_minus_sign: | N/A | dts |
|
||||
| `AudioChannels` | **int* | :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_check_mark: | N/A | mkv |
|
||||
| `VideoFrameRate` | **string* | :heavy_minus_sign: | N/A | 24p |
|
||||
| `VideoProfile` | **string* | :heavy_minus_sign: | N/A | main 10 |
|
||||
| `HasVoiceActivity` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `OptimizedForStreaming` | [*operations.GetSearchAllLibrariesOptimizedForStreaming](../../models/operations/getsearchalllibrariesoptimizedforstreaming.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Has64bitOffsets` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `Part` | [][operations.GetSearchAllLibrariesPart](../../models/operations/getsearchalllibrariespart.md) | :heavy_check_mark: | N/A | |
|
||||
@@ -0,0 +1,9 @@
|
||||
# GetSearchAllLibrariesMediaContainer
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- |
|
||||
| `Size` | *float64* | :heavy_check_mark: | N/A |
|
||||
| `SearchResult` | [][operations.SearchResult](../../models/operations/searchresult.md) | :heavy_check_mark: | N/A |
|
||||
8
docs/models/operations/getsearchalllibrariesmediaguid.md
Normal file
8
docs/models/operations/getsearchalllibrariesmediaguid.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetSearchAllLibrariesMediaGUID
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
|
||||
| `ID` | *string* | :heavy_check_mark: | Can be one of the following formats:<br/>imdb://tt13015952, tmdb://2434012, tvdb://7945991<br/> | imdb://tt13015952 |
|
||||
83
docs/models/operations/getsearchalllibrariesmetadata.md
Normal file
83
docs/models/operations/getsearchalllibrariesmetadata.md
Normal file
@@ -0,0 +1,83 @@
|
||||
# GetSearchAllLibrariesMetadata
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `RatingKey` | *string* | :heavy_check_mark: | The rating key (Media ID) of this media item.<br/>Note: This is always an integer, but is represented as a string in the API.<br/> | 58683 |
|
||||
| `Key` | *string* | :heavy_check_mark: | N/A | /library/metadata/58683 |
|
||||
| `GUID` | *string* | :heavy_check_mark: | N/A | plex://movie/5d7768ba96b655001fdc0408 |
|
||||
| `Studio` | **string* | :heavy_minus_sign: | N/A | 20th Century Studios |
|
||||
| `SkipChildren` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `LibrarySectionID` | **int64* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `LibrarySectionTitle` | **string* | :heavy_minus_sign: | N/A | Movies |
|
||||
| `LibrarySectionKey` | **string* | :heavy_minus_sign: | N/A | /library/sections/1 |
|
||||
| `Type` | [operations.GetSearchAllLibrariesType](../../models/operations/getsearchalllibrariestype.md) | :heavy_check_mark: | The type of media content<br/> | movie |
|
||||
| `Title` | *string* | :heavy_check_mark: | N/A | Avatar: The Way of Water |
|
||||
| `Slug` | **string* | :heavy_minus_sign: | N/A | 4-for-texas |
|
||||
| `ContentRating` | **string* | :heavy_minus_sign: | N/A | PG-13 |
|
||||
| `Summary` | *string* | :heavy_check_mark: | 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` | **float64* | :heavy_minus_sign: | N/A | 7.6 |
|
||||
| `AudienceRating` | **float64* | :heavy_minus_sign: | N/A | 9.2 |
|
||||
| `Year` | **int* | :heavy_minus_sign: | N/A | 2022 |
|
||||
| `SeasonCount` | **int* | :heavy_minus_sign: | N/A | 2022 |
|
||||
| `Tagline` | **string* | :heavy_minus_sign: | N/A | Return to Pandora. |
|
||||
| `FlattenSeasons` | [*operations.GetSearchAllLibrariesFlattenSeasons](../../models/operations/getsearchalllibrariesflattenseasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 |
|
||||
| `EpisodeSort` | [*operations.GetSearchAllLibrariesEpisodeSort](../../models/operations/getsearchalllibrariesepisodesort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 |
|
||||
| `EnableCreditsMarkerGeneration` | [*operations.GetSearchAllLibrariesEnableCreditsMarkerGeneration](../../models/operations/getsearchalllibrariesenablecreditsmarkergeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 |
|
||||
| `ShowOrdering` | [*operations.GetSearchAllLibrariesShowOrdering](../../models/operations/getsearchalllibrariesshowordering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>tvdbAiring = TheTVDB (Aired),<br/>tvdbDvd = TheTVDB (DVD),<br/>tvdbAbsolute = TheTVDB (Absolute)).<br/> | tvdbDvd |
|
||||
| `Thumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 |
|
||||
| `Art` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 |
|
||||
| `Banner` | **string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 11558112 |
|
||||
| `OriginallyAvailableAt` | [*types.Date](../../types/date.md) | :heavy_minus_sign: | N/A | 2022-12-14 00:00:00 +0000 UTC |
|
||||
| `AddedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `UpdatedAt` | **int64* | :heavy_minus_sign: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `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 |
|
||||
| `ParentSlug` | **string* | :heavy_minus_sign: | N/A | alice-in-borderland-2020 |
|
||||
| `GrandparentSlug` | **string* | :heavy_minus_sign: | N/A | alice-in-borderland-2020 |
|
||||
| `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.GetSearchAllLibrariesMedia](../../models/operations/getsearchalllibrariesmedia.md) | :heavy_minus_sign: | The Media object is only included when type query is `4` or higher.<br/> | |
|
||||
| `Genre` | [][operations.GetSearchAllLibrariesGenre](../../models/operations/getsearchalllibrariesgenre.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Country` | [][operations.GetSearchAllLibrariesCountry](../../models/operations/getsearchalllibrariescountry.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Director` | [][operations.GetSearchAllLibrariesDirector](../../models/operations/getsearchalllibrariesdirector.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Writer` | [][operations.GetSearchAllLibrariesWriter](../../models/operations/getsearchalllibrarieswriter.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Collection` | [][operations.GetSearchAllLibrariesCollection](../../models/operations/getsearchalllibrariescollection.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Role` | [][operations.GetSearchAllLibrariesRole](../../models/operations/getsearchalllibrariesrole.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Location` | [][operations.GetSearchAllLibrariesLocation](../../models/operations/getsearchalllibrarieslocation.md) | :heavy_minus_sign: | N/A | |
|
||||
| `MediaGUID` | [][operations.GetSearchAllLibrariesMediaGUID](../../models/operations/getsearchalllibrariesmediaguid.md) | :heavy_minus_sign: | The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.<br/> | |
|
||||
| `UltraBlurColors` | [*operations.GetSearchAllLibrariesUltraBlurColors](../../models/operations/getsearchalllibrariesultrablurcolors.md) | :heavy_minus_sign: | N/A | |
|
||||
| `MetaDataRating` | [][operations.GetSearchAllLibrariesMetaDataRating](../../models/operations/getsearchalllibrariesmetadatarating.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Image` | [][operations.GetSearchAllLibrariesImage](../../models/operations/getsearchalllibrariesimage.md) | :heavy_minus_sign: | N/A | |
|
||||
| `TitleSort` | **string* | :heavy_minus_sign: | N/A | Whale |
|
||||
| `ViewCount` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `LastViewedAt` | **int* | :heavy_minus_sign: | N/A | 1682752242 |
|
||||
| `OriginalTitle` | **string* | :heavy_minus_sign: | N/A | 映画 ブラッククローバー 魔法帝の剣 |
|
||||
| `ViewOffset` | **int* | :heavy_minus_sign: | N/A | 5222500 |
|
||||
| `SkipCount` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Index` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Theme` | **string* | :heavy_minus_sign: | N/A | /library/metadata/1/theme/1705636920 |
|
||||
| `LeafCount` | **int* | :heavy_minus_sign: | N/A | 14 |
|
||||
| `ViewedLeafCount` | **int* | :heavy_minus_sign: | N/A | 0 |
|
||||
| `ChildCount` | **int* | :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: | The rating key of the parent item.<br/> | 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` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `ParentYear` | **int* | :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 |
|
||||
@@ -0,0 +1,10 @@
|
||||
# GetSearchAllLibrariesMetaDataRating
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- |
|
||||
| `Image` | *string* | :heavy_check_mark: | A URI or path to the rating image. | themoviedb://image.rating |
|
||||
| `Value` | *float32* | :heavy_check_mark: | The value of the rating. | 3 |
|
||||
| `Type` | *string* | :heavy_check_mark: | The type of rating (e.g., audience, critic). | audience |
|
||||
@@ -0,0 +1,9 @@
|
||||
# GetSearchAllLibrariesOptimizedForStreaming
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------------------- | --------------------------------------------------- |
|
||||
| `GetSearchAllLibrariesOptimizedForStreamingDisable` | 0 |
|
||||
| `GetSearchAllLibrariesOptimizedForStreamingEnable` | 1 |
|
||||
20
docs/models/operations/getsearchalllibrariespart.md
Normal file
20
docs/models/operations/getsearchalllibrariespart.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# GetSearchAllLibrariesPart
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
|
||||
| `ID` | *int* | :heavy_check_mark: | N/A | 119542 |
|
||||
| `Key` | *string* | :heavy_check_mark: | N/A | /library/parts/119542/1680457526/file.mkv |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 11558112 |
|
||||
| `File` | *string* | :heavy_check_mark: | 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` | *int64* | :heavy_check_mark: | N/A | 36158371307 |
|
||||
| `Container` | *string* | :heavy_check_mark: | The container format of the media file.<br/> | mkv |
|
||||
| `AudioProfile` | **string* | :heavy_minus_sign: | N/A | dts |
|
||||
| `Has64bitOffsets` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `OptimizedForStreaming` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `VideoProfile` | **string* | :heavy_minus_sign: | N/A | main 10 |
|
||||
| `Indexes` | **string* | :heavy_minus_sign: | N/A | sd |
|
||||
| `HasThumbnail` | [*operations.GetSearchAllLibrariesHasThumbnail](../../models/operations/getsearchalllibrarieshasthumbnail.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Stream` | [][operations.GetSearchAllLibrariesStream](../../models/operations/getsearchalllibrariesstream.md) | :heavy_minus_sign: | N/A | |
|
||||
13
docs/models/operations/getsearchalllibrariesrequest.md
Normal file
13
docs/models/operations/getsearchalllibrariesrequest.md
Normal file
@@ -0,0 +1,13 @@
|
||||
# GetSearchAllLibrariesRequest
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
||||
| `Query` | *string* | :heavy_check_mark: | The search query term. | |
|
||||
| `ClientID` | *string* | :heavy_check_mark: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `Limit` | **int64* | :heavy_minus_sign: | Limit the number of results returned. | |
|
||||
| `SearchTypes` | [][operations.SearchTypes](../../models/operations/searchtypes.md) | :heavy_minus_sign: | A comma-separated list of search types to include. Valid values are: movies, music, otherVideos, people, tv.<br/> | movies,music,otherVideos,people,tv |
|
||||
| `IncludeCollections` | [*operations.QueryParamIncludeCollections](../../models/operations/queryparamincludecollections.md) | :heavy_minus_sign: | Whether to include collections in the search results. | 1 |
|
||||
| `IncludeExternalMedia` | [*operations.QueryParamIncludeExternalMedia](../../models/operations/queryparamincludeexternalmedia.md) | :heavy_minus_sign: | Whether to include external media in the search results. | 1 |
|
||||
11
docs/models/operations/getsearchalllibrariesresponse.md
Normal file
11
docs/models/operations/getsearchalllibrariesresponse.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetSearchAllLibrariesResponse
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
||||
| `ContentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
|
||||
| `StatusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
|
||||
| `RawResponse` | [*http.Response](https://pkg.go.dev/net/http#Response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
|
||||
| `Object` | [*operations.GetSearchAllLibrariesResponseBody](../../models/operations/getsearchalllibrariesresponsebody.md) | :heavy_minus_sign: | The libraries available on the Server |
|
||||
10
docs/models/operations/getsearchalllibrariesresponsebody.md
Normal file
10
docs/models/operations/getsearchalllibrariesresponsebody.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetSearchAllLibrariesResponseBody
|
||||
|
||||
The libraries available on the Server
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
|
||||
| `MediaContainer` | [operations.GetSearchAllLibrariesMediaContainer](../../models/operations/getsearchalllibrariesmediacontainer.md) | :heavy_check_mark: | N/A |
|
||||
13
docs/models/operations/getsearchalllibrariesrole.md
Normal file
13
docs/models/operations/getsearchalllibrariesrole.md
Normal file
@@ -0,0 +1,13 @@
|
||||
# GetSearchAllLibrariesRole
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
|
||||
| `ID` | **int64* | :heavy_minus_sign: | The ID of the tag or actor. | 294129 |
|
||||
| `Filter` | **string* | :heavy_minus_sign: | The filter used to find the actor or tag. | actor=294129 |
|
||||
| `Thumb` | **string* | :heavy_minus_sign: | The thumbnail of the actor | https://metadata-static.plex.tv/2/people/27b85844536c39f3f9ac943aaad46608.jpg |
|
||||
| `Tag` | **string* | :heavy_minus_sign: | The name of the tag or actor. | Mike Smith |
|
||||
| `TagKey` | **string* | :heavy_minus_sign: | Unique identifier for the tag. | 668e7e7b22bcad9064350c91 |
|
||||
| `Role` | **string* | :heavy_minus_sign: | The role of the actor or tag in the media. | Self |
|
||||
20
docs/models/operations/getsearchalllibrariesshowordering.md
Normal file
20
docs/models/operations/getsearchalllibrariesshowordering.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# GetSearchAllLibrariesShowOrdering
|
||||
|
||||
Setting that indicates the episode ordering for the show
|
||||
None = Library default,
|
||||
tmdbAiring = The Movie Database (Aired),
|
||||
tvdbAiring = TheTVDB (Aired),
|
||||
tvdbDvd = TheTVDB (DVD),
|
||||
tvdbAbsolute = TheTVDB (Absolute)).
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ----------------------------------------------- | ----------------------------------------------- |
|
||||
| `GetSearchAllLibrariesShowOrderingNone` | None |
|
||||
| `GetSearchAllLibrariesShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `GetSearchAllLibrariesShowOrderingTvdbAiring` | tvdbAiring |
|
||||
| `GetSearchAllLibrariesShowOrderingTvdbDvd` | tvdbDvd |
|
||||
| `GetSearchAllLibrariesShowOrderingTvdbAbsolute` | tvdbAbsolute |
|
||||
45
docs/models/operations/getsearchalllibrariesstream.md
Normal file
45
docs/models/operations/getsearchalllibrariesstream.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# GetSearchAllLibrariesStream
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
|
||||
| `ID` | *int64* | :heavy_check_mark: | N/A | 272796 |
|
||||
| `StreamType` | *int64* | :heavy_check_mark: | Type of stream (1 = video, 2 = audio, 3 = subtitle) | 1 |
|
||||
| `Default` | **bool* | :heavy_minus_sign: | Indicates if this is the default stream | true |
|
||||
| `Selected` | **bool* | :heavy_minus_sign: | Indicates if the stream is selected | true |
|
||||
| `Codec` | *string* | :heavy_check_mark: | Codec used by the stream | h264 |
|
||||
| `Index` | *int64* | :heavy_check_mark: | The index of the stream | 0 |
|
||||
| `Bitrate` | **int64* | :heavy_minus_sign: | The bitrate of the stream in kbps | 6273 |
|
||||
| `ColorPrimaries` | **string* | :heavy_minus_sign: | The color primaries of the video stream | bt709 |
|
||||
| `ColorRange` | **string* | :heavy_minus_sign: | The color range of the video stream | tv |
|
||||
| `ColorSpace` | **string* | :heavy_minus_sign: | The color space of the video stream | bt709 |
|
||||
| `ColorTrc` | **string* | :heavy_minus_sign: | The transfer characteristics (TRC) of the video stream | bt709 |
|
||||
| `BitDepth` | **int64* | :heavy_minus_sign: | The bit depth of the video stream | 8 |
|
||||
| `ChromaLocation` | **string* | :heavy_minus_sign: | The chroma location of the video stream | left |
|
||||
| `StreamIdentifier` | **string* | :heavy_minus_sign: | The identifier of the video stream | 2 |
|
||||
| `ChromaSubsampling` | **string* | :heavy_minus_sign: | The chroma subsampling format | 4:2:0 |
|
||||
| `CodedHeight` | **int64* | :heavy_minus_sign: | The coded height of the video stream | 1088 |
|
||||
| `CodedWidth` | **int64* | :heavy_minus_sign: | The coded width of the video stream | 1920 |
|
||||
| `FrameRate` | **float64* | :heavy_minus_sign: | The frame rate of the video stream | 29.97 |
|
||||
| `HasScalingMatrix` | **bool* | :heavy_minus_sign: | Indicates if the stream has a scaling matrix | false |
|
||||
| `HearingImpaired` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `ClosedCaptions` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `EmbeddedInVideo` | **string* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Height` | **int64* | :heavy_minus_sign: | The height of the video stream | 1080 |
|
||||
| `Level` | **int64* | :heavy_minus_sign: | The level of the video codec | 40 |
|
||||
| `Profile` | **string* | :heavy_minus_sign: | The profile of the video codec | main |
|
||||
| `RefFrames` | **int64* | :heavy_minus_sign: | Number of reference frames | 4 |
|
||||
| `ScanType` | **string* | :heavy_minus_sign: | The scan type (progressive or interlaced) | progressive |
|
||||
| `Width` | **int64* | :heavy_minus_sign: | The width of the video stream | 1920 |
|
||||
| `DisplayTitle` | **string* | :heavy_minus_sign: | Display title of the stream | 1080p (H.264) |
|
||||
| `ExtendedDisplayTitle` | **string* | :heavy_minus_sign: | Extended display title of the stream | 1080p (H.264) |
|
||||
| `Channels` | **int64* | :heavy_minus_sign: | Number of audio channels (for audio streams) | 2 |
|
||||
| `Language` | **string* | :heavy_minus_sign: | The language of the stream (for audio/subtitle streams) | English |
|
||||
| `LanguageTag` | **string* | :heavy_minus_sign: | Language tag of the stream | en |
|
||||
| `LanguageCode` | **string* | :heavy_minus_sign: | Language code of the stream | eng |
|
||||
| `AudioChannelLayout` | **string* | :heavy_minus_sign: | The audio channel layout | stereo |
|
||||
| `SamplingRate` | **int64* | :heavy_minus_sign: | Sampling rate of the audio stream in Hz | 48000 |
|
||||
| `Title` | **string* | :heavy_minus_sign: | Title of the subtitle track (for subtitle streams) | English |
|
||||
| `CanAutoSync` | **bool* | :heavy_minus_sign: | Indicates if the subtitle stream can auto-sync | false |
|
||||
14
docs/models/operations/getsearchalllibrariestype.md
Normal file
14
docs/models/operations/getsearchalllibrariestype.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# GetSearchAllLibrariesType
|
||||
|
||||
The type of media content
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ---------------------------------- | ---------------------------------- |
|
||||
| `GetSearchAllLibrariesTypeMovie` | movie |
|
||||
| `GetSearchAllLibrariesTypeTvShow` | show |
|
||||
| `GetSearchAllLibrariesTypeSeason` | season |
|
||||
| `GetSearchAllLibrariesTypeEpisode` | episode |
|
||||
@@ -0,0 +1,11 @@
|
||||
# GetSearchAllLibrariesUltraBlurColors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `TopLeft` | *string* | :heavy_check_mark: | N/A | 11333b |
|
||||
| `TopRight` | *string* | :heavy_check_mark: | N/A | 0a232d |
|
||||
| `BottomRight` | *string* | :heavy_check_mark: | N/A | 73958 |
|
||||
| `BottomLeft` | *string* | :heavy_check_mark: | N/A | 1f5066 |
|
||||
8
docs/models/operations/getsearchalllibrarieswriter.md
Normal file
8
docs/models/operations/getsearchalllibrarieswriter.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetSearchAllLibrariesWriter
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `Tag` | **string* | :heavy_minus_sign: | N/A | James Cameron |
|
||||
@@ -17,3 +17,6 @@ E.g. A movie library will not return anything with type 3 as there are no season
|
||||
| `GetSearchLibraryQueryParamTypeTvShow` | 2 |
|
||||
| `GetSearchLibraryQueryParamTypeSeason` | 3 |
|
||||
| `GetSearchLibraryQueryParamTypeEpisode` | 4 |
|
||||
| `GetSearchLibraryQueryParamTypeAudio` | 8 |
|
||||
| `GetSearchLibraryQueryParamTypeAlbum` | 9 |
|
||||
| `GetSearchLibraryQueryParamTypeTrack` | 10 |
|
||||
@@ -8,3 +8,4 @@
|
||||
| `IncludeHTTPS` | [*operations.IncludeHTTPS](../../models/operations/includehttps.md) | :heavy_minus_sign: | Include Https entries in the results | 1 |
|
||||
| `IncludeRelay` | [*operations.IncludeRelay](../../models/operations/includerelay.md) | :heavy_minus_sign: | Include Relay addresses in the results <br/>E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400<br/> | 1 |
|
||||
| `IncludeIPv6` | [*operations.IncludeIPv6](../../models/operations/includeipv6.md) | :heavy_minus_sign: | Include IPv6 entries in the results | 1 |
|
||||
| `ClientID` | *string* | :heavy_check_mark: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
@@ -3,42 +3,43 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
|
||||
| `AddedAt` | **int* | :heavy_minus_sign: | N/A | 1705543312 |
|
||||
| `Art` | **string* | :heavy_minus_sign: | N/A | /library/metadata/39904/art/1705310687 |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 186240 |
|
||||
| `GrandparentArt` | **string* | :heavy_minus_sign: | N/A | /library/metadata/39904/art/1705310687 |
|
||||
| `GrandparentGUID` | **string* | :heavy_minus_sign: | N/A | plex://artist/5d07bbfd403c6402904a6480 |
|
||||
| `GrandparentKey` | **string* | :heavy_minus_sign: | N/A | /library/metadata/39904 |
|
||||
| `GrandparentRatingKey` | **string* | :heavy_minus_sign: | N/A | 39904 |
|
||||
| `GrandparentThumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/39904/thumb/1705310687 |
|
||||
| `GrandparentTitle` | **string* | :heavy_minus_sign: | N/A | Green Day |
|
||||
| `GUID` | **string* | :heavy_minus_sign: | N/A | plex://track/6535834f71f22f36f71a8e8f |
|
||||
| `Index` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Key` | **string* | :heavy_minus_sign: | N/A | /library/metadata/67085 |
|
||||
| `LibrarySectionID` | **string* | :heavy_minus_sign: | N/A | 3 |
|
||||
| `LibrarySectionKey` | **string* | :heavy_minus_sign: | N/A | /library/sections/3 |
|
||||
| `LibrarySectionTitle` | **string* | :heavy_minus_sign: | N/A | Music |
|
||||
| `MusicAnalysisVersion` | **string* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `ParentGUID` | **string* | :heavy_minus_sign: | N/A | plex://album/65394d6d472b8ab03ef47f12 |
|
||||
| `ParentIndex` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `ParentKey` | **string* | :heavy_minus_sign: | N/A | /library/metadata/67084 |
|
||||
| `ParentRatingKey` | **string* | :heavy_minus_sign: | N/A | 67084 |
|
||||
| `ParentStudio` | **string* | :heavy_minus_sign: | N/A | Reprise Records |
|
||||
| `ParentThumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/67084/thumb/1705543314 |
|
||||
| `ParentTitle` | **string* | :heavy_minus_sign: | N/A | Saviors |
|
||||
| `ParentYear` | **int* | :heavy_minus_sign: | N/A | 2024 |
|
||||
| `RatingCount` | **int* | :heavy_minus_sign: | N/A | 45885 |
|
||||
| `RatingKey` | **string* | :heavy_minus_sign: | N/A | 67085 |
|
||||
| `SessionKey` | **string* | :heavy_minus_sign: | N/A | 203 |
|
||||
| `Thumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/67084/thumb/1705543314 |
|
||||
| `Title` | **string* | :heavy_minus_sign: | N/A | The American Dream Is Killing Me |
|
||||
| `TitleSort` | **string* | :heavy_minus_sign: | N/A | American Dream Is Killing Me |
|
||||
| `Type` | **string* | :heavy_minus_sign: | N/A | track |
|
||||
| `UpdatedAt` | **int* | :heavy_minus_sign: | N/A | 1705543314 |
|
||||
| `ViewOffset` | **int* | :heavy_minus_sign: | N/A | 1000 |
|
||||
| `Media` | [][operations.GetSessionsMedia](../../models/operations/getsessionsmedia.md) | :heavy_minus_sign: | N/A | |
|
||||
| `User` | [*operations.GetSessionsUser](../../models/operations/getsessionsuser.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Player` | [*operations.Player](../../models/operations/player.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Session` | [*operations.Session](../../models/operations/session.md) | :heavy_minus_sign: | N/A | |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `AddedAt` | **int* | :heavy_minus_sign: | N/A | 1705543312 |
|
||||
| `Art` | **string* | :heavy_minus_sign: | N/A | /library/metadata/39904/art/1705310687 |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 186240 |
|
||||
| `GrandparentArt` | **string* | :heavy_minus_sign: | N/A | /library/metadata/39904/art/1705310687 |
|
||||
| `GrandparentGUID` | **string* | :heavy_minus_sign: | N/A | plex://artist/5d07bbfd403c6402904a6480 |
|
||||
| `GrandparentKey` | **string* | :heavy_minus_sign: | N/A | /library/metadata/39904 |
|
||||
| `GrandparentRatingKey` | **string* | :heavy_minus_sign: | N/A | 39904 |
|
||||
| `GrandparentThumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/39904/thumb/1705310687 |
|
||||
| `GrandparentTitle` | **string* | :heavy_minus_sign: | N/A | Green Day |
|
||||
| `GUID` | **string* | :heavy_minus_sign: | N/A | plex://track/6535834f71f22f36f71a8e8f |
|
||||
| `Index` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Key` | **string* | :heavy_minus_sign: | N/A | /library/metadata/67085 |
|
||||
| `LibrarySectionID` | **string* | :heavy_minus_sign: | N/A | 3 |
|
||||
| `LibrarySectionKey` | **string* | :heavy_minus_sign: | N/A | /library/sections/3 |
|
||||
| `LibrarySectionTitle` | **string* | :heavy_minus_sign: | N/A | Music |
|
||||
| `MusicAnalysisVersion` | **string* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `OriginalTitle` | **string* | :heavy_minus_sign: | The original untranslated name of the media item when non-english, or the track artist if an audio Item has an album artist | The American Dream Is Killing Me |
|
||||
| `ParentGUID` | **string* | :heavy_minus_sign: | N/A | plex://album/65394d6d472b8ab03ef47f12 |
|
||||
| `ParentIndex` | **int* | :heavy_minus_sign: | N/A | 1 |
|
||||
| `ParentKey` | **string* | :heavy_minus_sign: | N/A | /library/metadata/67084 |
|
||||
| `ParentRatingKey` | **string* | :heavy_minus_sign: | N/A | 67084 |
|
||||
| `ParentStudio` | **string* | :heavy_minus_sign: | N/A | Reprise Records |
|
||||
| `ParentThumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/67084/thumb/1705543314 |
|
||||
| `ParentTitle` | **string* | :heavy_minus_sign: | N/A | Saviors |
|
||||
| `ParentYear` | **int* | :heavy_minus_sign: | N/A | 2024 |
|
||||
| `RatingCount` | **int* | :heavy_minus_sign: | N/A | 45885 |
|
||||
| `RatingKey` | **string* | :heavy_minus_sign: | N/A | 67085 |
|
||||
| `SessionKey` | **string* | :heavy_minus_sign: | N/A | 203 |
|
||||
| `Thumb` | **string* | :heavy_minus_sign: | N/A | /library/metadata/67084/thumb/1705543314 |
|
||||
| `Title` | **string* | :heavy_minus_sign: | N/A | The American Dream Is Killing Me |
|
||||
| `TitleSort` | **string* | :heavy_minus_sign: | N/A | American Dream Is Killing Me |
|
||||
| `Type` | **string* | :heavy_minus_sign: | N/A | track |
|
||||
| `UpdatedAt` | **int* | :heavy_minus_sign: | N/A | 1705543314 |
|
||||
| `ViewOffset` | **int* | :heavy_minus_sign: | N/A | 1000 |
|
||||
| `Media` | [][operations.GetSessionsMedia](../../models/operations/getsessionsmedia.md) | :heavy_minus_sign: | N/A | |
|
||||
| `User` | [*operations.GetSessionsUser](../../models/operations/getsessionsuser.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Player` | [*operations.Player](../../models/operations/player.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Session` | [*operations.Session](../../models/operations/session.md) | :heavy_minus_sign: | N/A | |
|
||||
@@ -10,4 +10,4 @@
|
||||
| `Height` | *int64* | :heavy_check_mark: | N/A | 396 |
|
||||
| `MinSize` | *int64* | :heavy_check_mark: | N/A | 1 |
|
||||
| `Upscale` | *int64* | :heavy_check_mark: | N/A | 1 |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | Plex Authentication Token | CV5xoxjTpFKUzBTShsaf |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | An authentication token, obtained from plex.tv | CV5xoxjTpFKUzBTShsaf |
|
||||
@@ -3,6 +3,11 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- |
|
||||
| `PinID` | *int64* | :heavy_check_mark: | The PinID to retrieve an access token for |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `PinID` | *int64* | :heavy_check_mark: | The PinID to retrieve an access token for | |
|
||||
| `ClientID` | *string* | :heavy_check_mark: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `ClientName` | **string* | :heavy_minus_sign: | The name of the client application. (Plex Web, Plex Media Server, etc.) | Plex for Roku |
|
||||
| `DeviceNickname` | **string* | :heavy_minus_sign: | A relatively friendly name for the client device | Roku 3 |
|
||||
| `ClientVersion` | **string* | :heavy_minus_sign: | The version of the client application. | 2.4.1 |
|
||||
| `Platform` | **string* | :heavy_minus_sign: | The platform of the client application. | Roku |
|
||||
@@ -1,66 +0,0 @@
|
||||
# GetTokenDetailsFeatures
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------------------------------------------ | ------------------------------------------------------------ |
|
||||
| `GetTokenDetailsFeaturesAndroidDolbyVision` | Android - Dolby Vision |
|
||||
| `GetTokenDetailsFeaturesAndroidPiP` | Android - PiP |
|
||||
| `GetTokenDetailsFeaturesCuSunset` | CU Sunset |
|
||||
| `GetTokenDetailsFeaturesHrkEnableEur` | HRK_enable_EUR |
|
||||
| `GetTokenDetailsFeaturesTrebleShowFeatures` | TREBLE-show-features |
|
||||
| `GetTokenDetailsFeaturesAdCountdownTimer` | ad-countdown-timer |
|
||||
| `GetTokenDetailsFeaturesAdaptiveBitrate` | adaptive_bitrate |
|
||||
| `GetTokenDetailsFeaturesAmazonLoopDebug` | amazon-loop-debug |
|
||||
| `GetTokenDetailsFeaturesAvodAdAnalysis` | avod-ad-analysis |
|
||||
| `GetTokenDetailsFeaturesAvodNewMedia` | avod-new-media |
|
||||
| `GetTokenDetailsFeaturesBlacklistGetSignin` | blacklist_get_signin |
|
||||
| `GetTokenDetailsFeaturesClientRadioStations` | client-radio-stations |
|
||||
| `GetTokenDetailsFeaturesCloudflareTurnstileRequired` | cloudflare-turnstile-required |
|
||||
| `GetTokenDetailsFeaturesCollections` | collections |
|
||||
| `GetTokenDetailsFeaturesCommentsAndRepliesPushNotifications` | comments_and_replies_push_notifications |
|
||||
| `GetTokenDetailsFeaturesCommunityAccessPlexTv` | community_access_plex_tv |
|
||||
| `GetTokenDetailsFeaturesCompanionsSonos` | companions_sonos |
|
||||
| `GetTokenDetailsFeaturesCustomHomeRemoval` | custom-home-removal |
|
||||
| `GetTokenDetailsFeaturesDisableHomeUserFriendships` | disable_home_user_friendships |
|
||||
| `GetTokenDetailsFeaturesDisableSharingFriendships` | disable_sharing_friendships |
|
||||
| `GetTokenDetailsFeaturesDrmSupport` | drm_support |
|
||||
| `GetTokenDetailsFeaturesExcludeRestrictions` | exclude restrictions |
|
||||
| `GetTokenDetailsFeaturesFederatedAuth` | federated-auth |
|
||||
| `GetTokenDetailsFeaturesFriendRequestPushNotifications` | friend_request_push_notifications |
|
||||
| `GetTokenDetailsFeaturesGuidedUpgrade` | guided-upgrade |
|
||||
| `GetTokenDetailsFeaturesHome` | home |
|
||||
| `GetTokenDetailsFeaturesIncreasePasswordComplexity` | increase-password-complexity |
|
||||
| `GetTokenDetailsFeaturesIos14PrivacyBanner` | ios14-privacy-banner |
|
||||
| `GetTokenDetailsFeaturesIterableNotificationTokens` | iterable-notification-tokens |
|
||||
| `GetTokenDetailsFeaturesKeepPaymentMethod` | keep-payment-method |
|
||||
| `GetTokenDetailsFeaturesKevinBacon` | kevin-bacon |
|
||||
| `GetTokenDetailsFeaturesKoreaConsent` | korea-consent |
|
||||
| `GetTokenDetailsFeaturesLeIsrgRootX1` | le_isrg_root_x1 |
|
||||
| `GetTokenDetailsFeaturesLetsEncrypt` | lets_encrypt |
|
||||
| `GetTokenDetailsFeaturesLightningDvrPivot` | lightning-dvr-pivot |
|
||||
| `GetTokenDetailsFeaturesLiveTvSupportIncompleteSegments` | live-tv-support-incomplete-segments |
|
||||
| `GetTokenDetailsFeaturesLivetv` | livetv |
|
||||
| `GetTokenDetailsFeaturesMetadataSearch` | metadata_search |
|
||||
| `GetTokenDetailsFeaturesNewPlexPassPrices` | new_plex_pass_prices |
|
||||
| `GetTokenDetailsFeaturesNewsProviderSunsetModal` | news-provider-sunset-modal |
|
||||
| `GetTokenDetailsFeaturesPhotosFavorites` | photos-favorites |
|
||||
| `GetTokenDetailsFeaturesPhotosMetadataEdition` | photos-metadata-edition |
|
||||
| `GetTokenDetailsFeaturesPmsHealth` | pms_health |
|
||||
| `GetTokenDetailsFeaturesRadio` | radio |
|
||||
| `GetTokenDetailsFeaturesRateLimitClientToken` | rate-limit-client-token |
|
||||
| `GetTokenDetailsFeaturesScrobblingServicePlexTv` | scrobbling-service-plex-tv |
|
||||
| `GetTokenDetailsFeaturesSharedServerNotification` | shared_server_notification |
|
||||
| `GetTokenDetailsFeaturesSharedSourceNotification` | shared_source_notification |
|
||||
| `GetTokenDetailsFeaturesSigninWithApple` | signin_with_apple |
|
||||
| `GetTokenDetailsFeaturesSpringServeAdProvider` | spring_serve_ad_provider |
|
||||
| `GetTokenDetailsFeaturesTranscoderCache` | transcoder_cache |
|
||||
| `GetTokenDetailsFeaturesTunerSharing` | tuner-sharing |
|
||||
| `GetTokenDetailsFeaturesTwoFactorAuthentication` | two-factor-authentication |
|
||||
| `GetTokenDetailsFeaturesUnsupportedtuners` | unsupportedtuners |
|
||||
| `GetTokenDetailsFeaturesUpgrade3ds2` | upgrade-3ds2 |
|
||||
| `GetTokenDetailsFeaturesVodSchema` | vod-schema |
|
||||
| `GetTokenDetailsFeaturesVodCloudflare` | vod_cloudflare |
|
||||
| `GetTokenDetailsFeaturesWatchTogetherInvite` | watch-together-invite |
|
||||
| `GetTokenDetailsFeaturesWebServerDashboard` | web_server_dashboard |
|
||||
File diff suppressed because one or more lines are too long
@@ -5,7 +5,7 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `Features` | [][operations.GetTokenDetailsFeatures](../../models/operations/gettokendetailsfeatures.md) | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | |
|
||||
| `Features` | []*string* | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | |
|
||||
| `Active` | **bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true |
|
||||
| `SubscribedAt` | **string* | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z |
|
||||
| `Status` | [*operations.GetTokenDetailsAuthenticationResponseStatus](../../models/operations/gettokendetailsauthenticationresponsestatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive |
|
||||
|
||||
@@ -8,8 +8,8 @@ Logged in user details
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `AdsConsent` | *bool* | :heavy_check_mark: | Unknown | |
|
||||
| `AdsConsentReminderAt` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | Unknown | |
|
||||
| `AdsConsentSetAt` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | Unknown | |
|
||||
| `AdsConsentReminderAt` | *int64* | :heavy_check_mark: | N/A | 1556281940 |
|
||||
| `AdsConsentSetAt` | *int64* | :heavy_check_mark: | N/A | 1556281940 |
|
||||
| `Anonymous` | **bool* | :heavy_minus_sign: | Unknown | |
|
||||
| `AuthToken` | *string* | :heavy_check_mark: | The account token | CxoUzBTSV5hsxjTpFKaf |
|
||||
| `BackupCodesCreated` | **bool* | :heavy_minus_sign: | If the two-factor authentication backup codes have been created | |
|
||||
@@ -29,7 +29,7 @@ Logged in user details
|
||||
| `JoinedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `Locale` | *string* | :heavy_check_mark: | The account locale | |
|
||||
| `MailingListActive` | **bool* | :heavy_minus_sign: | If you are subscribed to the Plex newsletter | |
|
||||
| `MailingListStatus` | [operations.MailingListStatus](../../models/operations/mailingliststatus.md) | :heavy_check_mark: | Your current mailing list status | |
|
||||
| `MailingListStatus` | [operations.MailingListStatus](../../models/operations/mailingliststatus.md) | :heavy_check_mark: | Your current mailing list status (active or unsubscribed) | active |
|
||||
| `MaxHomeSize` | *int* | :heavy_check_mark: | The maximum number of accounts allowed in the Plex Home | 15 |
|
||||
| ~~`Pin`~~ | **string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.<br/><br/>[Might be removed] The hashed Plex Home PIN | |
|
||||
| `Profile` | [operations.UserProfile](../../models/operations/userprofile.md) | :heavy_check_mark: | N/A | |
|
||||
|
||||
@@ -17,3 +17,6 @@ E.g. A movie library will not return anything with type 3 as there are no season
|
||||
| `GetTopWatchedContentQueryParamTypeTvShow` | 2 |
|
||||
| `GetTopWatchedContentQueryParamTypeSeason` | 3 |
|
||||
| `GetTopWatchedContentQueryParamTypeEpisode` | 4 |
|
||||
| `GetTopWatchedContentQueryParamTypeAudio` | 8 |
|
||||
| `GetTopWatchedContentQueryParamTypeAlbum` | 9 |
|
||||
| `GetTopWatchedContentQueryParamTypeTrack` | 10 |
|
||||
@@ -5,5 +5,5 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `Type` | [operations.GetTopWatchedContentQueryParamType](../../models/operations/gettopwatchedcontentqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.<br/>1 = movie<br/>2 = show<br/>3 = season<br/>4 = episode<br/>E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries<br/> | 2 |
|
||||
| `IncludeGuids` | **int64* | :heavy_minus_sign: | Adds the Guids object to the response<br/> | 1 |
|
||||
| `Type` | [operations.GetTopWatchedContentQueryParamType](../../models/operations/gettopwatchedcontentqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.<br/>1 = movie<br/>2 = show<br/>3 = season<br/>4 = episode<br/>E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries<br/> | 2 |
|
||||
@@ -13,4 +13,4 @@
|
||||
| `IncludeExternalMedia` | [*operations.IncludeExternalMedia](../../models/operations/includeexternalmedia.md) | :heavy_minus_sign: | include external media in the results<br/> | |
|
||||
| `XPlexContainerStart` | **int* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.<br/>If the number of items exceeds the limit, the response will be paginated.<br/>By default this is 0<br/> | 0 |
|
||||
| `XPlexContainerSize` | **int* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.<br/>If the number of items exceeds the limit, the response will be paginated.<br/>By default this is 50<br/> | 50 |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | Plex Authentication Token | CV5xoxjTpFKUzBTShsaf |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | An authentication token, obtained from plex.tv | CV5xoxjTpFKUzBTShsaf |
|
||||
@@ -5,5 +5,4 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `ID` | *int* | :heavy_check_mark: | N/A | 1 |
|
||||
| `Path` | *string* | :heavy_check_mark: | N/A | /movies |
|
||||
| `Path` | **string* | :heavy_minus_sign: | N/A | /TV Shows/House |
|
||||
@@ -1,6 +1,6 @@
|
||||
# MailingListStatus
|
||||
|
||||
Your current mailing list status
|
||||
Your current mailing list status (active or unsubscribed)
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
@@ -6,19 +6,19 @@
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
|
||||
| `ID` | *int* | :heavy_check_mark: | N/A | 119534 |
|
||||
| `Duration` | *int* | :heavy_check_mark: | N/A | 11558112 |
|
||||
| `Bitrate` | *int* | :heavy_check_mark: | N/A | 25025 |
|
||||
| `Width` | *int* | :heavy_check_mark: | N/A | 3840 |
|
||||
| `Height` | *int* | :heavy_check_mark: | N/A | 2072 |
|
||||
| `AspectRatio` | *float64* | :heavy_check_mark: | N/A | 1.85 |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 11558112 |
|
||||
| `Bitrate` | **int* | :heavy_minus_sign: | N/A | 25025 |
|
||||
| `Width` | **int* | :heavy_minus_sign: | N/A | 3840 |
|
||||
| `Height` | **int* | :heavy_minus_sign: | N/A | 2072 |
|
||||
| `AspectRatio` | **float64* | :heavy_minus_sign: | N/A | 1.85 |
|
||||
| `AudioProfile` | **string* | :heavy_minus_sign: | N/A | dts |
|
||||
| `AudioChannels` | *int* | :heavy_check_mark: | N/A | 6 |
|
||||
| `AudioCodec` | *string* | :heavy_check_mark: | N/A | eac3 |
|
||||
| `VideoCodec` | *string* | :heavy_check_mark: | N/A | hevc |
|
||||
| `VideoResolution` | *string* | :heavy_check_mark: | N/A | 4k |
|
||||
| `AudioChannels` | **int* | :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_check_mark: | N/A | mkv |
|
||||
| `VideoFrameRate` | *string* | :heavy_check_mark: | N/A | 24p |
|
||||
| `VideoProfile` | *string* | :heavy_check_mark: | N/A | main 10 |
|
||||
| `VideoFrameRate` | **string* | :heavy_minus_sign: | N/A | 24p |
|
||||
| `VideoProfile` | **string* | :heavy_minus_sign: | N/A | main 10 |
|
||||
| `HasVoiceActivity` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `OptimizedForStreaming` | [*operations.OptimizedForStreaming](../../models/operations/optimizedforstreaming.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Has64bitOffsets` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
|
||||
@@ -7,14 +7,14 @@
|
||||
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
|
||||
| `ID` | *int* | :heavy_check_mark: | N/A | 119542 |
|
||||
| `Key` | *string* | :heavy_check_mark: | N/A | /library/parts/119542/1680457526/file.mkv |
|
||||
| `Duration` | *int* | :heavy_check_mark: | N/A | 11558112 |
|
||||
| `Duration` | **int* | :heavy_minus_sign: | N/A | 11558112 |
|
||||
| `File` | *string* | :heavy_check_mark: | 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` | *int64* | :heavy_check_mark: | N/A | 36158371307 |
|
||||
| `Container` | *string* | :heavy_check_mark: | The container format of the media file.<br/> | mkv |
|
||||
| `AudioProfile` | **string* | :heavy_minus_sign: | N/A | dts |
|
||||
| `Has64bitOffsets` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `OptimizedForStreaming` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `VideoProfile` | *string* | :heavy_check_mark: | N/A | main 10 |
|
||||
| `VideoProfile` | **string* | :heavy_minus_sign: | N/A | main 10 |
|
||||
| `Indexes` | **string* | :heavy_minus_sign: | N/A | sd |
|
||||
| `HasThumbnail` | [*operations.HasThumbnail](../../models/operations/hasthumbnail.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Stream` | [][operations.Stream](../../models/operations/stream.md) | :heavy_minus_sign: | N/A | |
|
||||
@@ -1,66 +0,0 @@
|
||||
# PostUsersSignInDataAuthenticationFeatures
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesAndroidDolbyVision` | Android - Dolby Vision |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesAndroidPiP` | Android - PiP |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesCuSunset` | CU Sunset |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesHrkEnableEur` | HRK_enable_EUR |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesTrebleShowFeatures` | TREBLE-show-features |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesAdCountdownTimer` | ad-countdown-timer |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesAdaptiveBitrate` | adaptive_bitrate |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesAmazonLoopDebug` | amazon-loop-debug |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesAvodAdAnalysis` | avod-ad-analysis |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesAvodNewMedia` | avod-new-media |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesBlacklistGetSignin` | blacklist_get_signin |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesClientRadioStations` | client-radio-stations |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesCloudflareTurnstileRequired` | cloudflare-turnstile-required |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesCollections` | collections |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesCommentsAndRepliesPushNotifications` | comments_and_replies_push_notifications |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesCommunityAccessPlexTv` | community_access_plex_tv |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesCompanionsSonos` | companions_sonos |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesCustomHomeRemoval` | custom-home-removal |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesDisableHomeUserFriendships` | disable_home_user_friendships |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesDisableSharingFriendships` | disable_sharing_friendships |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesDrmSupport` | drm_support |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesExcludeRestrictions` | exclude restrictions |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesFederatedAuth` | federated-auth |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesFriendRequestPushNotifications` | friend_request_push_notifications |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesGuidedUpgrade` | guided-upgrade |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesHome` | home |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesIncreasePasswordComplexity` | increase-password-complexity |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesIos14PrivacyBanner` | ios14-privacy-banner |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesIterableNotificationTokens` | iterable-notification-tokens |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesKeepPaymentMethod` | keep-payment-method |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesKevinBacon` | kevin-bacon |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesKoreaConsent` | korea-consent |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesLeIsrgRootX1` | le_isrg_root_x1 |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesLetsEncrypt` | lets_encrypt |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesLightningDvrPivot` | lightning-dvr-pivot |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesLiveTvSupportIncompleteSegments` | live-tv-support-incomplete-segments |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesLivetv` | livetv |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesMetadataSearch` | metadata_search |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesNewPlexPassPrices` | new_plex_pass_prices |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesNewsProviderSunsetModal` | news-provider-sunset-modal |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesPhotosFavorites` | photos-favorites |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesPhotosMetadataEdition` | photos-metadata-edition |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesPmsHealth` | pms_health |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesRadio` | radio |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesRateLimitClientToken` | rate-limit-client-token |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesScrobblingServicePlexTv` | scrobbling-service-plex-tv |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesSharedServerNotification` | shared_server_notification |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesSharedSourceNotification` | shared_source_notification |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesSigninWithApple` | signin_with_apple |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesSpringServeAdProvider` | spring_serve_ad_provider |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesTranscoderCache` | transcoder_cache |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesTunerSharing` | tuner-sharing |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesTwoFactorAuthentication` | two-factor-authentication |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesUnsupportedtuners` | unsupportedtuners |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesUpgrade3ds2` | upgrade-3ds2 |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesVodSchema` | vod-schema |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesVodCloudflare` | vod_cloudflare |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesWatchTogetherInvite` | watch-together-invite |
|
||||
| `PostUsersSignInDataAuthenticationFeaturesWebServerDashboard` | web_server_dashboard |
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `Features` | [][operations.PostUsersSignInDataAuthenticationFeatures](../../models/operations/postuserssignindataauthenticationfeatures.md) | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | |
|
||||
| `Features` | []*string* | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | |
|
||||
| `Active` | **bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true |
|
||||
| `SubscribedAt` | **string* | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z |
|
||||
| `Status` | [*operations.PostUsersSignInDataAuthenticationResponseStatus](../../models/operations/postuserssignindataauthenticationresponsestatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive |
|
||||
|
||||
@@ -1,66 +0,0 @@
|
||||
# PostUsersSignInDataFeatures
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ---------------------------------------------------------------- | ---------------------------------------------------------------- |
|
||||
| `PostUsersSignInDataFeaturesAndroidDolbyVision` | Android - Dolby Vision |
|
||||
| `PostUsersSignInDataFeaturesAndroidPiP` | Android - PiP |
|
||||
| `PostUsersSignInDataFeaturesCuSunset` | CU Sunset |
|
||||
| `PostUsersSignInDataFeaturesHrkEnableEur` | HRK_enable_EUR |
|
||||
| `PostUsersSignInDataFeaturesTrebleShowFeatures` | TREBLE-show-features |
|
||||
| `PostUsersSignInDataFeaturesAdCountdownTimer` | ad-countdown-timer |
|
||||
| `PostUsersSignInDataFeaturesAdaptiveBitrate` | adaptive_bitrate |
|
||||
| `PostUsersSignInDataFeaturesAmazonLoopDebug` | amazon-loop-debug |
|
||||
| `PostUsersSignInDataFeaturesAvodAdAnalysis` | avod-ad-analysis |
|
||||
| `PostUsersSignInDataFeaturesAvodNewMedia` | avod-new-media |
|
||||
| `PostUsersSignInDataFeaturesBlacklistGetSignin` | blacklist_get_signin |
|
||||
| `PostUsersSignInDataFeaturesClientRadioStations` | client-radio-stations |
|
||||
| `PostUsersSignInDataFeaturesCloudflareTurnstileRequired` | cloudflare-turnstile-required |
|
||||
| `PostUsersSignInDataFeaturesCollections` | collections |
|
||||
| `PostUsersSignInDataFeaturesCommentsAndRepliesPushNotifications` | comments_and_replies_push_notifications |
|
||||
| `PostUsersSignInDataFeaturesCommunityAccessPlexTv` | community_access_plex_tv |
|
||||
| `PostUsersSignInDataFeaturesCompanionsSonos` | companions_sonos |
|
||||
| `PostUsersSignInDataFeaturesCustomHomeRemoval` | custom-home-removal |
|
||||
| `PostUsersSignInDataFeaturesDisableHomeUserFriendships` | disable_home_user_friendships |
|
||||
| `PostUsersSignInDataFeaturesDisableSharingFriendships` | disable_sharing_friendships |
|
||||
| `PostUsersSignInDataFeaturesDrmSupport` | drm_support |
|
||||
| `PostUsersSignInDataFeaturesExcludeRestrictions` | exclude restrictions |
|
||||
| `PostUsersSignInDataFeaturesFederatedAuth` | federated-auth |
|
||||
| `PostUsersSignInDataFeaturesFriendRequestPushNotifications` | friend_request_push_notifications |
|
||||
| `PostUsersSignInDataFeaturesGuidedUpgrade` | guided-upgrade |
|
||||
| `PostUsersSignInDataFeaturesHome` | home |
|
||||
| `PostUsersSignInDataFeaturesIncreasePasswordComplexity` | increase-password-complexity |
|
||||
| `PostUsersSignInDataFeaturesIos14PrivacyBanner` | ios14-privacy-banner |
|
||||
| `PostUsersSignInDataFeaturesIterableNotificationTokens` | iterable-notification-tokens |
|
||||
| `PostUsersSignInDataFeaturesKeepPaymentMethod` | keep-payment-method |
|
||||
| `PostUsersSignInDataFeaturesKevinBacon` | kevin-bacon |
|
||||
| `PostUsersSignInDataFeaturesKoreaConsent` | korea-consent |
|
||||
| `PostUsersSignInDataFeaturesLeIsrgRootX1` | le_isrg_root_x1 |
|
||||
| `PostUsersSignInDataFeaturesLetsEncrypt` | lets_encrypt |
|
||||
| `PostUsersSignInDataFeaturesLightningDvrPivot` | lightning-dvr-pivot |
|
||||
| `PostUsersSignInDataFeaturesLiveTvSupportIncompleteSegments` | live-tv-support-incomplete-segments |
|
||||
| `PostUsersSignInDataFeaturesLivetv` | livetv |
|
||||
| `PostUsersSignInDataFeaturesMetadataSearch` | metadata_search |
|
||||
| `PostUsersSignInDataFeaturesNewPlexPassPrices` | new_plex_pass_prices |
|
||||
| `PostUsersSignInDataFeaturesNewsProviderSunsetModal` | news-provider-sunset-modal |
|
||||
| `PostUsersSignInDataFeaturesPhotosFavorites` | photos-favorites |
|
||||
| `PostUsersSignInDataFeaturesPhotosMetadataEdition` | photos-metadata-edition |
|
||||
| `PostUsersSignInDataFeaturesPmsHealth` | pms_health |
|
||||
| `PostUsersSignInDataFeaturesRadio` | radio |
|
||||
| `PostUsersSignInDataFeaturesRateLimitClientToken` | rate-limit-client-token |
|
||||
| `PostUsersSignInDataFeaturesScrobblingServicePlexTv` | scrobbling-service-plex-tv |
|
||||
| `PostUsersSignInDataFeaturesSharedServerNotification` | shared_server_notification |
|
||||
| `PostUsersSignInDataFeaturesSharedSourceNotification` | shared_source_notification |
|
||||
| `PostUsersSignInDataFeaturesSigninWithApple` | signin_with_apple |
|
||||
| `PostUsersSignInDataFeaturesSpringServeAdProvider` | spring_serve_ad_provider |
|
||||
| `PostUsersSignInDataFeaturesTranscoderCache` | transcoder_cache |
|
||||
| `PostUsersSignInDataFeaturesTunerSharing` | tuner-sharing |
|
||||
| `PostUsersSignInDataFeaturesTwoFactorAuthentication` | two-factor-authentication |
|
||||
| `PostUsersSignInDataFeaturesUnsupportedtuners` | unsupportedtuners |
|
||||
| `PostUsersSignInDataFeaturesUpgrade3ds2` | upgrade-3ds2 |
|
||||
| `PostUsersSignInDataFeaturesVodSchema` | vod-schema |
|
||||
| `PostUsersSignInDataFeaturesVodCloudflare` | vod_cloudflare |
|
||||
| `PostUsersSignInDataFeaturesWatchTogetherInvite` | watch-together-invite |
|
||||
| `PostUsersSignInDataFeaturesWebServerDashboard` | web_server_dashboard |
|
||||
@@ -1,12 +0,0 @@
|
||||
# PostUsersSignInDataGlobals
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 |
|
||||
| `ClientName` | **string* | :heavy_minus_sign: | N/A | Plex Web |
|
||||
| `DeviceName` | **string* | :heavy_minus_sign: | N/A | Linux |
|
||||
| `ClientVersion` | **string* | :heavy_minus_sign: | N/A | 4.133.0 |
|
||||
| `ClientPlatform` | **string* | :heavy_minus_sign: | N/A | Chrome |
|
||||
@@ -1,6 +1,6 @@
|
||||
# PostUsersSignInDataMailingListStatus
|
||||
|
||||
Your current mailing list status
|
||||
Your current mailing list status (active or unsubscribed)
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 |
|
||||
| `ClientName` | **string* | :heavy_minus_sign: | N/A | Plex Web |
|
||||
| `DeviceName` | **string* | :heavy_minus_sign: | N/A | Linux |
|
||||
| `ClientVersion` | **string* | :heavy_minus_sign: | N/A | 4.133.0 |
|
||||
| `ClientPlatform` | **string* | :heavy_minus_sign: | N/A | Chrome |
|
||||
| `RequestBody` | [*operations.PostUsersSignInDataRequestBody](../../models/operations/postuserssignindatarequestbody.md) | :heavy_minus_sign: | Login credentials | |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
||||
| `ClientID` | *string* | :heavy_check_mark: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `ClientName` | **string* | :heavy_minus_sign: | The name of the client application. (Plex Web, Plex Media Server, etc.) | Plex for Roku |
|
||||
| `DeviceNickname` | **string* | :heavy_minus_sign: | A relatively friendly name for the client device | Roku 3 |
|
||||
| `ClientVersion` | **string* | :heavy_minus_sign: | The version of the client application. | 2.4.1 |
|
||||
| `Platform` | **string* | :heavy_minus_sign: | The platform of the client application. | Roku |
|
||||
| `RequestBody` | [*operations.PostUsersSignInDataRequestBody](../../models/operations/postuserssignindatarequestbody.md) | :heavy_minus_sign: | Login credentials | |
|
||||
File diff suppressed because one or more lines are too long
@@ -7,7 +7,7 @@ If the account’s Plex Pass subscription is active
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `Features` | [][operations.PostUsersSignInDataFeatures](../../models/operations/postuserssignindatafeatures.md) | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | |
|
||||
| `Features` | []*string* | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | |
|
||||
| `Active` | **bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true |
|
||||
| `SubscribedAt` | **string* | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z |
|
||||
| `Status` | [*operations.PostUsersSignInDataAuthenticationStatus](../../models/operations/postuserssignindataauthenticationstatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive |
|
||||
|
||||
@@ -8,8 +8,8 @@ Returns the user account data with a valid auth token
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `AdsConsent` | *bool* | :heavy_check_mark: | Unknown | |
|
||||
| `AdsConsentReminderAt` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | Unknown | |
|
||||
| `AdsConsentSetAt` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | Unknown | |
|
||||
| `AdsConsentReminderAt` | *int64* | :heavy_check_mark: | N/A | 1556281940 |
|
||||
| `AdsConsentSetAt` | *int64* | :heavy_check_mark: | N/A | 1556281940 |
|
||||
| `Anonymous` | **bool* | :heavy_minus_sign: | Unknown | |
|
||||
| `AuthToken` | *string* | :heavy_check_mark: | The account token | CxoUzBTSV5hsxjTpFKaf |
|
||||
| `BackupCodesCreated` | **bool* | :heavy_minus_sign: | If the two-factor authentication backup codes have been created | |
|
||||
@@ -29,7 +29,7 @@ Returns the user account data with a valid auth token
|
||||
| `JoinedAt` | *int64* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 |
|
||||
| `Locale` | *string* | :heavy_check_mark: | The account locale | |
|
||||
| `MailingListActive` | **bool* | :heavy_minus_sign: | If you are subscribed to the Plex newsletter | |
|
||||
| `MailingListStatus` | [operations.PostUsersSignInDataMailingListStatus](../../models/operations/postuserssignindatamailingliststatus.md) | :heavy_check_mark: | Your current mailing list status | |
|
||||
| `MailingListStatus` | [operations.PostUsersSignInDataMailingListStatus](../../models/operations/postuserssignindatamailingliststatus.md) | :heavy_check_mark: | Your current mailing list status (active or unsubscribed) | active |
|
||||
| `MaxHomeSize` | *int* | :heavy_check_mark: | The maximum number of accounts allowed in the Plex Home | 15 |
|
||||
| ~~`Pin`~~ | **string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.<br/><br/>[Might be removed] The hashed Plex Home PIN | |
|
||||
| `Profile` | [operations.PostUsersSignInDataUserProfile](../../models/operations/postuserssignindatauserprofile.md) | :heavy_check_mark: | N/A | |
|
||||
|
||||
11
docs/models/operations/queryparamincludecollections.md
Normal file
11
docs/models/operations/queryparamincludecollections.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# QueryParamIncludeCollections
|
||||
|
||||
Whether to include collections in the search results.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------------------- | ------------------------------------- |
|
||||
| `QueryParamIncludeCollectionsDisable` | 0 |
|
||||
| `QueryParamIncludeCollectionsEnable` | 1 |
|
||||
11
docs/models/operations/queryparamincludeexternalmedia.md
Normal file
11
docs/models/operations/queryparamincludeexternalmedia.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# QueryParamIncludeExternalMedia
|
||||
|
||||
Whether to include external media in the search results.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------- | --------------------------------------- |
|
||||
| `QueryParamIncludeExternalMediaDisable` | 0 |
|
||||
| `QueryParamIncludeExternalMediaEnable` | 1 |
|
||||
@@ -17,3 +17,6 @@ E.g. A movie library will not return anything with type 3 as there are no season
|
||||
| `QueryParamTypeTvShow` | 2 |
|
||||
| `QueryParamTypeSeason` | 3 |
|
||||
| `QueryParamTypeEpisode` | 4 |
|
||||
| `QueryParamTypeAudio` | 8 |
|
||||
| `QueryParamTypeAlbum` | 9 |
|
||||
| `QueryParamTypeTrack` | 10 |
|
||||
9
docs/models/operations/searchresult.md
Normal file
9
docs/models/operations/searchresult.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# SearchResult
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
|
||||
| `Score` | *float32* | :heavy_check_mark: | N/A |
|
||||
| `Metadata` | [operations.GetSearchAllLibrariesMetadata](../../models/operations/getsearchalllibrariesmetadata.md) | :heavy_check_mark: | N/A |
|
||||
12
docs/models/operations/searchtypes.md
Normal file
12
docs/models/operations/searchtypes.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# SearchTypes
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------ | ------------------------ |
|
||||
| `SearchTypesMovies` | movies |
|
||||
| `SearchTypesMusic` | music |
|
||||
| `SearchTypesOtherVideos` | otherVideos |
|
||||
| `SearchTypesPeople` | people |
|
||||
| `SearchTypesTv` | tv |
|
||||
@@ -3,18 +3,18 @@
|
||||
Setting that indicates the episode ordering for the show
|
||||
None = Library default,
|
||||
tmdbAiring = The Movie Database (Aired),
|
||||
aired = TheTVDB (Aired),
|
||||
dvd = TheTVDB (DVD),
|
||||
absolute = TheTVDB (Absolute)).
|
||||
tvdbAiring = TheTVDB (Aired),
|
||||
tvdbDvd = TheTVDB (DVD),
|
||||
tvdbAbsolute = TheTVDB (Absolute)).
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------ | ------------------------ |
|
||||
| `ShowOrderingNone` | None |
|
||||
| `ShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `ShowOrderingAired` | aired |
|
||||
| `ShowOrderingDvd` | dvd |
|
||||
| `ShowOrderingAbsolute` | absolute |
|
||||
| Name | Value |
|
||||
| -------------------------- | -------------------------- |
|
||||
| `ShowOrderingNone` | None |
|
||||
| `ShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `ShowOrderingTvdbAiring` | tvdbAiring |
|
||||
| `ShowOrderingTvdbDvd` | tvdbDvd |
|
||||
| `ShowOrderingTvdbAbsolute` | tvdbAbsolute |
|
||||
@@ -7,7 +7,7 @@ If the account’s Plex Pass subscription is active
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
|
||||
| `Features` | [][operations.Features](../../models/operations/features.md) | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | |
|
||||
| `Features` | []*string* | :heavy_minus_sign: | List of features allowed on your Plex Pass subscription | |
|
||||
| `Active` | **bool* | :heavy_minus_sign: | If the account's Plex Pass subscription is active | true |
|
||||
| `SubscribedAt` | **string* | :heavy_minus_sign: | Date the account subscribed to Plex Pass | 2021-04-12T18:21:12Z |
|
||||
| `Status` | [*operations.GetTokenDetailsAuthenticationStatus](../../models/operations/gettokendetailsauthenticationstatus.md) | :heavy_minus_sign: | String representation of subscriptionActive | Inactive |
|
||||
|
||||
@@ -26,3 +26,4 @@ A key representing a specific tag within the section.
|
||||
| `TagResolution` | resolution |
|
||||
| `TagFirstCharacter` | firstCharacter |
|
||||
| `TagFolder` | folder |
|
||||
| `TagAlbums` | albums |
|
||||
@@ -17,3 +17,6 @@ E.g. A movie library will not return anything with type 3 as there are no season
|
||||
| `TypeTvShow` | 2 |
|
||||
| `TypeSeason` | 3 |
|
||||
| `TypeEpisode` | 4 |
|
||||
| `TypeAudio` | 8 |
|
||||
| `TypeAlbum` | 9 |
|
||||
| `TypeTrack` | 10 |
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user