Run Optimize Database Task
There are a number of tasks that can be scheduled to run on a Plex server. This API command will run the optimize database task.
URL
POST http://{ip_address}:32400/butler/OptimizeDatabase?X-Plex-Token={plex_token}
Parameters
Name | Description |
---|---|
ip_address | The IP address of the Plex Media server. |
plex_token | The Plex token. |
Return Status
HTTP Code | Description |
---|---|
200 | Success - The task has started successfully. |
202 | Accepted - The task is currently running. |
401 | Unauthorized - The Plex token provided was not valid. |
Response
No response is returned by the command. The status code will indicate whether the optimize database task was started successfully.
Remarks
The scheduled tasks are defined in the Plex settings, and will run during a specified time window. This API command will run manually start the task.
When starting a task, Plex will use the following criteria:
- If a task is not scheduled to run on the current day, it will be skipped.
- The task will start immediately if it is to run at a random time during a configured window, and this command is not run within that window.
- The task will be scheduled to run if it is to run at a random time during a configured window, and this command is run within that window.
- The task will run immediately if it is outside the configured window.
You can also use the Optimize Database API command to optimize the database outside of a scheduled task.
Examples
curl -X POST http://{ip_address}:32400/butler/OptimizeDatabase?X-Plex-Token={plex_token}
import requests plex_url = http://{ip_address}:32400/butler/OptimizeDatabase?X-Plex-Token={plex_token} response = requests.post(plex_url) print(response.text)
$response = Invoke-RestMethod 'http://{ip_address}:32400/butler/OptimizeDatabase?X-Plex-Token={plex_token}' -Method 'POST' Write-Output $response