This is the documentation for the Overseerr API backend. Two primary authentication methods are supported: - Cookie Authentication: A valid sign-in to the /auth/plex
or /auth/local
will generate a valid authentication cookie. - API Key Authentication: Sign-in is also possible by passing an X-Api-Key
header along with a valid API Key generated by Overseerr.
This PHP package is automatically generated by the Swagger Codegen project:
- API version: 1.0.0
- Build package: io.swagger.codegen.v3.generators.php.PhpClientCodegen
PHP 5.5 and later
To install the bindings via Composer, add the following to composer.json
:
{
"repositories": [
{
"type": "git",
"url": "https://github.com/GIT_USER_ID/GIT_REPO_ID.git"
}
],
"require": {
"GIT_USER_ID/GIT_REPO_ID": "*@dev"
}
}
Then run composer install
Download the files and include autoload.php
:
require_once('/path/to/SwaggerClient-php/vendor/autoload.php');
To run the unit tests:
composer install
./vendor/bin/phpunit
Please follow the installation procedure and then run the following:
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$apiInstance = new Swagger\Client\Api\AuthApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
$body = new \Swagger\Client\Model\AuthLocalBody(); // \Swagger\Client\Model\AuthLocalBody |
try {
$result = $apiInstance->authLocalPost($body);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AuthApi->authLocalPost: ', $e->getMessage(), PHP_EOL;
}
// Configure API key authorization: apiKey
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('X-Api-Key', 'YOUR_API_KEY');
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
// $config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('X-Api-Key', 'Bearer');
// Configure API key authorization: cookieAuth
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('connect.sid', 'YOUR_API_KEY');
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
// $config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('connect.sid', 'Bearer');
$apiInstance = new Swagger\Client\Api\AuthApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client(),
$config
);
try {
$result = $apiInstance->authLogoutPost();
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AuthApi->authLogoutPost: ', $e->getMessage(), PHP_EOL;
}
// Configure API key authorization: apiKey
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('X-Api-Key', 'YOUR_API_KEY');
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
// $config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('X-Api-Key', 'Bearer');
// Configure API key authorization: cookieAuth
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('connect.sid', 'YOUR_API_KEY');
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
// $config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('connect.sid', 'Bearer');
$apiInstance = new Swagger\Client\Api\AuthApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client(),
$config
);
try {
$result = $apiInstance->authMeGet();
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AuthApi->authMeGet: ', $e->getMessage(), PHP_EOL;
}
$apiInstance = new Swagger\Client\Api\AuthApi(
// If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
// This is optional, `GuzzleHttp\Client` will be used as default.
new GuzzleHttp\Client()
);
$body = new \Swagger\Client\Model\AuthPlexBody(); // \Swagger\Client\Model\AuthPlexBody |
try {
$result = $apiInstance->authPlexPost($body);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling AuthApi->authPlexPost: ', $e->getMessage(), PHP_EOL;
}
?>
All URIs are relative to {server}/api/v1
Class | Method | HTTP request | Description |
---|---|---|---|
AuthApi | authLocalPost | POST /auth/local | Sign in using a local account |
AuthApi | authLogoutPost | POST /auth/logout | Sign out and clear session cookie |
AuthApi | authMeGet | GET /auth/me | Get logged-in user |
AuthApi | authPlexPost | POST /auth/plex | Sign in using a Plex token |
CollectionApi | collectionCollectionIdGet | GET /collection/{collectionId} | Get collection details |
IssueApi | issueCommentCommentIdDelete | DELETE /issueComment/{commentId} | Delete issue comment |
IssueApi | issueCommentCommentIdGet | GET /issueComment/{commentId} | Get issue comment |
IssueApi | issueCommentCommentIdPut | PUT /issueComment/{commentId} | Update issue comment |
IssueApi | issueGet | GET /issue | Get all issues |
IssueApi | issueIssueIdCommentPost | POST /issue/{issueId}/comment | Create a comment |
IssueApi | issueIssueIdDelete | DELETE /issue/{issueId} | Delete issue |
IssueApi | issueIssueIdGet | GET /issue/{issueId} | Get issue |
IssueApi | issueIssueIdStatusPost | POST /issue/{issueId}/{status} | Update an issue's status |
IssueApi | issuePost | POST /issue | Create new issue |
MediaApi | mediaGet | GET /media | Get media |
MediaApi | mediaMediaIdDelete | DELETE /media/{mediaId} | Delete media item |
MediaApi | mediaMediaIdStatusPost | POST /media/{mediaId}/{status} | Update media status |
MoviesApi | movieMovieIdGet | GET /movie/{movieId} | Get movie details |
MoviesApi | movieMovieIdRatingsGet | GET /movie/{movieId}/ratings | Get movie ratings |
MoviesApi | movieMovieIdRecommendationsGet | GET /movie/{movieId}/recommendations | Get recommended movies |
MoviesApi | movieMovieIdSimilarGet | GET /movie/{movieId}/similar | Get similar movies |
PersonApi | personPersonIdCombinedCreditsGet | GET /person/{personId}/combined_credits | Get combined credits |
PersonApi | personPersonIdGet | GET /person/{personId} | Get person details |
PublicApi | statusAppdataGet | GET /status/appdata | Get application data volume status |
PublicApi | statusGet | GET /status | Get Overseerr version |
RequestApi | requestCountGet | GET /request/count | Gets request counts |
RequestApi | requestGet | GET /request | Get all requests |
RequestApi | requestPost | POST /request | Create new request |
RequestApi | requestRequestIdDelete | DELETE /request/{requestId} | Delete request |
RequestApi | requestRequestIdGet | GET /request/{requestId} | Get MediaRequest |
RequestApi | requestRequestIdPut | PUT /request/{requestId} | Update MediaRequest |
RequestApi | requestRequestIdRetryPost | POST /request/{requestId}/retry | Retry failed request |
RequestApi | requestRequestIdStatusPost | POST /request/{requestId}/{status} | Update a request's status |
SearchApi | discoverGenresliderMovieGet | GET /discover/genreslider/movie | Get genre slider data for movies |
SearchApi | discoverGenresliderTvGet | GET /discover/genreslider/tv | Get genre slider data for TV series |
SearchApi | discoverKeywordKeywordIdMoviesGet | GET /discover/keyword/{keywordId}/movies | Get movies from keyword |
SearchApi | discoverMoviesGenreGenreIdGet | GET /discover/movies/genre/{genreId} | Discover movies by genre |
SearchApi | discoverMoviesGet | GET /discover/movies | Discover movies |
SearchApi | discoverMoviesLanguageLanguageGet | GET /discover/movies/language/{language} | Discover movies by original language |
SearchApi | discoverMoviesStudioStudioIdGet | GET /discover/movies/studio/{studioId} | Discover movies by studio |
SearchApi | discoverMoviesUpcomingGet | GET /discover/movies/upcoming | Upcoming movies |
SearchApi | discoverTrendingGet | GET /discover/trending | Trending movies and TV |
SearchApi | discoverTvGenreGenreIdGet | GET /discover/tv/genre/{genreId} | Discover TV shows by genre |
SearchApi | discoverTvGet | GET /discover/tv | Discover TV shows |
SearchApi | discoverTvLanguageLanguageGet | GET /discover/tv/language/{language} | Discover TV shows by original language |
SearchApi | discoverTvNetworkNetworkIdGet | GET /discover/tv/network/{networkId} | Discover TV shows by network |
SearchApi | discoverTvUpcomingGet | GET /discover/tv/upcoming | Discover Upcoming TV shows |
SearchApi | searchGet | GET /search | Search for movies, TV shows, or people |
ServiceApi | serviceRadarrGet | GET /service/radarr | Get non-sensitive Radarr server list |
ServiceApi | serviceRadarrRadarrIdGet | GET /service/radarr/{radarrId} | Get Radarr server quality profiles and root folders |
ServiceApi | serviceSonarrGet | GET /service/sonarr | Get non-sensitive Sonarr server list |
ServiceApi | serviceSonarrLookupTmdbIdGet | GET /service/sonarr/lookup/{tmdbId} | Get series from Sonarr |
ServiceApi | serviceSonarrSonarrIdGet | GET /service/sonarr/{sonarrId} | Get Sonarr server quality profiles and root folders |
SettingsApi | settingsAboutGet | GET /settings/about | Get server stats |
SettingsApi | settingsCacheCacheIdFlushPost | POST /settings/cache/{cacheId}/flush | Flush a specific cache |
SettingsApi | settingsCacheGet | GET /settings/cache | Get a list of active caches |
SettingsApi | settingsInitializePost | POST /settings/initialize | Initialize application |
SettingsApi | settingsJobsGet | GET /settings/jobs | Get scheduled jobs |
SettingsApi | settingsJobsJobIdCancelPost | POST /settings/jobs/{jobId}/cancel | Cancel a specific job |
SettingsApi | settingsJobsJobIdRunPost | POST /settings/jobs/{jobId}/run | Invoke a specific job |
SettingsApi | settingsJobsJobIdSchedulePost | POST /settings/jobs/{jobId}/schedule | Modify job schedule |
SettingsApi | settingsLogsGet | GET /settings/logs | Returns logs |
SettingsApi | settingsMainGet | GET /settings/main | Get main settings |
SettingsApi | settingsMainPost | POST /settings/main | Update main settings |
SettingsApi | settingsMainRegeneratePost | POST /settings/main/regenerate | Get main settings with newly-generated API key |
SettingsApi | settingsNotificationsDiscordGet | GET /settings/notifications/discord | Get Discord notification settings |
SettingsApi | settingsNotificationsDiscordPost | POST /settings/notifications/discord | Update Discord notification settings |
SettingsApi | settingsNotificationsDiscordTestPost | POST /settings/notifications/discord/test | Test Discord settings |
SettingsApi | settingsNotificationsEmailGet | GET /settings/notifications/email | Get email notification settings |
SettingsApi | settingsNotificationsEmailPost | POST /settings/notifications/email | Update email notification settings |
SettingsApi | settingsNotificationsEmailTestPost | POST /settings/notifications/email/test | Test email settings |
SettingsApi | settingsNotificationsLunaseaGet | GET /settings/notifications/lunasea | Get LunaSea notification settings |
SettingsApi | settingsNotificationsLunaseaPost | POST /settings/notifications/lunasea | Update LunaSea notification settings |
SettingsApi | settingsNotificationsLunaseaTestPost | POST /settings/notifications/lunasea/test | Test LunaSea settings |
SettingsApi | settingsNotificationsPushbulletGet | GET /settings/notifications/pushbullet | Get Pushbullet notification settings |
SettingsApi | settingsNotificationsPushbulletPost | POST /settings/notifications/pushbullet | Update Pushbullet notification settings |
SettingsApi | settingsNotificationsPushbulletTestPost | POST /settings/notifications/pushbullet/test | Test Pushbullet settings |
SettingsApi | settingsNotificationsPushoverGet | GET /settings/notifications/pushover | Get Pushover notification settings |
SettingsApi | settingsNotificationsPushoverPost | POST /settings/notifications/pushover | Update Pushover notification settings |
SettingsApi | settingsNotificationsPushoverTestPost | POST /settings/notifications/pushover/test | Test Pushover settings |
SettingsApi | settingsNotificationsSlackGet | GET /settings/notifications/slack | Get Slack notification settings |
SettingsApi | settingsNotificationsSlackPost | POST /settings/notifications/slack | Update Slack notification settings |
SettingsApi | settingsNotificationsSlackTestPost | POST /settings/notifications/slack/test | Test Slack settings |
SettingsApi | settingsNotificationsTelegramGet | GET /settings/notifications/telegram | Get Telegram notification settings |
SettingsApi | settingsNotificationsTelegramPost | POST /settings/notifications/telegram | Update Telegram notification settings |
SettingsApi | settingsNotificationsTelegramTestPost | POST /settings/notifications/telegram/test | Test Telegram settings |
SettingsApi | settingsNotificationsWebhookGet | GET /settings/notifications/webhook | Get webhook notification settings |
SettingsApi | settingsNotificationsWebhookPost | POST /settings/notifications/webhook | Update webhook notification settings |
SettingsApi | settingsNotificationsWebhookTestPost | POST /settings/notifications/webhook/test | Test webhook settings |
SettingsApi | settingsNotificationsWebpushGet | GET /settings/notifications/webpush | Get Web Push notification settings |
SettingsApi | settingsNotificationsWebpushPost | POST /settings/notifications/webpush | Update Web Push notification settings |
SettingsApi | settingsNotificationsWebpushTestPost | POST /settings/notifications/webpush/test | Test Web Push settings |
SettingsApi | settingsPlexDevicesServersGet | GET /settings/plex/devices/servers | Gets the user's available Plex servers |
SettingsApi | settingsPlexGet | GET /settings/plex | Get Plex settings |
SettingsApi | settingsPlexLibraryGet | GET /settings/plex/library | Get Plex libraries |
SettingsApi | settingsPlexPost | POST /settings/plex | Update Plex settings |
SettingsApi | settingsPlexSyncGet | GET /settings/plex/sync | Get status of full Plex library scan |
SettingsApi | settingsPlexSyncPost | POST /settings/plex/sync | Start full Plex library scan |
SettingsApi | settingsPublicGet | GET /settings/public | Get public settings |
SettingsApi | settingsRadarrGet | GET /settings/radarr | Get Radarr settings |
SettingsApi | settingsRadarrPost | POST /settings/radarr | Create Radarr instance |
SettingsApi | settingsRadarrRadarrIdDelete | DELETE /settings/radarr/{radarrId} | Delete Radarr instance |
SettingsApi | settingsRadarrRadarrIdProfilesGet | GET /settings/radarr/{radarrId}/profiles | Get available Radarr profiles |
SettingsApi | settingsRadarrRadarrIdPut | PUT /settings/radarr/{radarrId} | Update Radarr instance |
SettingsApi | settingsRadarrTestPost | POST /settings/radarr/test | Test Radarr configuration |
SettingsApi | settingsSonarrGet | GET /settings/sonarr | Get Sonarr settings |
SettingsApi | settingsSonarrPost | POST /settings/sonarr | Create Sonarr instance |
SettingsApi | settingsSonarrSonarrIdDelete | DELETE /settings/sonarr/{sonarrId} | Delete Sonarr instance |
SettingsApi | settingsSonarrSonarrIdPut | PUT /settings/sonarr/{sonarrId} | Update Sonarr instance |
SettingsApi | settingsSonarrTestPost | POST /settings/sonarr/test | Test Sonarr configuration |
TmdbApi | backdropsGet | GET /backdrops | Get backdrops of trending items |
TmdbApi | genresMovieGet | GET /genres/movie | Get list of official TMDb movie genres |
TmdbApi | genresTvGet | GET /genres/tv | Get list of official TMDb movie genres |
TmdbApi | languagesGet | GET /languages | Languages supported by TMDb |
TmdbApi | networkNetworkIdGet | GET /network/{networkId} | Get TV network details |
TmdbApi | regionsGet | GET /regions | Regions supported by TMDb |
TmdbApi | studioStudioIdGet | GET /studio/{studioId} | Get movie studio details |
TvApi | tvTvIdGet | GET /tv/{tvId} | Get TV details |
TvApi | tvTvIdRatingsGet | GET /tv/{tvId}/ratings | Get TV ratings |
TvApi | tvTvIdRecommendationsGet | GET /tv/{tvId}/recommendations | Get recommended TV series |
TvApi | tvTvIdSeasonSeasonIdGet | GET /tv/{tvId}/season/{seasonId} | Get season details and episode list |
TvApi | tvTvIdSimilarGet | GET /tv/{tvId}/similar | Get similar TV series |
UsersApi | authMeGet | GET /auth/me | Get logged-in user |
UsersApi | authResetPasswordGuidPost | POST /auth/reset-password/{guid} | Reset the password for a user |
UsersApi | authResetPasswordPost | POST /auth/reset-password | Send a reset password email |
UsersApi | userGet | GET /user | Get all users |
UsersApi | userImportFromPlexPost | POST /user/import-from-plex | Import all users from Plex |
UsersApi | userPost | POST /user | Create new user |
UsersApi | userPut | PUT /user | Update batch of users |
UsersApi | userRegisterPushSubscriptionPost | POST /user/registerPushSubscription | Register a web push /user/registerPushSubscription |
UsersApi | userUserIdDelete | DELETE /user/{userId} | Delete user by ID |
UsersApi | userUserIdGet | GET /user/{userId} | Get user by ID |
UsersApi | userUserIdPut | PUT /user/{userId} | Update a user by user ID |
UsersApi | userUserIdQuotaGet | GET /user/{userId}/quota | Get quotas for a specific user |
UsersApi | userUserIdRequestsGet | GET /user/{userId}/requests | Get user by ID |
UsersApi | userUserIdSettingsMainGet | GET /user/{userId}/settings/main | Get general settings for a user |
UsersApi | userUserIdSettingsMainPost | POST /user/{userId}/settings/main | Update general settings for a user |
UsersApi | userUserIdSettingsNotificationsGet | GET /user/{userId}/settings/notifications | Get notification settings for a user |
UsersApi | userUserIdSettingsNotificationsPost | POST /user/{userId}/settings/notifications | Update notification settings for a user |
UsersApi | userUserIdSettingsPasswordGet | GET /user/{userId}/settings/password | Get password page informatiom |
UsersApi | userUserIdSettingsPasswordPost | POST /user/{userId}/settings/password | Update password for a user |
UsersApi | userUserIdSettingsPermissionsGet | GET /user/{userId}/settings/permissions | Get permission settings for a user |
UsersApi | userUserIdSettingsPermissionsPost | POST /user/{userId}/settings/permissions | Update permission settings for a user |
- AnyOfMediaRequestModifiedBy
- AnyOfinlineResponse20014ResultsItems
- AuthLocalBody
- AuthPlexBody
- AuthResetpasswordBody
- Cast
- Collection
- CreditCast
- CreditCrew
- Crew
- DiscordSettings
- DiscordSettingsOptions
- Episode
- ExternalIds
- Genre
- InlineResponse200
- InlineResponse2001
- InlineResponse20010
- InlineResponse20010Movie
- InlineResponse20011
- InlineResponse20012
- InlineResponse20013
- InlineResponse20014
- InlineResponse20015
- InlineResponse20016
- InlineResponse20017
- InlineResponse20018
- InlineResponse20019
- InlineResponse2002
- InlineResponse20020
- InlineResponse20021
- InlineResponse20022
- InlineResponse20023
- InlineResponse20024
- InlineResponse20025
- InlineResponse20026
- InlineResponse20027
- InlineResponse20028
- InlineResponse20029
- InlineResponse2003
- InlineResponse20030
- InlineResponse20031
- InlineResponse20032
- InlineResponse20033
- InlineResponse20034
- InlineResponse20035
- InlineResponse2004
- InlineResponse2005
- InlineResponse2006
- InlineResponse2007
- InlineResponse2008
- InlineResponse2009
- Issue
- IssueBody
- IssueComment
- IssueCommentCommentIdBody
- IssueIdCommentBody
- Job
- JobIdScheduleBody
- Keyword
- LunaSeaSettings
- LunaSeaSettingsOptions
- MainSettings
- MediaIdStatusBody
- MediaInfo
- MediaRequest
- MovieDetails
- MovieDetailsCollection
- MovieDetailsCredits
- MovieDetailsProductionCountries
- MovieDetailsReleases
- MovieDetailsReleasesReleaseDates
- MovieDetailsReleasesResults
- MovieResult
- Network
- NotificationAgentTypes
- NotificationEmailSettings
- NotificationEmailSettingsOptions
- OneOfPersonResultKnownForItems
- PageInfo
- PersonDetail
- PersonResult
- PlexConnection
- PlexDevice
- PlexLibrary
- PlexSettings
- PlexSyncBody
- ProductionCompany
- PublicSettings
- PushbulletSettings
- PushbulletSettingsOptions
- PushoverSettings
- PushoverSettingsOptions
- RadarrSettings
- RadarrTestBody
- RelatedVideo
- RequestBody
- ResetpasswordGuidBody
- Season
- ServarrTag
- ServiceProfile
- SettingsMainBody
- SettingsPasswordBody
- SettingsPermissionsBody
- SettingscacheStats
- SlackSettings
- SlackSettingsOptions
- SonarrSeries
- SonarrSeriesAddOptions
- SonarrSeriesImages
- SonarrSeriesRatings
- SonarrSeriesSeasons
- SonarrSettings
- SonarrTestBody
- SpokenLanguage
- TelegramSettings
- TelegramSettingsOptions
- TvDetails
- TvDetailsContentRatings
- TvDetailsContentRatingsResults
- TvDetailsCreatedBy
- TvResult
- User
- UserBody
- UserBody1
- UserRegisterPushSubscriptionBody
- UserSettings
- UserSettingsNotifications
- WatchProviderDetails
- WatchProviders
- WatchProvidersInner
- WebPushSettings
- WebhookSettings
- WebhookSettingsOptions
- Type: API key
- API key parameter name: X-Api-Key
- Location: HTTP header
- Type: API key
- API key parameter name: connect.sid
- Location: URL query string