Skip to content

Latest commit

 

History

History
487 lines (355 loc) · 21.4 KB

README.md

File metadata and controls

487 lines (355 loc) · 21.4 KB

Server

(Server)

Overview

Operations against the Plex Media Server System.

Available Operations

GetServerCapabilities

Get Server Capabilities

Example Usage

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.Server.GetServerCapabilities(ctx)
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
opts []operations.Option The options for this request.

Response

*operations.GetServerCapabilitiesResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetServerCapabilitiesBadRequest 400 application/json
sdkerrors.GetServerCapabilitiesUnauthorized 401 application/json
sdkerrors.SDKError 4XX, 5XX */*

GetServerPreferences

Get Server Preferences

Example Usage

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.Server.GetServerPreferences(ctx)
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
opts []operations.Option The options for this request.

Response

*operations.GetServerPreferencesResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetServerPreferencesBadRequest 400 application/json
sdkerrors.GetServerPreferencesUnauthorized 401 application/json
sdkerrors.SDKError 4XX, 5XX */*

GetAvailableClients

Get Available Clients

Example Usage

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.Server.GetAvailableClients(ctx)
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
opts []operations.Option The options for this request.

Response

*operations.GetAvailableClientsResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetAvailableClientsBadRequest 400 application/json
sdkerrors.GetAvailableClientsUnauthorized 401 application/json
sdkerrors.SDKError 4XX, 5XX */*

GetDevices

Get Devices

Example Usage

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.Server.GetDevices(ctx)
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
opts []operations.Option The options for this request.

Response

*operations.GetDevicesResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetDevicesBadRequest 400 application/json
sdkerrors.GetDevicesUnauthorized 401 application/json
sdkerrors.SDKError 4XX, 5XX */*

GetServerIdentity

This request is useful to determine if the server is online or offline

Example Usage

package main

import(
	"context"
	"github.com/LukeHagar/plexgo"
	"log"
)

func main() {
    ctx := context.Background()
    
    s := plexgo.New()

    res, err := s.Server.GetServerIdentity(ctx)
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
opts []operations.Option The options for this request.

Response

*operations.GetServerIdentityResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetServerIdentityRequestTimeout 408 application/json
sdkerrors.SDKError 4XX, 5XX */*

GetMyPlexAccount

Returns MyPlex Account Information

Example Usage

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.Server.GetMyPlexAccount(ctx)
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
opts []operations.Option The options for this request.

Response

*operations.GetMyPlexAccountResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetMyPlexAccountBadRequest 400 application/json
sdkerrors.GetMyPlexAccountUnauthorized 401 application/json
sdkerrors.SDKError 4XX, 5XX */*

GetResizedPhoto

Plex's Photo transcoder is used throughout the service to serve images at specified sizes.

Example Usage

package main

import(
	"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>"),
    )

    res, err := s.Server.GetResizedPhoto(ctx, operations.GetResizedPhotoRequest{
        Width: 110,
        Height: 165,
        Opacity: 100,
        Blur: 0,
        MinSize: operations.MinSizeOne,
        Upscale: operations.UpscaleOne,
        URL: "/library/metadata/49564/thumb/1654258204",
    })
    if err != nil {
        log.Fatal(err)
    }
    if res != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
request operations.GetResizedPhotoRequest ✔️ The request object to use for the request.
opts []operations.Option The options for this request.

Response

*operations.GetResizedPhotoResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetResizedPhotoBadRequest 400 application/json
sdkerrors.GetResizedPhotoUnauthorized 401 application/json
sdkerrors.SDKError 4XX, 5XX */*

GetMediaProviders

Retrieves media providers and their features from the Plex server.

Example Usage

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.Server.GetMediaProviders(ctx, "CV5xoxjTpFKUzBTShsaf")
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description Example
ctx context.Context ✔️ The context to use for the request.
xPlexToken string ✔️ An authentication token, obtained from plex.tv CV5xoxjTpFKUzBTShsaf
opts []operations.Option The options for this request.

Response

*operations.GetMediaProvidersResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetMediaProvidersBadRequest 400 application/json
sdkerrors.GetMediaProvidersUnauthorized 401 application/json
sdkerrors.SDKError 4XX, 5XX */*

GetServerList

Get Server List

Example Usage

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.Server.GetServerList(ctx)
    if err != nil {
        log.Fatal(err)
    }
    if res.Object != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
opts []operations.Option The options for this request.

Response

*operations.GetServerListResponse, error

Errors

Error Type Status Code Content Type
sdkerrors.GetServerListBadRequest 400 application/json
sdkerrors.GetServerListUnauthorized 401 application/json
sdkerrors.SDKError 4XX, 5XX */*