mirror of
https://github.com/LukeHagar/plexphp.git
synced 2025-12-06 04:20:51 +00:00
4.3 KiB
4.3 KiB
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
typewhich is used by clients to distinguish the specific activity. - They may contain a
Contextobject with attributes which associate the activity with various specific entities (items, libraries, etc.) - The may contain a
Responseobject which attributes which represent the result of the asynchronous operation.
Available Operations
- getServerActivities - Get Server Activities
- cancelServerActivities - Cancel Server Activities
getServerActivities
Get Server Activities
Example Usage
declare(strict_types=1);
require 'vendor/autoload.php';
use LukeHagar\Plex_API;
use LukeHagar\Plex_API\Models\Components;
$security = new Components\Security();
$security->accessToken = '<YOUR_API_KEY_HERE>';
$sdk = Plex_API\PlexAPI::builder()
->setXPlexClientIdentifier('Postman')
->setSecurity($security)->build();
try {
$response = $sdk->activities->getServerActivities();
if ($response->object !== null) {
// handle response
}
} catch (Throwable $e) {
// handle exception
}
Response
?Operations\GetServerActivitiesResponse
Errors
| Error Object | Status Code | Content Type |
|---|---|---|
| Errors\GetServerActivitiesResponseBody | 401 | application/json |
| LukeHagar\Plex_API\Models\Errors.SDKException | 4xx-5xx | / |
cancelServerActivities
Cancel Server Activities
Example Usage
declare(strict_types=1);
require 'vendor/autoload.php';
use LukeHagar\Plex_API;
use LukeHagar\Plex_API\Models\Components;
$security = new Components\Security();
$security->accessToken = '<YOUR_API_KEY_HERE>';
$sdk = Plex_API\PlexAPI::builder()
->setXPlexClientIdentifier('Postman')
->setSecurity($security)->build();
try {
$response = $sdk->activities->cancelServerActivities('25b71ed5-0f9d-461c-baa7-d404e9e10d3e');
if ($response->statusCode === 200) {
// handle response
}
} catch (Throwable $e) {
// handle exception
}
Parameters
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
activityUUID |
string | ✔️ | The UUID of the activity to cancel. | 25b71ed5-0f9d-461c-baa7-d404e9e10d3e |
Response
?Operations\CancelServerActivitiesResponse
Errors
| Error Object | Status Code | Content Type |
|---|---|---|
| Errors\CancelServerActivitiesResponseBody | 401 | application/json |
| LukeHagar\Plex_API\Models\Errors.SDKException | 4xx-5xx | / |