Skip to content

Latest commit

 

History

History
294 lines (218 loc) · 15.4 KB

README.md

File metadata and controls

294 lines (218 loc) · 15.4 KB

Media

(Media)

Overview

API Calls interacting with Plex Media Server Media

Available Operations

MarkPlayed

This will mark the provided media key as Played.

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.Media.MarkPlayed(ctx, 59398)
    if err != nil {
        log.Fatal(err)
    }
    if res != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description Example
ctx context.Context ✔️ The context to use for the request.
key float64 ✔️ The media key to mark as played 59398
opts []operations.Option The options for this request.

Response

*operations.MarkPlayedResponse, error

Errors

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

MarkUnplayed

This will mark the provided media key as Unplayed.

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.Media.MarkUnplayed(ctx, 59398)
    if err != nil {
        log.Fatal(err)
    }
    if res != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description Example
ctx context.Context ✔️ The context to use for the request.
key float64 ✔️ The media key to mark as Unplayed 59398
opts []operations.Option The options for this request.

Response

*operations.MarkUnplayedResponse, error

Errors

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

UpdatePlayProgress

This API command can be used to update the play progress of a media item.

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.Media.UpdatePlayProgress(ctx, "<key>", 90000, "played")
    if err != nil {
        log.Fatal(err)
    }
    if res != nil {
        // handle response
    }
}

Parameters

Parameter Type Required Description Example
ctx context.Context ✔️ The context to use for the request.
key string ✔️ the media key
time float64 ✔️ The time, in milliseconds, used to set the media playback progress. 90000
state string ✔️ The playback state of the media item. played
opts []operations.Option The options for this request.

Response

*operations.UpdatePlayProgressResponse, error

Errors

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

GetBannerImage

Gets the banner image of the media item

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.Media.GetBannerImage(ctx, operations.GetBannerImageRequest{
        RatingKey: 9518,
        Width: 396,
        Height: 396,
        MinSize: 1,
        Upscale: 1,
        XPlexToken: "CV5xoxjTpFKUzBTShsaf",
    })
    if err != nil {
        log.Fatal(err)
    }
    if res.ResponseStream != nil {
        // handle response
    }
}

Parameters

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

Response

*operations.GetBannerImageResponse, error

Errors

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

GetThumbImage

Gets the thumbnail image of the media item

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.Media.GetThumbImage(ctx, operations.GetThumbImageRequest{
        RatingKey: 9518,
        Width: 396,
        Height: 396,
        MinSize: 1,
        Upscale: 1,
        XPlexToken: "CV5xoxjTpFKUzBTShsaf",
    })
    if err != nil {
        log.Fatal(err)
    }
    if res.ResponseStream != nil {
        // handle response
    }
}

Parameters

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

Response

*operations.GetThumbImageResponse, error

Errors

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