mirror of
https://github.com/LukeHagar/plexphp.git
synced 2025-12-06 04:20:51 +00:00
2387 lines
60 KiB
YAML
2387 lines
60 KiB
YAML
overlay: 1.0.0
|
|
info:
|
|
title: CodeSamples overlay for php target
|
|
version: 0.0.0
|
|
actions:
|
|
- target: $["paths"]["/"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getServerCapabilities
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->server->getServerCapabilities(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/:/prefs"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getServerPreferences
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->server->getServerPreferences(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/:/progress"]["post"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: updatePlayProgress
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->media->updatePlayProgress(
|
|
key: '<key>',
|
|
time: 90000,
|
|
state: 'played'
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/:/scrobble"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: markPlayed
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->media->markPlayed(
|
|
key: 59398
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/:/timeline"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getTimeline
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetTimelineRequest(
|
|
ratingKey: 23409,
|
|
key: '/library/metadata/23409',
|
|
state: Operations\State::Playing,
|
|
hasMDE: 1,
|
|
time: 2000,
|
|
duration: 10000,
|
|
context: 'home:hub.continueWatching',
|
|
playQueueItemID: 1,
|
|
playBackTime: 2000,
|
|
row: 1,
|
|
);
|
|
|
|
$response = $sdk->video->getTimeline(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/:/unscrobble"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: markUnplayed
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->media->markUnplayed(
|
|
key: 59398
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/activities"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getServerActivities
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->activities->getServerActivities(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/activities/{activityUUID}"]["delete"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: cancelServerActivities
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->activities->cancelServerActivities(
|
|
activityUUID: '25b71ed5-0f9d-461c-baa7-d404e9e10d3e'
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/butler"]["delete"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: stopAllTasks
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->butler->stopAllTasks(
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/butler"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getButlerTasks
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->butler->getButlerTasks(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/butler"]["post"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: startAllTasks
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->butler->startAllTasks(
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/butler/{taskName}"]["delete"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: stopTask
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->butler->stopTask(
|
|
taskName: Operations\PathParamTaskName::BackupDatabase
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/butler/{taskName}"]["post"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: startTask
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->butler->startTask(
|
|
taskName: Operations\TaskName::CleanOldBundles
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/clients"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getAvailableClients
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->server->getAvailableClients(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/companions"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getCompanionsData
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->plex->getCompanionsData(
|
|
|
|
);
|
|
|
|
if ($response->responseBodies !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/devices"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getDevices
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->server->getDevices(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/friends"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getUserFriends
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->plex->getUserFriends(
|
|
|
|
);
|
|
|
|
if ($response->friends !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/geoip"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getGeoData
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()->build();
|
|
|
|
|
|
|
|
$response = $sdk->plex->getGeoData(
|
|
|
|
);
|
|
|
|
if ($response->geoData !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/home"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getHomeData
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->plex->getHomeData(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/hubs"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getGlobalHubs
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->hubs->getGlobalHubs(
|
|
count: 1262.49,
|
|
onlyTransient: Operations\OnlyTransient::One
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/hubs/home/recentlyAdded"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-recently-added
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetRecentlyAddedRequest(
|
|
contentDirectoryID: 470161,
|
|
sectionID: 2,
|
|
type: Operations\Type::TvShow,
|
|
);
|
|
|
|
$response = $sdk->hubs->getRecentlyAdded(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/hubs/search"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: performSearch
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->search->performSearch(
|
|
query: 'dylan',
|
|
sectionId: 9372.7,
|
|
limit: 5
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/hubs/search/voice"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: performVoiceSearch
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->search->performVoiceSearch(
|
|
query: 'dead+poop',
|
|
sectionId: 4094.8,
|
|
limit: 5
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/hubs/sections/{sectionId}"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getLibraryHubs
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->hubs->getLibraryHubs(
|
|
sectionId: 6728.76,
|
|
count: 639.24,
|
|
onlyTransient: Operations\QueryParamOnlyTransient::One
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/identity"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-server-identity
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()->build();
|
|
|
|
|
|
|
|
$response = $sdk->server->getServerIdentity(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/all/top"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getTopWatchedContent
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getTopWatchedContent(
|
|
type: Operations\GetTopWatchedContentQueryParamType::TvShow,
|
|
includeGuids: 1
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/hashes"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getFileHash
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getFileHash(
|
|
url: 'file://C:\Image.png&type=13',
|
|
type: 4462.17
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/metadata/{ratingKey}"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-media-meta-data
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetMediaMetaDataRequest(
|
|
ratingKey: 9518,
|
|
includeConcerts: true,
|
|
includeExtras: true,
|
|
includeOnDeck: true,
|
|
includePopularLeaves: true,
|
|
includePreferences: true,
|
|
includeReviews: true,
|
|
includeChapters: true,
|
|
includeStations: true,
|
|
includeExternalMedia: true,
|
|
asyncAugmentMetadata: true,
|
|
asyncCheckFiles: true,
|
|
asyncRefreshAnalysis: true,
|
|
asyncRefreshLocalMediaAgent: true,
|
|
);
|
|
|
|
$response = $sdk->library->getMediaMetaData(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/metadata/{ratingKey}/banner"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-banner-image
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetBannerImageRequest(
|
|
ratingKey: 9518,
|
|
width: 396,
|
|
height: 396,
|
|
minSize: 1,
|
|
upscale: 1,
|
|
xPlexToken: 'CV5xoxjTpFKUzBTShsaf',
|
|
);
|
|
|
|
$response = $sdk->media->getBannerImage(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->bytes !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/metadata/{ratingKey}/children"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getMetadataChildren
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getMetadataChildren(
|
|
ratingKey: 1539.14,
|
|
includeElements: '<value>'
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/metadata/{ratingKey}/thumb"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-thumb-image
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetThumbImageRequest(
|
|
ratingKey: 9518,
|
|
width: 396,
|
|
height: 396,
|
|
minSize: 1,
|
|
upscale: 1,
|
|
xPlexToken: 'CV5xoxjTpFKUzBTShsaf',
|
|
);
|
|
|
|
$response = $sdk->media->getThumbImage(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->bytes !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/recentlyAdded"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-recently-added-library
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetRecentlyAddedLibraryRequest(
|
|
contentDirectoryID: 2,
|
|
pinnedContentDirectoryID: [
|
|
3,
|
|
5,
|
|
7,
|
|
13,
|
|
12,
|
|
1,
|
|
6,
|
|
14,
|
|
2,
|
|
10,
|
|
16,
|
|
17,
|
|
],
|
|
sectionID: 2,
|
|
type: Operations\QueryParamType::TvShow,
|
|
);
|
|
|
|
$response = $sdk->library->getRecentlyAddedLibrary(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/search"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-search-all-libraries
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetSearchAllLibrariesRequest(
|
|
query: '<value>',
|
|
clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58',
|
|
searchTypes: [
|
|
Operations\SearchTypes::People,
|
|
],
|
|
);
|
|
|
|
$response = $sdk->library->getSearchAllLibraries(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-all-libraries
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getAllLibraries(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/watchlist/{filter}"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-watch-list
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetWatchListRequest(
|
|
filter: Operations\Filter::Available,
|
|
xPlexToken: 'CV5xoxjTpFKUzBTShsaf',
|
|
);
|
|
|
|
$response = $sdk->watchlist->getWatchList(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}"]["delete"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: deleteLibrary
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->deleteLibrary(
|
|
sectionKey: 9518
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-library-details
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getLibraryDetails(
|
|
sectionKey: 9518,
|
|
includeDetails: Operations\IncludeDetails::Zero
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}/actor"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-actors-library
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getActorsLibrary(
|
|
sectionKey: 9518,
|
|
type: Operations\GetActorsLibraryQueryParamType::TvShow
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}/all"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-all-media-library
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetAllMediaLibraryRequest(
|
|
sectionKey: 9518,
|
|
type: Operations\GetAllMediaLibraryQueryParamType::TvShow,
|
|
);
|
|
|
|
$response = $sdk->library->getAllMediaLibrary(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}/country"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-countries-library
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getCountriesLibrary(
|
|
sectionKey: 9518,
|
|
type: Operations\GetCountriesLibraryQueryParamType::TvShow
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}/genre"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-genres-library
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getGenresLibrary(
|
|
sectionKey: 9518,
|
|
type: Operations\GetGenresLibraryQueryParamType::TvShow
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}/refresh"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-refresh-library-metadata
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getRefreshLibraryMetadata(
|
|
sectionKey: 9518,
|
|
force: Operations\Force::One
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}/search"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-search-library
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->library->getSearchLibrary(
|
|
sectionKey: 9518,
|
|
type: Operations\GetSearchLibraryQueryParamType::TvShow
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/library/sections/{sectionKey}/{tag}"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-library-items
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetLibraryItemsRequest(
|
|
tag: Operations\Tag::Edition,
|
|
type: Operations\GetLibraryItemsQueryParamType::TvShow,
|
|
sectionKey: 9518,
|
|
);
|
|
|
|
$response = $sdk->library->getLibraryItems(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/log"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: logLine
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->log->logLine(
|
|
level: Operations\Level::Three,
|
|
message: 'Test log message',
|
|
source: 'Postman'
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/log"]["post"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: logMultiLine
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = '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';
|
|
|
|
$response = $sdk->log->logMultiLine(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/log/networked"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: enablePaperTrail
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->log->enablePaperTrail(
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/media/providers"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-media-providers
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->server->getMediaProviders(
|
|
xPlexToken: 'CV5xoxjTpFKUzBTShsaf'
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/myplex/account"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getMyPlexAccount
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->server->getMyPlexAccount(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/photo/:/transcode"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getResizedPhoto
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\GetResizedPhotoRequest(
|
|
width: 110,
|
|
height: 165,
|
|
opacity: 100,
|
|
blur: 20,
|
|
minSize: Operations\MinSize::Zero,
|
|
upscale: Operations\Upscale::One,
|
|
url: '/library/metadata/49564/thumb/1654258204',
|
|
);
|
|
|
|
$response = $sdk->server->getResizedPhoto(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/pins"]["post"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getPin
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()->build();
|
|
|
|
$request = new Operations\GetPinRequest(
|
|
clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58',
|
|
clientName: 'Plex for Roku',
|
|
deviceNickname: 'Roku 3',
|
|
clientVersion: '2.4.1',
|
|
platform: 'Roku',
|
|
);
|
|
|
|
$response = $sdk->plex->getPin(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->authPinContainer !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/pins/{pinID}"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getTokenByPinId
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()->build();
|
|
|
|
$request = new Operations\GetTokenByPinIdRequest(
|
|
pinID: 408895,
|
|
clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58',
|
|
clientName: 'Plex for Roku',
|
|
deviceNickname: 'Roku 3',
|
|
clientVersion: '2.4.1',
|
|
platform: 'Roku',
|
|
);
|
|
|
|
$response = $sdk->plex->getTokenByPinId(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->authPinContainer !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getPlaylists
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->playlists->getPlaylists(
|
|
playlistType: Operations\PlaylistType::Audio,
|
|
smart: Operations\QueryParamSmart::Zero
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists"]["post"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: createPlaylist
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\CreatePlaylistRequest(
|
|
title: '<value>',
|
|
type: Operations\CreatePlaylistQueryParamType::Photo,
|
|
smart: Operations\Smart::One,
|
|
uri: 'https://hoarse-testing.info/',
|
|
);
|
|
|
|
$response = $sdk->playlists->createPlaylist(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists/upload"]["post"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: uploadPlaylist
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->playlists->uploadPlaylist(
|
|
path: '/home/barkley/playlist.m3u',
|
|
force: Operations\QueryParamForce::Zero,
|
|
sectionID: 1
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists/{playlistID}"]["delete"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: deletePlaylist
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->playlists->deletePlaylist(
|
|
playlistID: 216.22
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists/{playlistID}"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getPlaylist
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->playlists->getPlaylist(
|
|
playlistID: 4109.48
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists/{playlistID}"]["put"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: updatePlaylist
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->playlists->updatePlaylist(
|
|
playlistID: 3915,
|
|
title: '<value>',
|
|
summary: '<value>'
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists/{playlistID}/items"]["delete"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: clearPlaylistContents
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->playlists->clearPlaylistContents(
|
|
playlistID: 1893.18
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists/{playlistID}/items"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getPlaylistContents
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->playlists->getPlaylistContents(
|
|
playlistID: 5004.46,
|
|
type: Operations\GetPlaylistContentsQueryParamType::TvShow
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/playlists/{playlistID}/items"]["put"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: addPlaylistContents
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->playlists->addPlaylistContents(
|
|
playlistID: 8502.01,
|
|
uri: 'server://12345/com.plexapp.plugins.library/library/metadata/1',
|
|
playQueueID: 123
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/resources"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-server-resources
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->plex->getServerResources(
|
|
clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58',
|
|
includeHttps: Operations\IncludeHttps::Enable,
|
|
includeRelay: Operations\IncludeRelay::Enable,
|
|
includeIPv6: Operations\IncludeIPv6::Enable
|
|
|
|
);
|
|
|
|
if ($response->plexDevices !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/search"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getSearchResults
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->search->getSearchResults(
|
|
query: '110'
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/security/resources"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getSourceConnectionInformation
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->authentication->getSourceConnectionInformation(
|
|
source: 'server://client-identifier'
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/security/token"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getTransientToken
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->authentication->getTransientToken(
|
|
type: Operations\GetTransientTokenQueryParamType::Delegation,
|
|
scope: Operations\Scope::All
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/servers"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getServerList
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->server->getServerList(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/statistics/bandwidth"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getBandwidthStatistics
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->statistics->getBandwidthStatistics(
|
|
timespan: 4
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/statistics/media"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getStatistics
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->statistics->getStatistics(
|
|
timespan: 4
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/statistics/resources"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getResourcesStatistics
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->statistics->getResourcesStatistics(
|
|
timespan: 4
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/status/sessions"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getSessions
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->sessions->getSessions(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/status/sessions/history/all"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getSessionHistory
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$filter = new Operations\QueryParamFilter();
|
|
|
|
$response = $sdk->sessions->getSessionHistory(
|
|
sort: '<value>',
|
|
accountId: 1,
|
|
filter: $filter,
|
|
librarySectionID: 12
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/transcode/sessions"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getTranscodeSessions
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->sessions->getTranscodeSessions(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/transcode/sessions/{sessionKey}"]["delete"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: stopTranscodeSession
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->sessions->stopTranscodeSession(
|
|
sessionKey: 'zz7llzqlx8w9vnrsbnwhbmep'
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/updater/apply"]["put"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: applyUpdates
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->updater->applyUpdates(
|
|
tonight: Operations\Tonight::One,
|
|
skip: Operations\Skip::One
|
|
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/updater/check"]["put"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: checkForUpdates
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->updater->checkForUpdates(
|
|
download: Operations\Download::One
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/updater/status"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getUpdateStatus
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->updater->getUpdateStatus(
|
|
|
|
);
|
|
|
|
if ($response->object !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/user"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: getTokenDetails
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
|
|
|
|
$response = $sdk->authentication->getTokenDetails(
|
|
|
|
);
|
|
|
|
if ($response->userPlexAccount !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/users"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: get-users
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()->build();
|
|
|
|
$request = new Operations\GetUsersRequest(
|
|
clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58',
|
|
clientName: 'Plex for Roku',
|
|
deviceNickname: 'Roku 3',
|
|
deviceName: 'Chrome',
|
|
deviceScreenResolution: '1487x1165,2560x1440',
|
|
clientVersion: '2.4.1',
|
|
platform: 'Roku',
|
|
clientFeatures: 'external-media,indirect-media,hub-style-list',
|
|
model: '4200X',
|
|
xPlexSessionId: '97e136ef-4ddd-4ff3-89a7-a5820c96c2ca',
|
|
xPlexLanguage: 'en',
|
|
platformVersion: '4.3 build 1057',
|
|
xPlexToken: 'CV5xoxjTpFKUzBTShsaf',
|
|
);
|
|
|
|
$response = $sdk->users->getUsers(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->body !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/users/signin"]["post"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: post-users-sign-in-data
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()->build();
|
|
|
|
$request = new Operations\PostUsersSignInDataRequest(
|
|
clientID: '3381b62b-9ab7-4e37-827b-203e9809eb58',
|
|
clientName: 'Plex for Roku',
|
|
deviceNickname: 'Roku 3',
|
|
clientVersion: '2.4.1',
|
|
platform: 'Roku',
|
|
requestBody: new Operations\PostUsersSignInDataRequestBody(
|
|
login: 'username@email.com',
|
|
password: 'password123',
|
|
verificationCode: '123456',
|
|
),
|
|
);
|
|
|
|
$response = $sdk->authentication->postUsersSignInData(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->userPlexAccount !== null) {
|
|
// handle response
|
|
}
|
|
- target: $["paths"]["/video/:/transcode/universal/start.mpd"]["get"]
|
|
update:
|
|
x-codeSamples:
|
|
- lang: php
|
|
label: startUniversalTranscode
|
|
source: |-
|
|
declare(strict_types=1);
|
|
|
|
require 'vendor/autoload.php';
|
|
|
|
use LukeHagar\Plex_API;
|
|
use LukeHagar\Plex_API\Models\Operations;
|
|
|
|
$sdk = Plex_API\PlexAPI::builder()
|
|
->setSecurity(
|
|
'<YOUR_API_KEY_HERE>'
|
|
)
|
|
->build();
|
|
|
|
$request = new Operations\StartUniversalTranscodeRequest(
|
|
hasMDE: 1,
|
|
path: '/library/metadata/23409',
|
|
mediaIndex: 0,
|
|
partIndex: 0,
|
|
protocol: 'hls',
|
|
fastSeek: 0,
|
|
directPlay: 0,
|
|
directStream: 0,
|
|
subtitleSize: 100,
|
|
subtites: 'burn',
|
|
audioBoost: 100,
|
|
location: 'lan',
|
|
mediaBufferSize: 102400,
|
|
session: 'zvcage8b7rkioqcm8f4uns4c',
|
|
addDebugOverlay: 0,
|
|
autoAdjustQuality: 0,
|
|
);
|
|
|
|
$response = $sdk->video->startUniversalTranscode(
|
|
request: $request
|
|
);
|
|
|
|
if ($response->statusCode === 200) {
|
|
// handle response
|
|
}
|