mirror of
https://github.com/LukeHagar/plexgo.git
synced 2025-12-07 12:37:45 +00:00
Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d2a1c188d5 | ||
|
|
6db5d8fb30 | ||
|
|
89fbd6238e | ||
|
|
7af7441ac7 | ||
|
|
d1945b544b | ||
|
|
16bb49d558 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1 +1,2 @@
|
||||
.speakeasy/reports
|
||||
# .gitignore
|
||||
|
||||
1548
.speakeasy/gen.lock
1548
.speakeasy/gen.lock
File diff suppressed because one or more lines are too long
@@ -13,7 +13,7 @@ generation:
|
||||
oAuth2ClientCredentialsEnabled: true
|
||||
oAuth2PasswordEnabled: false
|
||||
go:
|
||||
version: 0.16.1
|
||||
version: 0.18.0
|
||||
additionalDependencies: {}
|
||||
allowUnknownFieldsInWeakUnions: false
|
||||
clientServerStatusCodesAsErrors: true
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
speakeasyVersion: 1.438.3
|
||||
speakeasyVersion: 1.487.0
|
||||
sources:
|
||||
my-source:
|
||||
sourceNamespace: my-source
|
||||
@@ -9,19 +9,19 @@ sources:
|
||||
- main
|
||||
plexapi:
|
||||
sourceNamespace: plexapi
|
||||
sourceRevisionDigest: sha256:37c6bfb15f4154eb89b112465107f20757411f22bd1cc7d0a04335df7127fcb4
|
||||
sourceBlobDigest: sha256:290473ebc909cada80ff428c685b897f4621cf121397e1417355e06d334e7206
|
||||
sourceRevisionDigest: sha256:e6ab335dd91a4165f4510e4a3af8a55819c6310b7e66251266d2384376f3ccae
|
||||
sourceBlobDigest: sha256:89d1b1133e400c89f0d06efe5e5168f5ba25a413e1ab8380d442d6b233e2e5a9
|
||||
tags:
|
||||
- latest
|
||||
- main
|
||||
- speakeasy-sdk-regen-1738886963
|
||||
targets:
|
||||
plexgo:
|
||||
source: plexapi
|
||||
sourceNamespace: plexapi
|
||||
sourceRevisionDigest: sha256:37c6bfb15f4154eb89b112465107f20757411f22bd1cc7d0a04335df7127fcb4
|
||||
sourceBlobDigest: sha256:290473ebc909cada80ff428c685b897f4621cf121397e1417355e06d334e7206
|
||||
sourceRevisionDigest: sha256:e6ab335dd91a4165f4510e4a3af8a55819c6310b7e66251266d2384376f3ccae
|
||||
sourceBlobDigest: sha256:89d1b1133e400c89f0d06efe5e5168f5ba25a413e1ab8380d442d6b233e2e5a9
|
||||
codeSamplesNamespace: code-samples-go-plexgo
|
||||
codeSamplesRevisionDigest: sha256:3d3923d5080a3df76181c5e2c153e6f9c88470f8366cbdea5628bb47fd67fd1b
|
||||
codeSamplesRevisionDigest: sha256:e556c9b714f159036257d9405e7e72e55f72c2ad96b306a7ccaa287d4d33829c
|
||||
workflow:
|
||||
workflowVersion: 1.0.0
|
||||
speakeasyVersion: latest
|
||||
|
||||
88
README.md
88
README.md
@@ -40,16 +40,24 @@ The following SDKs are generated from the OpenAPI Specification. They are automa
|
||||
|
||||
<!-- 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)
|
||||
* [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] -->
|
||||
@@ -76,16 +84,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -140,6 +144,8 @@ 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
|
||||
* [GetGenresLibrary](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
|
||||
* [GetCountriesLibrary](docs/sdks/library/README.md#getcountrieslibrary) - Get Countries of library media
|
||||
* [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
|
||||
@@ -220,6 +226,10 @@ func main() {
|
||||
* [CheckForUpdates](docs/sdks/updater/README.md#checkforupdates) - Checking for updates
|
||||
* [ApplyUpdates](docs/sdks/updater/README.md#applyupdates) - Apply Updates
|
||||
|
||||
### [Users](docs/sdks/users/README.md)
|
||||
|
||||
* [GetUsers](docs/sdks/users/README.md#getusers) - Get list of all connected users
|
||||
|
||||
### [Video](docs/sdks/video/README.md)
|
||||
|
||||
* [GetTimeline](docs/sdks/video/README.md#gettimeline) - Get the timeline for a media item
|
||||
@@ -250,16 +260,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx, operations.WithRetries(
|
||||
retry.Config{
|
||||
Strategy: "backoff",
|
||||
@@ -293,6 +299,8 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithRetryConfig(
|
||||
retry.Config{
|
||||
@@ -306,14 +314,8 @@ func main() {
|
||||
RetryConnectionErrors: false,
|
||||
}),
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -355,16 +357,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
|
||||
@@ -414,17 +412,13 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithServerURL("https://10.10.10.47:32400"),
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -450,16 +444,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Plex.GetCompanionsData(ctx, operations.WithServerURL("https://plex.tv/api/v2"))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -523,16 +513,12 @@ import (
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
62
RELEASES.md
62
RELEASES.md
@@ -972,4 +972,64 @@ Based on:
|
||||
### Generated
|
||||
- [go v0.16.1] .
|
||||
### Releases
|
||||
- [Go v0.16.1] https://github.com/LukeHagar/plexgo/releases/tag/v0.16.1 - .
|
||||
- [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 - .
|
||||
|
||||
## 2025-01-28 00:08:53
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.476.2 (2.495.1) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.17.3] .
|
||||
### Releases
|
||||
- [Go v0.17.3] https://github.com/LukeHagar/plexgo/releases/tag/v0.17.3 - .
|
||||
|
||||
## 2025-02-06 00:09:00
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.484.1 (2.503.2) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.17.4] .
|
||||
### Releases
|
||||
- [Go v0.17.4] https://github.com/LukeHagar/plexgo/releases/tag/v0.17.4 - .
|
||||
|
||||
## 2025-02-07 00:09:08
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.487.0 (2.506.0) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [go v0.18.0] .
|
||||
### Releases
|
||||
- [Go v0.18.0] https://github.com/LukeHagar/plexgo/releases/tag/v0.18.0 - .
|
||||
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("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -10,7 +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"
|
||||
"github.com/LukeHagar/plexgo/retry"
|
||||
"net/http"
|
||||
"net/url"
|
||||
)
|
||||
@@ -54,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)
|
||||
@@ -82,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 {
|
||||
@@ -112,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)
|
||||
@@ -240,7 +253,11 @@ func (s *Activities) GetServerActivities(ctx context.Context, opts ...operations
|
||||
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
|
||||
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 {
|
||||
@@ -285,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)
|
||||
@@ -313,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 {
|
||||
@@ -343,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)
|
||||
@@ -451,7 +481,11 @@ func (s *Activities) CancelServerActivities(ctx context.Context, activityUUID st
|
||||
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
|
||||
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 {
|
||||
|
||||
@@ -10,7 +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"
|
||||
"github.com/LukeHagar/plexgo/retry"
|
||||
"net/http"
|
||||
"net/url"
|
||||
)
|
||||
@@ -53,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)
|
||||
@@ -85,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 {
|
||||
@@ -115,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)
|
||||
@@ -223,7 +236,11 @@ func (s *Authentication) GetTransientToken(ctx context.Context, type_ operations
|
||||
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
|
||||
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 {
|
||||
@@ -269,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)
|
||||
@@ -301,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 {
|
||||
@@ -331,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)
|
||||
@@ -439,7 +469,11 @@ func (s *Authentication) GetSourceConnectionInformation(ctx context.Context, sou
|
||||
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
|
||||
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 {
|
||||
@@ -470,7 +504,6 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
|
||||
o := operations.Options{}
|
||||
supportedOptions := []string{
|
||||
operations.SupportedOptionServerURL,
|
||||
operations.SupportedOptionRetries,
|
||||
operations.SupportedOptionTimeout,
|
||||
}
|
||||
@@ -513,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 {
|
||||
@@ -543,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)
|
||||
@@ -671,7 +712,11 @@ func (s *Authentication) GetTokenDetails(ctx context.Context, opts ...operations
|
||||
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
|
||||
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 {
|
||||
@@ -700,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,
|
||||
DeviceNickname: s.sdkConfiguration.Globals.DeviceNickname,
|
||||
ClientVersion: s.sdkConfiguration.Globals.ClientVersion,
|
||||
Platform: s.sdkConfiguration.Globals.Platform,
|
||||
}
|
||||
|
||||
o := operations.Options{}
|
||||
supportedOptions := []string{
|
||||
operations.SupportedOptionServerURL,
|
||||
operations.SupportedOptionRetries,
|
||||
operations.SupportedOptionTimeout,
|
||||
}
|
||||
@@ -753,9 +789,15 @@ 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)
|
||||
}
|
||||
|
||||
utils.PopulateHeaders(ctx, req, request, globals)
|
||||
utils.PopulateHeaders(ctx, req, request, nil)
|
||||
|
||||
for k, v := range o.SetHeaders {
|
||||
req.Header.Set(k, v)
|
||||
}
|
||||
|
||||
globalRetryConfig := s.sdkConfiguration.RetryConfig
|
||||
retryConfig := o.Retries
|
||||
@@ -787,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)
|
||||
@@ -915,7 +961,11 @@ func (s *Authentication) PostUsersSignInData(ctx context.Context, request operat
|
||||
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
|
||||
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 {
|
||||
|
||||
117
butler.go
117
butler.go
@@ -10,7 +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"
|
||||
"github.com/LukeHagar/plexgo/retry"
|
||||
"net/http"
|
||||
"net/url"
|
||||
)
|
||||
@@ -48,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)
|
||||
@@ -76,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 {
|
||||
@@ -106,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)
|
||||
@@ -234,7 +247,11 @@ func (s *Butler) GetButlerTasks(ctx context.Context, opts ...operations.Option)
|
||||
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
|
||||
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 {
|
||||
@@ -279,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)
|
||||
@@ -307,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 {
|
||||
@@ -337,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)
|
||||
@@ -445,7 +475,11 @@ func (s *Butler) StartAllTasks(ctx context.Context, opts ...operations.Option) (
|
||||
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
|
||||
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 {
|
||||
@@ -486,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)
|
||||
@@ -514,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 {
|
||||
@@ -544,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)
|
||||
@@ -652,7 +699,11 @@ func (s *Butler) StopAllTasks(ctx context.Context, opts ...operations.Option) (*
|
||||
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
|
||||
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 {
|
||||
@@ -701,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)
|
||||
@@ -729,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 {
|
||||
@@ -759,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)
|
||||
@@ -869,7 +933,11 @@ func (s *Butler) StartTask(ctx context.Context, taskName operations.TaskName, op
|
||||
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
|
||||
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 {
|
||||
@@ -914,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)
|
||||
@@ -942,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 {
|
||||
@@ -972,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)
|
||||
@@ -1082,7 +1163,11 @@ func (s *Butler) StopTask(ctx context.Context, taskName operations.PathParamTask
|
||||
case httpRes.StatusCode == 404:
|
||||
fallthrough
|
||||
case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500:
|
||||
fallthrough
|
||||
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 {
|
||||
|
||||
2357
codeSamples.yaml
2357
codeSamples.yaml
File diff suppressed because it is too large
Load Diff
11
docs/models/operations/alllibraries.md
Normal file
11
docs/models/operations/alllibraries.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# AllLibraries
|
||||
|
||||
Indicates if the user has access to all libraries.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------- | --------------------- |
|
||||
| `AllLibrariesDisable` | 0 |
|
||||
| `AllLibrariesEnable` | 1 |
|
||||
11
docs/models/operations/allowcameraupload.md
Normal file
11
docs/models/operations/allowcameraupload.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# AllowCameraUpload
|
||||
|
||||
Indicates if the user is allowed to upload from a camera.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| -------------------------- | -------------------------- |
|
||||
| `AllowCameraUploadDisable` | 0 |
|
||||
| `AllowCameraUploadEnable` | 1 |
|
||||
11
docs/models/operations/allowchannels.md
Normal file
11
docs/models/operations/allowchannels.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# AllowChannels
|
||||
|
||||
Indicates if the user has access to channels.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ---------------------- | ---------------------- |
|
||||
| `AllowChannelsDisable` | 0 |
|
||||
| `AllowChannelsEnable` | 1 |
|
||||
11
docs/models/operations/allowsubtitleadmin.md
Normal file
11
docs/models/operations/allowsubtitleadmin.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# AllowSubtitleAdmin
|
||||
|
||||
Indicates if the user can manage subtitles.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------- | --------------------------- |
|
||||
| `AllowSubtitleAdminDisable` | 0 |
|
||||
| `AllowSubtitleAdminEnable` | 1 |
|
||||
11
docs/models/operations/allowsync.md
Normal file
11
docs/models/operations/allowsync.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# AllowSync
|
||||
|
||||
Indicates if the user is allowed to sync media.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------ | ------------------ |
|
||||
| `AllowSyncDisable` | 0 |
|
||||
| `AllowSyncEnable` | 1 |
|
||||
11
docs/models/operations/allowtuners.md
Normal file
11
docs/models/operations/allowtuners.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# AllowTuners
|
||||
|
||||
Indicates if the user is allowed to use tuners.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| -------------------- | -------------------- |
|
||||
| `AllowTunersDisable` | 0 |
|
||||
| `AllowTunersEnable` | 1 |
|
||||
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,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 |
|
||||
10
docs/models/operations/getcountrieslibrarydirectory.md
Normal file
10
docs/models/operations/getcountrieslibrarydirectory.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetCountriesLibraryDirectory
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- |
|
||||
| `FastKey` | *string* | :heavy_check_mark: | N/A | /library/sections/2/all?country=15491 |
|
||||
| `Key` | *string* | :heavy_check_mark: | N/A | 15491 |
|
||||
| `Title` | *string* | :heavy_check_mark: | N/A | Japan |
|
||||
22
docs/models/operations/getcountrieslibrarymediacontainer.md
Normal file
22
docs/models/operations/getcountrieslibrarymediacontainer.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# GetCountriesLibraryMediaContainer
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
|
||||
| `Size` | *float64* | :heavy_check_mark: | N/A | 50 |
|
||||
| `Offset` | **int* | :heavy_minus_sign: | N/A | |
|
||||
| `TotalSize` | **int* | :heavy_minus_sign: | N/A | |
|
||||
| `Identifier` | *string* | :heavy_check_mark: | N/A | com.plexapp.plugins.library |
|
||||
| `AllowSync` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `Art` | *string* | :heavy_check_mark: | N/A | /:/resources/show-fanart.jpg |
|
||||
| `Content` | *string* | :heavy_check_mark: | N/A | secondary |
|
||||
| `MediaTagPrefix` | *string* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ |
|
||||
| `MediaTagVersion` | *int64* | :heavy_check_mark: | N/A | 1734362201 |
|
||||
| `Nocache` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `Thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/show.png |
|
||||
| `Title1` | *string* | :heavy_check_mark: | N/A | TV Series |
|
||||
| `Title2` | *string* | :heavy_check_mark: | N/A | By Country |
|
||||
| `ViewGroup` | *string* | :heavy_check_mark: | N/A | secondary |
|
||||
| `Directory` | [][operations.GetCountriesLibraryDirectory](../../models/operations/getcountrieslibrarydirectory.md) | :heavy_minus_sign: | N/A | |
|
||||
8
docs/models/operations/getcountrieslibraryrequest.md
Normal file
8
docs/models/operations/getcountrieslibraryrequest.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetCountriesLibraryRequest
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| 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 |
|
||||
11
docs/models/operations/getcountrieslibraryresponse.md
Normal file
11
docs/models/operations/getcountrieslibraryresponse.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetCountriesLibraryResponse
|
||||
|
||||
|
||||
## 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.GetCountriesLibraryResponseBody](../../models/operations/getcountrieslibraryresponsebody.md) | :heavy_minus_sign: | Successful response containing media container data. |
|
||||
10
docs/models/operations/getcountrieslibraryresponsebody.md
Normal file
10
docs/models/operations/getcountrieslibraryresponsebody.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetCountriesLibraryResponseBody
|
||||
|
||||
Successful response containing media container data.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
||||
| `MediaContainer` | [*operations.GetCountriesLibraryMediaContainer](../../models/operations/getcountrieslibrarymediacontainer.md) | :heavy_minus_sign: | N/A |
|
||||
11
docs/models/operations/getgenreslibrarydirectory.md
Normal file
11
docs/models/operations/getgenreslibrarydirectory.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetGenresLibraryDirectory
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- |
|
||||
| `FastKey` | *string* | :heavy_check_mark: | N/A | /library/sections/10/all?genre=89 |
|
||||
| `Key` | *string* | :heavy_check_mark: | N/A | 89 |
|
||||
| `Title` | *string* | :heavy_check_mark: | N/A | Action |
|
||||
| `Type` | *string* | :heavy_check_mark: | N/A | genre |
|
||||
22
docs/models/operations/getgenreslibrarymediacontainer.md
Normal file
22
docs/models/operations/getgenreslibrarymediacontainer.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# GetGenresLibraryMediaContainer
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
|
||||
| `Size` | *float64* | :heavy_check_mark: | N/A | 50 |
|
||||
| `Offset` | **int* | :heavy_minus_sign: | N/A | |
|
||||
| `TotalSize` | **int* | :heavy_minus_sign: | N/A | |
|
||||
| `Identifier` | *string* | :heavy_check_mark: | N/A | com.plexapp.plugins.library |
|
||||
| `AllowSync` | *bool* | :heavy_check_mark: | N/A | false |
|
||||
| `Art` | *string* | :heavy_check_mark: | N/A | /:/resources/show-fanart.jpg |
|
||||
| `Content` | *string* | :heavy_check_mark: | N/A | secondary |
|
||||
| `MediaTagPrefix` | *string* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ |
|
||||
| `MediaTagVersion` | *int64* | :heavy_check_mark: | N/A | 1734362201 |
|
||||
| `Nocache` | *bool* | :heavy_check_mark: | N/A | true |
|
||||
| `Thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/show.png |
|
||||
| `Title1` | *string* | :heavy_check_mark: | N/A | TV Shows (Reality) |
|
||||
| `Title2` | *string* | :heavy_check_mark: | N/A | By Genre |
|
||||
| `ViewGroup` | *string* | :heavy_check_mark: | N/A | secondary |
|
||||
| `Directory` | [][operations.GetGenresLibraryDirectory](../../models/operations/getgenreslibrarydirectory.md) | :heavy_minus_sign: | N/A | |
|
||||
8
docs/models/operations/getgenreslibraryrequest.md
Normal file
8
docs/models/operations/getgenreslibraryrequest.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetGenresLibraryRequest
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| 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 |
|
||||
11
docs/models/operations/getgenreslibraryresponse.md
Normal file
11
docs/models/operations/getgenreslibraryresponse.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetGenresLibraryResponse
|
||||
|
||||
|
||||
## 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.GetGenresLibraryResponseBody](../../models/operations/getgenreslibraryresponsebody.md) | :heavy_minus_sign: | Successful response containing media container data. |
|
||||
10
docs/models/operations/getgenreslibraryresponsebody.md
Normal file
10
docs/models/operations/getgenreslibraryresponsebody.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetGenresLibraryResponseBody
|
||||
|
||||
Successful response containing media container data.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
||||
| `MediaContainer` | [*operations.GetGenresLibraryMediaContainer](../../models/operations/getgenreslibrarymediacontainer.md) | :heavy_minus_sign: | N/A |
|
||||
@@ -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 |
|
||||
@@ -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/>aired = TheTVDB (Aired),<br/>dvd = TheTVDB (DVD),<br/>absolute = TheTVDB (Absolute)).<br/> | absolute |
|
||||
| `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 |
|
||||
|
||||
@@ -17,4 +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 |
|
||||
| `GetLibraryItemsQueryParamTypeAudio` | 8 |
|
||||
| `GetLibraryItemsQueryParamTypeAlbum` | 9 |
|
||||
| `GetLibraryItemsQueryParamTypeTrack` | 10 |
|
||||
@@ -1,20 +1,20 @@
|
||||
# GetLibraryItemsShowOrdering
|
||||
|
||||
Setting that indicates the episode ordering for the show
|
||||
None = Library default,
|
||||
tmdbAiring = The Movie Database (Aired),
|
||||
aired = TheTVDB (Aired),
|
||||
dvd = TheTVDB (DVD),
|
||||
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)).
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------- | --------------------------------------- |
|
||||
| `GetLibraryItemsShowOrderingNone` | None |
|
||||
| `GetLibraryItemsShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `GetLibraryItemsShowOrderingAired` | aired |
|
||||
| `GetLibraryItemsShowOrderingDvd` | dvd |
|
||||
| `GetLibraryItemsShowOrderingAbsolute` | absolute |
|
||||
| Name | Value |
|
||||
| ----------------------------------------- | ----------------------------------------- |
|
||||
| `GetLibraryItemsShowOrderingNone` | None |
|
||||
| `GetLibraryItemsShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `GetLibraryItemsShowOrderingTvdbAired` | aired |
|
||||
| `GetLibraryItemsShowOrderingTvdbDvd` | dvd |
|
||||
| `GetLibraryItemsShowOrderingTvdbAbsolute` | absolute |
|
||||
@@ -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 |
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
# GetPinGlobals
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | 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 |
|
||||
@@ -6,7 +6,7 @@
|
||||
| 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: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `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 |
|
||||
|
||||
@@ -17,4 +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 |
|
||||
| `GetPlaylistContentsQueryParamTypeAudio` | 8 |
|
||||
| `GetPlaylistContentsQueryParamTypeAlbum` | 9 |
|
||||
| `GetPlaylistContentsQueryParamTypeTrack` | 10 |
|
||||
@@ -9,6 +9,6 @@
|
||||
| `Offset` | **int* | :heavy_minus_sign: | N/A | |
|
||||
| `TotalSize` | **int* | :heavy_minus_sign: | N/A | |
|
||||
| `Identifier` | **string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library |
|
||||
| `AllowSync` | **bool* | :heavy_minus_sign: | N/A | |
|
||||
| `AllowSync` | **bool* | :heavy_minus_sign: | N/A | false |
|
||||
| `Meta` | [*operations.Meta](../../models/operations/meta.md) | :heavy_minus_sign: | The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.<br/> | |
|
||||
| `Metadata` | [][operations.GetRecentlyAddedMetadata](../../models/operations/getrecentlyaddedmetadata.md) | :heavy_minus_sign: | N/A | |
|
||||
@@ -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/>aired = TheTVDB (Aired),<br/>dvd = TheTVDB (DVD),<br/>absolute = TheTVDB (Absolute)).<br/> | absolute |
|
||||
| `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 |
|
||||
|
||||
@@ -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 |
|
||||
@@ -1,9 +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 |
|
||||
| ------------------------------------------ | ------------------------------------------ |
|
||||
| `GetSearchAllLibrariesFlattenSeasonsFalse` | 0 |
|
||||
| `GetSearchAllLibrariesFlattenSeasonsTrue` | 1 |
|
||||
| Name | Value |
|
||||
| --------------------------------------------------- | --------------------------------------------------- |
|
||||
| `GetSearchAllLibrariesFlattenSeasonsLibraryDefault` | -1 |
|
||||
| `GetSearchAllLibrariesFlattenSeasonsHide` | 0 |
|
||||
| `GetSearchAllLibrariesFlattenSeasonsShow` | 1 |
|
||||
@@ -1,8 +0,0 @@
|
||||
# GetSearchAllLibrariesGlobals
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
@@ -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.GetSearchAllLibrariesFlattenSeasons](../../models/operations/getsearchalllibrariesflattenseasons.md) | :heavy_minus_sign: | N/A | 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/>aired = TheTVDB (Aired), <br/>dvd = TheTVDB (DVD), <br/>absolute = TheTVDB (Absolute)).<br/> | dvd |
|
||||
| `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/>aired = TheTVDB (Aired),<br/>dvd = TheTVDB (DVD),<br/>absolute = TheTVDB (Absolute)).<br/> | absolute |
|
||||
| `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 |
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
||||
| `Query` | *string* | :heavy_check_mark: | The search query term. | |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `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 |
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
# GetSearchAllLibrariesShowOrdering
|
||||
|
||||
Setting that indicates the episode ordering for the show
|
||||
None = Library default,
|
||||
tmdbAiring = The Movie Database (Aired),
|
||||
aired = TheTVDB (Aired),
|
||||
dvd = TheTVDB (DVD),
|
||||
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)).
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| --------------------------------------------- | --------------------------------------------- |
|
||||
| `GetSearchAllLibrariesShowOrderingNone` | None |
|
||||
| `GetSearchAllLibrariesShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `GetSearchAllLibrariesShowOrderingAired` | aired |
|
||||
| `GetSearchAllLibrariesShowOrderingDvd` | dvd |
|
||||
| `GetSearchAllLibrariesShowOrderingAbsolute` | absolute |
|
||||
| Name | Value |
|
||||
| ----------------------------------------------- | ----------------------------------------------- |
|
||||
| `GetSearchAllLibrariesShowOrderingNone` | None |
|
||||
| `GetSearchAllLibrariesShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `GetSearchAllLibrariesShowOrderingTvdbAired` | aired |
|
||||
| `GetSearchAllLibrariesShowOrderingTvdbDvd` | dvd |
|
||||
| `GetSearchAllLibrariesShowOrderingTvdbAbsolute` | absolute |
|
||||
@@ -17,4 +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 |
|
||||
| `GetSearchLibraryQueryParamTypeAudio` | 8 |
|
||||
| `GetSearchLibraryQueryParamTypeAlbum` | 9 |
|
||||
| `GetSearchLibraryQueryParamTypeTrack` | 10 |
|
||||
@@ -1,8 +0,0 @@
|
||||
# GetServerResourcesGlobals
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
@@ -8,4 +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_minus_sign: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `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 | |
|
||||
@@ -1,12 +0,0 @@
|
||||
# GetTokenByPinIDGlobals
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | 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 |
|
||||
@@ -6,7 +6,7 @@
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `PinID` | *int64* | :heavy_check_mark: | The PinID to retrieve an access token for | |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `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 |
|
||||
|
||||
@@ -36,4 +36,4 @@
|
||||
| `Country` | [][operations.GetTopWatchedContentCountry](../../models/operations/gettopwatchedcontentcountry.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Guids` | [][operations.GetTopWatchedContentGuids](../../models/operations/gettopwatchedcontentguids.md) | :heavy_minus_sign: | N/A | |
|
||||
| `Role` | [][operations.GetTopWatchedContentRole](../../models/operations/gettopwatchedcontentrole.md) | :heavy_minus_sign: | N/A | |
|
||||
| `User` | [][operations.User](../../models/operations/user.md) | :heavy_minus_sign: | N/A | |
|
||||
| `User` | [][operations.GetTopWatchedContentUser](../../models/operations/gettopwatchedcontentuser.md) | :heavy_minus_sign: | N/A | |
|
||||
@@ -17,4 +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 |
|
||||
| `GetTopWatchedContentQueryParamTypeAudio` | 8 |
|
||||
| `GetTopWatchedContentQueryParamTypeAlbum` | 9 |
|
||||
| `GetTopWatchedContentQueryParamTypeTrack` | 10 |
|
||||
8
docs/models/operations/gettopwatchedcontentuser.md
Normal file
8
docs/models/operations/gettopwatchedcontentuser.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# GetTopWatchedContentUser
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `ID` | **int* | :heavy_minus_sign: | N/A | 220 |
|
||||
15
docs/models/operations/getusersmediacontainer.md
Normal file
15
docs/models/operations/getusersmediacontainer.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# GetUsersMediaContainer
|
||||
|
||||
Container holding user and server details.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- |
|
||||
| `FriendlyName` | *string* | :heavy_check_mark: | The friendly name of the Plex instance. | myPlex |
|
||||
| `Identifier` | *string* | :heavy_check_mark: | N/A | com.plexapp.plugins.myplex |
|
||||
| `MachineIdentifier` | *string* | :heavy_check_mark: | Unique Machine identifier of the Plex server. | 3dff4c4da3b1229a649aa574a9e2b419a684a20e |
|
||||
| `TotalSize` | *int64* | :heavy_check_mark: | Total number of users. | 30 |
|
||||
| `Size` | *int64* | :heavy_check_mark: | Number of users in the current response. | 30 |
|
||||
| `User` | [][operations.User](../../models/operations/user.md) | :heavy_check_mark: | List of users with access to the Plex server. | |
|
||||
20
docs/models/operations/getusersrequest.md
Normal file
20
docs/models/operations/getusersrequest.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# GetUsersRequest
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| 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 |
|
||||
| `DeviceName` | **string* | :heavy_minus_sign: | The name of the device the client application is running on. This is used to track the client application and its usage. (Chrome, Safari, etc.) | Chrome |
|
||||
| `DeviceScreenResolution` | **string* | :heavy_minus_sign: | The resolution of the device the client application is running on. This is used to track the client application and its usage. (1487x1165,2560x1440) | 1487x1165,2560x1440 |
|
||||
| `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 |
|
||||
| `ClientFeatures` | **string* | :heavy_minus_sign: | The features of the client application. This is used to track the client application and its usage. (external-media,indirect-media,hub-style-list) | external-media,indirect-media,hub-style-list |
|
||||
| `Model` | **string* | :heavy_minus_sign: | A potentially less friendly identifier for the device model | 4200X |
|
||||
| `XPlexSessionID` | **string* | :heavy_minus_sign: | The session ID of the client application. This is used to track the client application and its usage. (97e136ef-4ddd-4ff3-89a7-a5820c96c2ca) | 97e136ef-4ddd-4ff3-89a7-a5820c96c2ca |
|
||||
| `XPlexLanguage` | **string* | :heavy_minus_sign: | The language of the client application. | en |
|
||||
| `PlatformVersion` | **string* | :heavy_minus_sign: | The version of the platform | 4.3 build 1057 |
|
||||
| `XPlexToken` | *string* | :heavy_check_mark: | An authentication token, obtained from plex.tv | CV5xoxjTpFKUzBTShsaf |
|
||||
11
docs/models/operations/getusersresponse.md
Normal file
11
docs/models/operations/getusersresponse.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetUsersResponse
|
||||
|
||||
|
||||
## 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 |
|
||||
| `Body` | *[]byte* | :heavy_minus_sign: | N/A |
|
||||
10
docs/models/operations/getusersresponsebody.md
Normal file
10
docs/models/operations/getusersresponsebody.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetUsersResponseBody
|
||||
|
||||
Successful response with media container data in XML
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
|
||||
| `MediaContainer` | [*operations.GetUsersMediaContainer](../../models/operations/getusersmediacontainer.md) | :heavy_minus_sign: | Container holding user and server details. |
|
||||
16
docs/models/operations/getusersserver.md
Normal file
16
docs/models/operations/getusersserver.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# GetUsersServer
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
|
||||
| `ID` | *int64* | :heavy_check_mark: | Unique ID of the server of the connected user | 907759180 |
|
||||
| `ServerID` | *int64* | :heavy_check_mark: | ID of the actual Plex server. | 9999999 |
|
||||
| `MachineIdentifier` | *string* | :heavy_check_mark: | Machine identifier of the Plex server. | fbb8aa6be6e0c997c6268bc2b4431c8807f70a3 |
|
||||
| `Name` | *string* | :heavy_check_mark: | Name of the Plex server of the connected user. | ConnectedUserFlix |
|
||||
| `LastSeenAt` | *int64* | :heavy_check_mark: | N/A | 1556281940 |
|
||||
| `NumLibraries` | *int64* | :heavy_check_mark: | Number of libraries in the server this user has access to. | 16 |
|
||||
| `AllLibraries` | [*operations.AllLibraries](../../models/operations/alllibraries.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Owned` | [*operations.Owned](../../models/operations/owned.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Pending` | [*operations.Pending](../../models/operations/pending.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
11
docs/models/operations/home.md
Normal file
11
docs/models/operations/home.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# Home
|
||||
|
||||
Indicates if the user is part of a home group.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------- | ------------- |
|
||||
| `HomeDisable` | 0 |
|
||||
| `HomeEnable` | 1 |
|
||||
11
docs/models/operations/owned.md
Normal file
11
docs/models/operations/owned.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# Owned
|
||||
|
||||
Indicates if the user owns the server.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| -------------- | -------------- |
|
||||
| `OwnedDisable` | 0 |
|
||||
| `OwnedEnable` | 1 |
|
||||
11
docs/models/operations/pending.md
Normal file
11
docs/models/operations/pending.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# Pending
|
||||
|
||||
Indicates if the server is pending approval.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ---------------- | ---------------- |
|
||||
| `PendingDisable` | 0 |
|
||||
| `PendingEnable` | 1 |
|
||||
@@ -1,12 +0,0 @@
|
||||
# PostUsersSignInDataGlobals
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | 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 |
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
||||
| `ClientID` | **string* | :heavy_minus_sign: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `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 |
|
||||
|
||||
11
docs/models/operations/protected.md
Normal file
11
docs/models/operations/protected.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# Protected
|
||||
|
||||
Indicates whether the account is protected.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------ | ------------------ |
|
||||
| `ProtectedDisable` | 0 |
|
||||
| `ProtectedEnable` | 1 |
|
||||
@@ -17,4 +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 |
|
||||
| `QueryParamTypeAudio` | 8 |
|
||||
| `QueryParamTypeAlbum` | 9 |
|
||||
| `QueryParamTypeTrack` | 10 |
|
||||
11
docs/models/operations/restricted.md
Normal file
11
docs/models/operations/restricted.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# Restricted
|
||||
|
||||
Indicates if the user has restricted access.
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------- | ------------------- |
|
||||
| `RestrictedDisable` | 0 |
|
||||
| `RestrictedEnable` | 1 |
|
||||
@@ -1,20 +1,20 @@
|
||||
# ShowOrdering
|
||||
|
||||
Setting that indicates the episode ordering for the show
|
||||
None = Library default,
|
||||
tmdbAiring = The Movie Database (Aired),
|
||||
aired = TheTVDB (Aired),
|
||||
dvd = TheTVDB (DVD),
|
||||
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)).
|
||||
|
||||
|
||||
|
||||
## Values
|
||||
|
||||
| Name | Value |
|
||||
| ------------------------ | ------------------------ |
|
||||
| `ShowOrderingNone` | None |
|
||||
| `ShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `ShowOrderingAired` | aired |
|
||||
| `ShowOrderingDvd` | dvd |
|
||||
| `ShowOrderingAbsolute` | absolute |
|
||||
| Name | Value |
|
||||
| -------------------------- | -------------------------- |
|
||||
| `ShowOrderingNone` | None |
|
||||
| `ShowOrderingTmdbAiring` | tmdbAiring |
|
||||
| `ShowOrderingTvdbAired` | aired |
|
||||
| `ShowOrderingTvdbDvd` | dvd |
|
||||
| `ShowOrderingTvdbAbsolute` | absolute |
|
||||
@@ -25,4 +25,5 @@ A key representing a specific tag within the section.
|
||||
| `TagRating` | rating |
|
||||
| `TagResolution` | resolution |
|
||||
| `TagFirstCharacter` | firstCharacter |
|
||||
| `TagFolder` | folder |
|
||||
| `TagFolder` | folder |
|
||||
| `TagAlbums` | albums |
|
||||
@@ -17,4 +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 |
|
||||
| `TypeAudio` | 8 |
|
||||
| `TypeAlbum` | 9 |
|
||||
| `TypeTrack` | 10 |
|
||||
@@ -3,6 +3,25 @@
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
|
||||
| `ID` | **int* | :heavy_minus_sign: | N/A | 220 |
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
|
||||
| `ID` | *int64* | :heavy_check_mark: | User's unique ID. | 22526914 |
|
||||
| `Title` | *string* | :heavy_check_mark: | User's display name. | Plex User |
|
||||
| `Username` | *string* | :heavy_check_mark: | User's username. | zgfuc7krcqfimrmb9lsl5j |
|
||||
| `Email` | *string* | :heavy_check_mark: | User's email address. | zgfuc7krcqfimrmb9lsl5j@protonmail.com |
|
||||
| `RecommendationsPlaylistID` | **string* | :heavy_minus_sign: | ID of the user's recommendation playlist. | |
|
||||
| `Thumb` | *string* | :heavy_check_mark: | URL to the user's avatar image. | https://plex.tv/users/3346028014e93acd/avatar?c=1731605021 |
|
||||
| `Protected` | [*operations.Protected](../../models/operations/protected.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Home` | [*operations.Home](../../models/operations/home.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `AllowTuners` | [*operations.AllowTuners](../../models/operations/allowtuners.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `AllowSync` | [*operations.AllowSync](../../models/operations/allowsync.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `AllowCameraUpload` | [*operations.AllowCameraUpload](../../models/operations/allowcameraupload.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `AllowChannels` | [*operations.AllowChannels](../../models/operations/allowchannels.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `AllowSubtitleAdmin` | [*operations.AllowSubtitleAdmin](../../models/operations/allowsubtitleadmin.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `FilterAll` | **string* | :heavy_minus_sign: | Filters applied for all content. | |
|
||||
| `FilterMovies` | **string* | :heavy_minus_sign: | Filters applied for movies. | |
|
||||
| `FilterMusic` | **string* | :heavy_minus_sign: | Filters applied for music. | |
|
||||
| `FilterPhotos` | **string* | :heavy_minus_sign: | Filters applied for photos. | |
|
||||
| `FilterTelevision` | **string* | :heavy_minus_sign: | Filters applied for television. | |
|
||||
| `Restricted` | [*operations.Restricted](../../models/operations/restricted.md) | :heavy_minus_sign: | N/A | 1 |
|
||||
| `Server` | [][operations.GetUsersServer](../../models/operations/getusersserver.md) | :heavy_check_mark: | List of servers owned by the user. | |
|
||||
11
docs/models/sdkerrors/getcountrieslibrarybadrequest.md
Normal file
11
docs/models/sdkerrors/getcountrieslibrarybadrequest.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetCountriesLibraryBadRequest
|
||||
|
||||
Bad Request - A parameter was not specified, or was specified incorrectly.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
|
||||
| `Errors` | [][sdkerrors.GetCountriesLibraryErrors](../../models/sdkerrors/getcountrieslibraryerrors.md) | :heavy_minus_sign: | N/A |
|
||||
| `RawResponse` | [*http.Response](https://pkg.go.dev/net/http#Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||
10
docs/models/sdkerrors/getcountrieslibraryerrors.md
Normal file
10
docs/models/sdkerrors/getcountrieslibraryerrors.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetCountriesLibraryErrors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
|
||||
| `Code` | **int* | :heavy_minus_sign: | N/A | 1000 |
|
||||
| `Message` | **string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
|
||||
| `Status` | **int* | :heavy_minus_sign: | N/A | 400 |
|
||||
10
docs/models/sdkerrors/getcountrieslibrarylibraryerrors.md
Normal file
10
docs/models/sdkerrors/getcountrieslibrarylibraryerrors.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetCountriesLibraryLibraryErrors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
|
||||
| `Code` | **int* | :heavy_minus_sign: | N/A | 1001 |
|
||||
| `Message` | **string* | :heavy_minus_sign: | N/A | User could not be authenticated |
|
||||
| `Status` | **int* | :heavy_minus_sign: | N/A | 401 |
|
||||
11
docs/models/sdkerrors/getcountrieslibraryunauthorized.md
Normal file
11
docs/models/sdkerrors/getcountrieslibraryunauthorized.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetCountriesLibraryUnauthorized
|
||||
|
||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||
| `Errors` | [][sdkerrors.GetCountriesLibraryLibraryErrors](../../models/sdkerrors/getcountrieslibrarylibraryerrors.md) | :heavy_minus_sign: | N/A |
|
||||
| `RawResponse` | [*http.Response](https://pkg.go.dev/net/http#Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||
11
docs/models/sdkerrors/getgenreslibrarybadrequest.md
Normal file
11
docs/models/sdkerrors/getgenreslibrarybadrequest.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetGenresLibraryBadRequest
|
||||
|
||||
Bad Request - A parameter was not specified, or was specified incorrectly.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
|
||||
| `Errors` | [][sdkerrors.GetGenresLibraryErrors](../../models/sdkerrors/getgenreslibraryerrors.md) | :heavy_minus_sign: | N/A |
|
||||
| `RawResponse` | [*http.Response](https://pkg.go.dev/net/http#Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||
10
docs/models/sdkerrors/getgenreslibraryerrors.md
Normal file
10
docs/models/sdkerrors/getgenreslibraryerrors.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetGenresLibraryErrors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
|
||||
| `Code` | **int* | :heavy_minus_sign: | N/A | 1000 |
|
||||
| `Message` | **string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
|
||||
| `Status` | **int* | :heavy_minus_sign: | N/A | 400 |
|
||||
10
docs/models/sdkerrors/getgenreslibrarylibraryerrors.md
Normal file
10
docs/models/sdkerrors/getgenreslibrarylibraryerrors.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetGenresLibraryLibraryErrors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
|
||||
| `Code` | **int* | :heavy_minus_sign: | N/A | 1001 |
|
||||
| `Message` | **string* | :heavy_minus_sign: | N/A | User could not be authenticated |
|
||||
| `Status` | **int* | :heavy_minus_sign: | N/A | 401 |
|
||||
11
docs/models/sdkerrors/getgenreslibraryunauthorized.md
Normal file
11
docs/models/sdkerrors/getgenreslibraryunauthorized.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetGenresLibraryUnauthorized
|
||||
|
||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
|
||||
| `Errors` | [][sdkerrors.GetGenresLibraryLibraryErrors](../../models/sdkerrors/getgenreslibrarylibraryerrors.md) | :heavy_minus_sign: | N/A |
|
||||
| `RawResponse` | [*http.Response](https://pkg.go.dev/net/http#Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||
11
docs/models/sdkerrors/getusersbadrequest.md
Normal file
11
docs/models/sdkerrors/getusersbadrequest.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetUsersBadRequest
|
||||
|
||||
Bad Request - A parameter was not specified, or was specified incorrectly.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- |
|
||||
| `Errors` | [][sdkerrors.GetUsersErrors](../../models/sdkerrors/getuserserrors.md) | :heavy_minus_sign: | N/A |
|
||||
| `RawResponse` | [*http.Response](https://pkg.go.dev/net/http#Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||
10
docs/models/sdkerrors/getuserserrors.md
Normal file
10
docs/models/sdkerrors/getuserserrors.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetUsersErrors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
|
||||
| `Code` | **int* | :heavy_minus_sign: | N/A | 1000 |
|
||||
| `Message` | **string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
|
||||
| `Status` | **int* | :heavy_minus_sign: | N/A | 400 |
|
||||
11
docs/models/sdkerrors/getusersunauthorized.md
Normal file
11
docs/models/sdkerrors/getusersunauthorized.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# GetUsersUnauthorized
|
||||
|
||||
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description |
|
||||
| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
|
||||
| `Errors` | [][sdkerrors.GetUsersUsersErrors](../../models/sdkerrors/getusersuserserrors.md) | :heavy_minus_sign: | N/A |
|
||||
| `RawResponse` | [*http.Response](https://pkg.go.dev/net/http#Response) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |
|
||||
10
docs/models/sdkerrors/getusersuserserrors.md
Normal file
10
docs/models/sdkerrors/getusersuserserrors.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# GetUsersUsersErrors
|
||||
|
||||
|
||||
## Fields
|
||||
|
||||
| Field | Type | Required | Description | Example |
|
||||
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
|
||||
| `Code` | **int* | :heavy_minus_sign: | N/A | 1001 |
|
||||
| `Message` | **string* | :heavy_minus_sign: | N/A | User could not be authenticated |
|
||||
| `Status` | **int* | :heavy_minus_sign: | N/A | 401 |
|
||||
@@ -27,22 +27,18 @@ Get Server Activities
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Activities.GetServerActivities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -82,22 +78,18 @@ Cancel Server Activities
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Activities.CancelServerActivities(ctx, "25b71ed5-0f9d-461c-baa7-d404e9e10d3e")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -24,23 +24,19 @@ This endpoint provides the caller with a temporary token with the same access le
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Authentication.GetTransientToken(ctx, operations.GetTransientTokenQueryParamTypeDelegation, operations.ScopeAll)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -84,22 +80,18 @@ Note: requires Plex Media Server >= 1.15.4.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Authentication.GetSourceConnectionInformation(ctx, "provider://provider-identifier")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -140,22 +132,18 @@ Get the User data from the provided X-Plex-Token
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Authentication.GetTokenDetails(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -195,23 +183,23 @@ Sign in user with username and password and return user data with Plex authentic
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
s := plexgo.New(
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New()
|
||||
|
||||
res, err := s.Authentication.PostUsersSignInData(ctx, operations.PostUsersSignInDataRequest{
|
||||
ClientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||
ClientName: plexgo.String("Plex for Roku"),
|
||||
DeviceNickname: plexgo.String("Roku 3"),
|
||||
ClientVersion: plexgo.String("2.4.1"),
|
||||
Platform: plexgo.String("Roku"),
|
||||
RequestBody: &operations.PostUsersSignInDataRequestBody{
|
||||
Login: "username@email.com",
|
||||
Password: "password123",
|
||||
|
||||
@@ -24,22 +24,18 @@ Returns a list of butler tasks
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Butler.GetButlerTasks(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -84,22 +80,18 @@ This endpoint will attempt to start all Butler tasks that are enabled in the set
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Butler.StartAllTasks(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -140,22 +132,18 @@ This endpoint will stop all currently running tasks and remove any scheduled tas
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Butler.StopAllTasks(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -200,23 +188,19 @@ This endpoint will attempt to start a single Butler task that is enabled in the
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Butler.StartTask(ctx, operations.TaskNameCleanOldBundles)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -258,23 +242,19 @@ This endpoint will stop a currently running task by name, or remove it from the
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Butler.StopTask(ctx, operations.PathParamTaskNameBackupDatabase)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -22,22 +22,18 @@ Get Global Hubs filtered by the parameters provided.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Hubs.GetGlobalHubs(ctx, nil, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -80,30 +76,23 @@ This endpoint will return the recently added content.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Hubs.GetRecentlyAdded(ctx, operations.GetRecentlyAddedRequest{
|
||||
ContentDirectoryID: 470161,
|
||||
SectionID: plexgo.Int64(2),
|
||||
Type: operations.TypeTvShow,
|
||||
IncludeMeta: operations.IncludeMetaEnable.ToPointer(),
|
||||
XPlexContainerStart: plexgo.Int(0),
|
||||
XPlexContainerSize: plexgo.Int(50),
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -143,22 +132,18 @@ This endpoint will return a list of library specific hubs
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Hubs.GetLibraryHubs(ctx, 6728.76, nil, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -16,6 +16,8 @@ API Calls interacting with Plex Media Server Libraries
|
||||
* [GetLibraryItems](#getlibraryitems) - Get Library Items
|
||||
* [GetRefreshLibraryMetadata](#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
|
||||
* [GetSearchLibrary](#getsearchlibrary) - Search Library
|
||||
* [GetGenresLibrary](#getgenreslibrary) - Get Genres of library media
|
||||
* [GetCountriesLibrary](#getcountrieslibrary) - Get Countries of library media
|
||||
* [GetSearchAllLibraries](#getsearchalllibraries) - Search All Libraries
|
||||
* [GetMetaDataByRatingKey](#getmetadatabyratingkey) - Get Metadata by RatingKey
|
||||
* [GetMetadataChildren](#getmetadatachildren) - Get Items Children
|
||||
@@ -32,22 +34,18 @@ This resource returns hash values for local files
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetFileHash(ctx, "file://C:\Image.png&type=13", nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -90,23 +88,19 @@ This endpoint will return the recently added content.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetRecentlyAddedLibrary(ctx, operations.GetRecentlyAddedLibraryRequest{
|
||||
ContentDirectoryID: plexgo.Int64(2),
|
||||
PinnedContentDirectoryID: []int64{
|
||||
@@ -125,9 +119,6 @@ func main() {
|
||||
},
|
||||
SectionID: plexgo.Int64(2),
|
||||
Type: operations.QueryParamTypeTvShow,
|
||||
IncludeMeta: operations.QueryParamIncludeMetaEnable.ToPointer(),
|
||||
XPlexContainerStart: plexgo.Int(0),
|
||||
XPlexContainerSize: plexgo.Int(50),
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -174,22 +165,18 @@ This allows a client to provide a rich interface around the media (e.g. allow so
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetAllLibraries(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -268,22 +255,18 @@ Each type in the library comes with a set of filters and sorts, aiding in buildi
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetLibraryDetails(ctx, 9518, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -325,22 +308,18 @@ Delete a library using a specific section id
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.DeleteLibrary(ctx, 9518)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -393,6 +372,7 @@ Fetches details from a specific section of the library identified by a section k
|
||||
- `resolution`: Items categorized by resolution.
|
||||
- `firstCharacter`: Items categorized by the first letter.
|
||||
- `folder`: Items categorized by folder.
|
||||
- `albums`: Items categorized by album.
|
||||
|
||||
|
||||
### Example Usage
|
||||
@@ -401,31 +381,23 @@ Fetches details from a specific section of the library identified by a section k
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetLibraryItems(ctx, operations.GetLibraryItemsRequest{
|
||||
Tag: operations.TagEdition,
|
||||
IncludeGuids: operations.IncludeGuidsEnable.ToPointer(),
|
||||
Type: operations.GetLibraryItemsQueryParamTypeTvShow.ToPointer(),
|
||||
SectionKey: 9518,
|
||||
IncludeMeta: operations.GetLibraryItemsQueryParamIncludeMetaEnable.ToPointer(),
|
||||
XPlexContainerStart: plexgo.Int(0),
|
||||
XPlexContainerSize: plexgo.Int(50),
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -467,23 +439,19 @@ This endpoint Refreshes all the Metadata of the library.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetRefreshLibraryMetadata(ctx, 9518, operations.ForceOne.ToPointer())
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -543,23 +511,19 @@ Each type in the library comes with a set of filters and sorts, aiding in buildi
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetSearchLibrary(ctx, 9518, operations.GetSearchLibraryQueryParamTypeTvShow)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -591,6 +555,112 @@ func main() {
|
||||
| sdkerrors.GetSearchLibraryUnauthorized | 401 | application/json |
|
||||
| sdkerrors.SDKError | 4XX, 5XX | \*/\* |
|
||||
|
||||
## GetGenresLibrary
|
||||
|
||||
Retrieves a list of all the genres that are found for the media in this library.
|
||||
|
||||
|
||||
### Example Usage
|
||||
|
||||
```go
|
||||
package main
|
||||
|
||||
import(
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
)
|
||||
|
||||
res, err := s.Library.GetGenresLibrary(ctx, 9518)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
if res.Object != nil {
|
||||
// handle response
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Parameters
|
||||
|
||||
| Parameter | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
|
||||
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
|
||||
| `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 |
|
||||
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
|
||||
|
||||
### Response
|
||||
|
||||
**[*operations.GetGenresLibraryResponse](../../models/operations/getgenreslibraryresponse.md), error**
|
||||
|
||||
### Errors
|
||||
|
||||
| Error Type | Status Code | Content Type |
|
||||
| -------------------------------------- | -------------------------------------- | -------------------------------------- |
|
||||
| sdkerrors.GetGenresLibraryBadRequest | 400 | application/json |
|
||||
| sdkerrors.GetGenresLibraryUnauthorized | 401 | application/json |
|
||||
| sdkerrors.SDKError | 4XX, 5XX | \*/\* |
|
||||
|
||||
## GetCountriesLibrary
|
||||
|
||||
Retrieves a list of all the countries that are found for the media in this library.
|
||||
|
||||
|
||||
### Example Usage
|
||||
|
||||
```go
|
||||
package main
|
||||
|
||||
import(
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
)
|
||||
|
||||
res, err := s.Library.GetCountriesLibrary(ctx, 9518)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
if res.Object != nil {
|
||||
// handle response
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Parameters
|
||||
|
||||
| Parameter | Type | Required | Description | Example |
|
||||
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
|
||||
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
|
||||
| `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 |
|
||||
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
|
||||
|
||||
### Response
|
||||
|
||||
**[*operations.GetCountriesLibraryResponse](../../models/operations/getcountrieslibraryresponse.md), error**
|
||||
|
||||
### Errors
|
||||
|
||||
| Error Type | Status Code | Content Type |
|
||||
| ----------------------------------------- | ----------------------------------------- | ----------------------------------------- |
|
||||
| sdkerrors.GetCountriesLibraryBadRequest | 400 | application/json |
|
||||
| sdkerrors.GetCountriesLibraryUnauthorized | 401 | application/json |
|
||||
| sdkerrors.SDKError | 4XX, 5XX | \*/\* |
|
||||
|
||||
## GetSearchAllLibraries
|
||||
|
||||
Search the provided query across all library sections, or a single section, and return matches as hubs, split up by type.
|
||||
@@ -602,30 +672,25 @@ Search the provided query across all library sections, or a single section, and
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetSearchAllLibraries(ctx, operations.GetSearchAllLibrariesRequest{
|
||||
Query: "<value>",
|
||||
ClientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||
SearchTypes: []operations.SearchTypes{
|
||||
operations.SearchTypesPeople,
|
||||
},
|
||||
IncludeCollections: operations.QueryParamIncludeCollectionsEnable.ToPointer(),
|
||||
IncludeExternalMedia: operations.QueryParamIncludeExternalMediaEnable.ToPointer(),
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -667,22 +732,18 @@ This endpoint will return the metadata of a library item specified with the rati
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetMetaDataByRatingKey(ctx, 9518)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -724,22 +785,18 @@ This endpoint will return the children of of a library item specified with the r
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetMetadataChildren(ctx, 1539.14, plexgo.String("Stream"))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -782,23 +839,19 @@ This endpoint will return the top watched content from libraries of a certain ty
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetTopWatchedContent(ctx, operations.GetTopWatchedContentQueryParamTypeTvShow, plexgo.Int64(1))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -841,22 +894,18 @@ This endpoint will return the on deck content.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Library.GetOnDeck(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -23,23 +23,19 @@ This endpoint will write a single-line log message, including a level and source
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Log.LogLine(ctx, operations.LevelThree, "Test log message", "Postman")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -103,22 +99,18 @@ Ensure each parameter is properly URL-encoded to avoid interpretation issues.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Log.LogMultiLine(ctx, "level=4&message=Test%20message%201&source=postman\n" +
|
||||
"level=3&message=Test%20message%202&source=postman\n" +
|
||||
"level=1&message=Test%20message%203&source=postman")
|
||||
@@ -162,22 +154,18 @@ This endpoint will enable all Plex Media Serverlogs to be sent to the Papertrail
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Log.EnablePaperTrail(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -24,22 +24,18 @@ This will mark the provided media key as Played.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Media.MarkPlayed(ctx, 59398)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -80,22 +76,18 @@ This will mark the provided media key as Unplayed.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Media.MarkUnplayed(ctx, 59398)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -137,22 +129,18 @@ This API command can be used to update the play progress of a media item.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Media.UpdatePlayProgress(ctx, "<key>", 90000, "played")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -195,23 +183,19 @@ Gets the banner image of the media item
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Media.GetBannerImage(ctx, operations.GetBannerImageRequest{
|
||||
RatingKey: 9518,
|
||||
Width: 396,
|
||||
@@ -259,23 +243,19 @@ Gets the thumbnail image of the media item
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Media.GetThumbImage(ctx, operations.GetThumbImageRequest{
|
||||
RatingKey: 9518,
|
||||
Width: 396,
|
||||
|
||||
@@ -34,28 +34,24 @@ Create a new playlist. By default the playlist is blank. To create a playlist al
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.CreatePlaylist(ctx, operations.CreatePlaylistRequest{
|
||||
Title: "<value>",
|
||||
Type: operations.CreatePlaylistQueryParamTypePhoto,
|
||||
Smart: operations.SmartOne,
|
||||
URI: "https://inborn-brochure.biz",
|
||||
URI: "https://hoarse-testing.info/",
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -96,22 +92,18 @@ Get All Playlists given the specified filters.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.GetPlaylists(ctx, nil, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -155,22 +147,18 @@ Smart playlist details contain the `content` attribute. This is the content URI
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.GetPlaylist(ctx, 4109.48)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -212,22 +200,18 @@ This endpoint will delete a playlist
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.DeletePlaylist(ctx, 216.22)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -269,22 +253,18 @@ From PMS version 1.9.1 clients can also edit playlist metadata using this endpoi
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.UpdatePlaylist(ctx, 3915, nil, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -331,23 +311,19 @@ Note that for dumb playlists, items have a `playlistItemID` attribute which is u
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.GetPlaylistContents(ctx, 5004.46, operations.GetPlaylistContentsQueryParamTypeTvShow)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -390,22 +366,18 @@ Clears a playlist, only works with dumb playlists. Returns the playlist.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.ClearPlaylistContents(ctx, 1893.18)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -448,22 +420,18 @@ With a smart playlist, passing a new `uri` parameter replaces the rules for the
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.AddPlaylistContents(ctx, 8502.01, "server://12345/com.plexapp.plugins.library/library/metadata/1", plexgo.Float64(123))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -507,23 +475,19 @@ Imports m3u playlists by passing a path on the server to scan for m3u-formatted
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Playlists.UploadPlaylist(ctx, "/home/barkley/playlist.m3u", operations.QueryParamForceZero, 1)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -26,22 +26,18 @@ Get Companions Data
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Plex.GetCompanionsData(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -81,22 +77,18 @@ Get friends of provided auth token.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Plex.GetUserFriends(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -136,21 +128,16 @@ Returns the geolocation and locale data of the caller
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
s := plexgo.New(
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New()
|
||||
|
||||
res, err := s.Plex.GetGeoData(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -190,22 +177,18 @@ Retrieves the home data for the authenticated user, including details like home
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Plex.GetHomeData(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -245,24 +228,19 @@ Get Plex server access tokens and server connections
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Plex.GetServerResources(ctx, operations.IncludeHTTPSEnable.ToPointer(), operations.IncludeRelayEnable.ToPointer(), operations.IncludeIPv6Enable.ToPointer(), plexgo.String("3381b62b-9ab7-4e37-827b-203e9809eb58"))
|
||||
res, err := s.Plex.GetServerResources(ctx, "3381b62b-9ab7-4e37-827b-203e9809eb58", nil, nil, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
@@ -277,10 +255,10 @@ func main() {
|
||||
| Parameter | Type | Required | Description | Example |
|
||||
| ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
|
||||
| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | |
|
||||
| `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 |
|
||||
| `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_minus_sign: | An opaque identifier unique to the client (UUID, serial number, or other unique device ID) | 3381b62b-9ab7-4e37-827b-203e9809eb58 |
|
||||
| `opts` | [][operations.Option](../../models/operations/option.md) | :heavy_minus_sign: | The options for this request. | |
|
||||
|
||||
### Response
|
||||
@@ -305,23 +283,24 @@ Retrieve a Pin ID from Plex.tv to use for authentication flows
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
s := plexgo.New(
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Plex.GetPin(ctx, operations.GetPinRequest{})
|
||||
|
||||
s := plexgo.New()
|
||||
|
||||
res, err := s.Plex.GetPin(ctx, operations.GetPinRequest{
|
||||
ClientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||
ClientName: plexgo.String("Plex for Roku"),
|
||||
DeviceNickname: plexgo.String("Roku 3"),
|
||||
ClientVersion: plexgo.String("2.4.1"),
|
||||
Platform: plexgo.String("Roku"),
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
@@ -360,24 +339,24 @@ Retrieve an Access Token from Plex.tv after the Pin has been authenticated
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
s := plexgo.New(
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New()
|
||||
|
||||
res, err := s.Plex.GetTokenByPinID(ctx, operations.GetTokenByPinIDRequest{
|
||||
PinID: 408895,
|
||||
ClientID: "3381b62b-9ab7-4e37-827b-203e9809eb58",
|
||||
ClientName: plexgo.String("Plex for Roku"),
|
||||
DeviceNickname: plexgo.String("Roku 3"),
|
||||
ClientVersion: plexgo.String("2.4.1"),
|
||||
Platform: plexgo.String("Roku"),
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -26,3 +26,6 @@ The following SDKs are generated from the OpenAPI Specification. They are automa
|
||||
| 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) | -
|
||||
|
||||
|
||||
### Available Operations
|
||||
|
||||
@@ -34,23 +34,19 @@ This request is intended to be very fast, and called as the user types.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Search.PerformSearch(ctx, "dylan", nil, plexgo.Float64(5))
|
||||
res, err := s.Search.PerformSearch(ctx, "dylan", nil, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
@@ -96,23 +92,19 @@ Results, as well as their containing per-type hubs, contain a `distance` attribu
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Search.PerformVoiceSearch(ctx, "dead+poop", nil, plexgo.Float64(5))
|
||||
res, err := s.Search.PerformVoiceSearch(ctx, "dead+poop", nil, nil)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
@@ -154,22 +146,18 @@ This will search the database for the string provided.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Search.GetSearchResults(ctx, "110")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -28,22 +28,18 @@ Get Server Capabilities
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerCapabilities(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -83,22 +79,18 @@ Get Server Preferences
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerPreferences(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -138,22 +130,18 @@ Get Available Clients
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetAvailableClients(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -193,22 +181,18 @@ Get Devices
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetDevices(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -248,21 +232,16 @@ This request is useful to determine if the server is online or offline
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
s := plexgo.New(
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New()
|
||||
|
||||
res, err := s.Server.GetServerIdentity(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -301,22 +280,18 @@ Returns MyPlex Account Information
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetMyPlexAccount(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -357,23 +332,19 @@ Plex's Photo transcoder is used throughout the service to serve images at specif
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetResizedPhoto(ctx, operations.GetResizedPhotoRequest{
|
||||
Width: 110,
|
||||
Height: 165,
|
||||
@@ -422,22 +393,18 @@ Retrieves media providers and their features from the Plex server.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetMediaProviders(ctx, "CV5xoxjTpFKUzBTShsaf")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -478,22 +445,18 @@ Get Server List
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Server.GetServerList(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
@@ -23,22 +23,18 @@ This will retrieve the "Now Playing" Information of the PMS.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Sessions.GetSessions(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -78,23 +74,19 @@ This will Retrieve a listing of all history views.
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"github.com/LukeHagar/plexgo/models/operations"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Sessions.GetSessionHistory(ctx, plexgo.String("viewedAt:desc"), plexgo.Int64(1), &operations.QueryParamFilter{}, plexgo.Int64(12))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -138,22 +130,18 @@ Get Transcode Sessions
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Sessions.GetTranscodeSessions(ctx)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
@@ -193,22 +181,18 @@ Stop a Transcode Session
|
||||
package main
|
||||
|
||||
import(
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"context"
|
||||
"github.com/LukeHagar/plexgo"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
ctx := context.Background()
|
||||
|
||||
s := plexgo.New(
|
||||
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
|
||||
plexgo.WithClientID("3381b62b-9ab7-4e37-827b-203e9809eb58"),
|
||||
plexgo.WithClientName("Plex for Roku"),
|
||||
plexgo.WithClientVersion("2.4.1"),
|
||||
plexgo.WithPlatform("Roku"),
|
||||
plexgo.WithDeviceNickname("Roku 3"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
res, err := s.Sessions.StopTranscodeSession(ctx, "zz7llzqlx8w9vnrsbnwhbmep")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user