Files
plexgo/docs/sdks/activities

Activities

(Activities)

Overview

Activities are awesome. They provide a way to monitor and control asynchronous operations on the server. In order to receive real-time updates for activities, a client would normally subscribe via either EventSource or Websocket endpoints. Activities are associated with HTTP replies via a special X-Plex-Activity header which contains the UUID of the activity. Activities are optional cancellable. If cancellable, they may be cancelled via the DELETE endpoint. Other details:

  • They can contain a progress (from 0 to 100) marking the percent completion of the activity.
  • They must contain an type which is used by clients to distinguish the specific activity.
  • They may contain a Context object with attributes which associate the activity with various specific entities (items, libraries, etc.)
  • The may contain a Response object which attributes which represent the result of the asynchronous operation.

Available Operations

GetServerActivities

Get Server Activities

Example Usage

package main

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

func main() {
    s := plexgo.New(
        plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
    )

    ctx := context.Background()
    res, err := s.Activities.GetServerActivities(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.

Response

*operations.GetServerActivitiesResponse, error

Error Object Status Code Content Type
sdkerrors.GetServerActivitiesResponseBody 401 application/json
sdkerrors.SDKError 4xx-5xx /

CancelServerActivities

Cancel Server Activities

Example Usage

package main

import(
	"github.com/LukeHagar/plexgo/models/components"
	"github.com/LukeHagar/plexgo"
	"context"
	"log"
	"net/http"
)

func main() {
    s := plexgo.New(
        plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
    )


    var activityUUID string = "string"

    ctx := context.Background()
    res, err := s.Activities.CancelServerActivities(ctx, activityUUID)
    if err != nil {
        log.Fatal(err)
    }

    if res.StatusCode == http.StatusOK {
        // handle response
    }
}

Parameters

Parameter Type Required Description
ctx context.Context ✔️ The context to use for the request.
activityUUID string ✔️ The UUID of the activity to cancel.

Response

*operations.CancelServerActivitiesResponse, error

Error Object Status Code Content Type
sdkerrors.CancelServerActivitiesResponseBody 401 application/json
sdkerrors.SDKError 4xx-5xx /