plsk.org documentationAPICabinetplsk.org

Plesk REST API

Updated 2026-11-08

Base URL: https://api.plsk.org/api/plesk/v2. Credential: subscription key. Authentication, rate limit and error format: API reference.

The gateway forwards requests to the Plesk REST API of the server that hosts the subscription. Paths, parameters, bodies and responses are those of Plesk. Plesk executes the request as the Plesk customer that owns the subscription; operations that this customer is not permitted to perform are refused by Plesk.

The OpenAPI document is available without a credential at https://api.plsk.org/plesk-openapi.json. Its servers entry is the gateway. Operations under /auth are not served.

Operations used with subscriptions

Method Path Purpose
GET /domains List the domains of the subscription.
POST /domains Create a subdomain.
GET /domains/{id}/fs Metadata of a file or directory (path).
GET /domains/{id}/fs/list List a directory (path).
GET /domains/{id}/fs/content Read a file (path).
PUT /domains/{id}/fs/content Write a file (path).
PATCH /domains/{id}/fs/content Append a chunk to a file (path).
POST /domains/{id}/fs/mkdir Create a directory.
POST /domains/{id}/fs/copy Copy a file or directory.
POST /domains/{id}/fs/move Move or rename a file or directory.
DELETE /domains/{id}/fs Delete a file or directory (path).
GET POST /databases List or create databases.
DELETE /databases/{id} Delete a database.
GET POST /dbusers List or create database users.
PUT DELETE /dbusers/{id} Update or delete a database user.

Request bodies

File write (PUT and PATCH /domains/{id}/fs/content?path=<path>):

{"encoding": "plain" | "base64", "content": "<text or base64>"}

Subdomain (POST /domains):

{"name": "<label>.<hostname>", "hosting_type": "virtual", "parent_domain": {"id": <domain id>, "name": "<hostname>"}}

Database (POST /databases):

{"name": "<name>", "type": "mysql", "parent_domain": {"id": <domain id>, "name": "<hostname>"}}

Database user (POST /dbusers):

{"login": "<login>", "password": "<password>", "database_id": <database id>}

Behavior of the file API

Not available to subscription keys

Choosing the database server (server_id), listing extensions, running commands (exec), reading DNS records, creating domains other than subdomains. Plesk refuses these; see Troubleshooting.