2522 lines
68 KiB
YAML
2522 lines
68 KiB
YAML
swagger: '2.0'
|
||
info:
|
||
version: v2
|
||
title: Plesk RESTful API
|
||
basePath: /api/v2
|
||
schemes:
|
||
- https
|
||
securityDefinitions:
|
||
BasicAuth:
|
||
type: basic
|
||
APIKeyHeader:
|
||
type: apiKey
|
||
in: header
|
||
name: X-API-Key
|
||
security:
|
||
- BasicAuth: []
|
||
- APIKeyHeader: []
|
||
tags:
|
||
- name: Authentication
|
||
description: Auth entry points
|
||
- name: Cli
|
||
description: CLI gate entry points
|
||
- name: Server
|
||
description: Server entry points
|
||
- name: Extensions
|
||
description: Extensions entry points
|
||
- name: Clients
|
||
description: Clients entry points
|
||
- name: Domains
|
||
description: Domains entry points
|
||
- name: FtpUsers
|
||
description: FTP Users entry points
|
||
- name: Databases
|
||
description: Databases, database servers and database users entry points
|
||
- name: DNS
|
||
description: DNS entry points
|
||
paths:
|
||
/auth/keys:
|
||
post:
|
||
tags:
|
||
- Authentication
|
||
summary: Generate API secret key
|
||
description: >-
|
||
Create a new API secret key for authentication with specified login
|
||
credentials and IP restrictions.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: Key parameters
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/SecretKeyRequest'
|
||
responses:
|
||
'201':
|
||
description: Secret key was successfully created
|
||
schema:
|
||
$ref: '#/definitions/SecretKeyResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'401':
|
||
description: Incorrect login
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/auth/keys/{key}:
|
||
delete:
|
||
tags:
|
||
- Authentication
|
||
summary: Delete API secret key
|
||
description: >-
|
||
Revoke and delete an API secret key, removing all associated access
|
||
permissions.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: key
|
||
description: Key ID
|
||
required: true
|
||
x-example: 3d2e93ad-85e6-1a3e-9f81-b9d26650e4f9
|
||
type: string
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: Key does not exist
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/cli/commands:
|
||
get:
|
||
tags:
|
||
- Cli
|
||
summary: List CLI commands
|
||
description: >-
|
||
Retrieve a list of all available Plesk CLI commands that can be executed
|
||
via the REST API.
|
||
produces:
|
||
- application/json
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
type: string
|
||
/cli/{id}/ref:
|
||
get:
|
||
tags:
|
||
- Cli
|
||
x-plesk-since: '17.9'
|
||
summary: Get CLI command reference
|
||
description: >-
|
||
Retrieve detailed reference information for a specific Plesk CLI
|
||
command, including allowed subcommands and options.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Command name
|
||
type: string
|
||
required: true
|
||
x-example: settings
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: object
|
||
properties:
|
||
allowed_commands:
|
||
type: object
|
||
allowed_options:
|
||
type: object
|
||
'404':
|
||
description: Command is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/cli/{id}/call:
|
||
post:
|
||
tags:
|
||
- Cli
|
||
summary: Execute CLI command
|
||
description: >-
|
||
Execute a specific Plesk CLI command with the provided parameters and
|
||
options.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Command name
|
||
type: string
|
||
required: true
|
||
x-example: settings
|
||
- in: body
|
||
name: body
|
||
description: Command arguments and environment
|
||
schema:
|
||
$ref: '#/definitions/CliCallRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/CliCallResponse'
|
||
'404':
|
||
description: Command is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/server:
|
||
get:
|
||
tags:
|
||
- Server
|
||
summary: Get server information
|
||
description: >-
|
||
Retrieve server metadata including Plesk version, platform, and system
|
||
information.
|
||
produces:
|
||
- application/json
|
||
responses:
|
||
'200':
|
||
description: Return Server Meta Information
|
||
schema:
|
||
$ref: '#/definitions/ServerMeta'
|
||
/server/init:
|
||
post:
|
||
tags:
|
||
- Server
|
||
summary: Initialize server
|
||
description: >-
|
||
Perform initial server configuration, including admin credentials and
|
||
basic settings.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: Inital setup parameters
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/ServerInit'
|
||
responses:
|
||
'200':
|
||
description: Inital server setup was succesfully performed
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/server/license:
|
||
post:
|
||
tags:
|
||
- Server
|
||
summary: Install license key
|
||
description: Install or update the Plesk or additional license key for the server.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: License key
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/ServerLicense'
|
||
responses:
|
||
'200':
|
||
description: License key was succesfully installed
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/server/ips:
|
||
get:
|
||
tags:
|
||
- Server
|
||
summary: List server IP addresses
|
||
description: Retrieve a list of all IP addresses configured on the server.
|
||
produces:
|
||
- application/json
|
||
responses:
|
||
'200':
|
||
description: Return Server IP Addresses list
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/ServerIp'
|
||
/extensions:
|
||
get:
|
||
tags:
|
||
- Extensions
|
||
summary: List installed extensions
|
||
description: >-
|
||
Retrieve a list of all Plesk extensions currently installed on the
|
||
server.
|
||
produces:
|
||
- application/json
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/Extension'
|
||
post:
|
||
tags:
|
||
- Extensions
|
||
summary: Install extension
|
||
description: >-
|
||
Install a Plesk extension from the Extension Catalog by ID, a file, or
|
||
URL.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: Installation type and resource
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/ExtensionInstallRequest'
|
||
responses:
|
||
'200':
|
||
description: Extension successfully installed
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/extensions/{id}:
|
||
get:
|
||
tags:
|
||
- Extensions
|
||
summary: Get extension details
|
||
description: Retrieve detailed information about a specific installed extension.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Extension identifier
|
||
type: string
|
||
required: true
|
||
x-example: letsencrypt
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/Extension'
|
||
'404':
|
||
description: Extension is not installed
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
delete:
|
||
tags:
|
||
- Extensions
|
||
summary: Uninstall extension
|
||
description: Remove an extension from the server and delete all associated data.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Extension identifier
|
||
type: string
|
||
required: true
|
||
x-example: letsencrypt
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: Extension is not installed
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/extensions/{id}/enable:
|
||
put:
|
||
tags:
|
||
- Extensions
|
||
summary: Enable extension
|
||
description: Enable a previously disabled extension, making it active on the server.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Extension identifier
|
||
type: string
|
||
required: true
|
||
x-example: letsencrypt
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: Extension is not installed
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/extensions/{id}/disable:
|
||
put:
|
||
tags:
|
||
- Extensions
|
||
summary: Disable extension
|
||
description: >-
|
||
Disable an extension temporarily without uninstalling it from the
|
||
server.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Extension identifier
|
||
type: string
|
||
required: true
|
||
x-example: letsencrypt
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: Extension is not installed
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/clients:
|
||
get:
|
||
tags:
|
||
- Clients
|
||
summary: List clients
|
||
description: Retrieve a list of all client accounts on the server.
|
||
produces:
|
||
- application/json
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/Client'
|
||
post:
|
||
tags:
|
||
- Clients
|
||
summary: Create client account
|
||
description: Create a new client account with the specified settings and permissions.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: Client data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/ClientRequest'
|
||
responses:
|
||
'201':
|
||
description: Client account successfully created
|
||
schema:
|
||
$ref: '#/definitions/CreatedResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/clients/{id}:
|
||
get:
|
||
tags:
|
||
- Clients
|
||
summary: Get client details
|
||
description: Retrieve detailed information about a specific client account.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Client ID
|
||
x-example: 7
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/Client'
|
||
'404':
|
||
description: Client is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
put:
|
||
tags:
|
||
- Clients
|
||
summary: Update client account
|
||
description: Update settings and properties of an existing client account.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Client ID
|
||
x-example: 7
|
||
- in: body
|
||
name: body
|
||
description: Client data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/ClientUpdateRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/CreatedResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Client is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
delete:
|
||
tags:
|
||
- Clients
|
||
summary: Delete client account
|
||
description: Delete a client account and all associated data from the server.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Client ID
|
||
x-example: 7
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/CreatedResponse'
|
||
'404':
|
||
description: Client is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/clients/{id}/domains:
|
||
get:
|
||
tags:
|
||
- Clients
|
||
summary: List client domains
|
||
description: Retrieve all domains associated with a specific client account.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Client ID
|
||
x-example: 7
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/DomainResponse'
|
||
'404':
|
||
description: Client is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/clients/{id}/statistics:
|
||
get:
|
||
tags:
|
||
- Clients
|
||
summary: Get client statistics
|
||
description: Retrieve resource usage statistics for a specific client account.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Client ID
|
||
x-example: 7
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/ClientStatistics'
|
||
'404':
|
||
description: Client is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/clients/{id}/activate:
|
||
put:
|
||
tags:
|
||
- Clients
|
||
summary: Activate client
|
||
description: Activate a suspended client account, restoring access to all services.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Client ID
|
||
x-example: 7
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: Client is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/clients/{id}/suspend:
|
||
put:
|
||
tags:
|
||
- Clients
|
||
summary: Suspend client
|
||
description: Suspend a client account, temporarily blocking access to all services.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Client ID
|
||
x-example: 7
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: Client is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/domains:
|
||
get:
|
||
tags:
|
||
- Domains
|
||
summary: List domains
|
||
description: >-
|
||
Retrieve a list of all domains on the server, with optional filtering by
|
||
domain name.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: query
|
||
name: name
|
||
description: Filter data by domain name
|
||
type: string
|
||
x-example: example.com
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/DomainResponse'
|
||
post:
|
||
tags:
|
||
- Domains
|
||
summary: Create domain
|
||
description: >-
|
||
Create a new domain with the specified configuration and hosting
|
||
settings.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: Domain data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/DomainRequest'
|
||
responses:
|
||
'201':
|
||
description: Domain successfully created
|
||
schema:
|
||
$ref: '#/definitions/CreatedResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/domains/{id}:
|
||
get:
|
||
tags:
|
||
- Domains
|
||
summary: Get domain details
|
||
description: Retrieve detailed information about a specific domain.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Domain ID
|
||
x-example: 1
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/DomainResponse'
|
||
'404':
|
||
description: Domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
put:
|
||
tags:
|
||
- Domains
|
||
summary: Update domain
|
||
description: Update settings and configuration for an existing domain.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Domain ID
|
||
x-example: 1
|
||
- in: body
|
||
name: body
|
||
description: Domain
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/DomainRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/CreatedResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
delete:
|
||
tags:
|
||
- Domains
|
||
summary: Delete domain
|
||
description: Delete a domain and all associated data from the server.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Domain ID
|
||
x-example: 1
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/CreatedResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/domains/{id}/client:
|
||
get:
|
||
tags:
|
||
- Domains
|
||
summary: Get domain owner
|
||
description: Retrieve information about the client account that owns the domain.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Domain ID
|
||
x-example: 1
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/Client'
|
||
'404':
|
||
description: Domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/domains/{id}/status:
|
||
get:
|
||
tags:
|
||
- Domains
|
||
summary: Get domain status
|
||
description: >-
|
||
Retrieve the current operational status of a domain (active, suspended,
|
||
disabled).
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Domain ID
|
||
x-example: 1
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/DomainStatus'
|
||
'404':
|
||
description: Domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
put:
|
||
tags:
|
||
- Domains
|
||
summary: Update domain status
|
||
description: Change the operational status of a domain (enable, suspend, or disable).
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
type: integer
|
||
required: true
|
||
description: Domain ID
|
||
x-example: 1
|
||
- name: body
|
||
in: body
|
||
description: Domain status
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/DomainStatus'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/DomainStatus'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/ftpusers:
|
||
get:
|
||
tags:
|
||
- FtpUsers
|
||
summary: List FTP users
|
||
description: >-
|
||
Retrieve a list of FTP users with optional filtering by username or
|
||
domain.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: query
|
||
name: name
|
||
description: Filter data by user name
|
||
type: string
|
||
x-example: exampleuser
|
||
- in: query
|
||
name: domain
|
||
description: Filter data by domain name
|
||
type: string
|
||
x-example: example.com
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/FtpUser'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Domain/user is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
post:
|
||
tags:
|
||
- FtpUsers
|
||
summary: Create FTP user
|
||
description: >-
|
||
Create a new FTP user account with specified permissions and home
|
||
directory.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: FTP User data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/FtpUserRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/FtpUser'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/ftpusers/{name}:
|
||
put:
|
||
tags:
|
||
- FtpUsers
|
||
summary: Update FTP user
|
||
description: >-
|
||
Update FTP user settings such as password, home directory, or
|
||
permissions.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: name
|
||
description: FTP user name
|
||
required: true
|
||
type: string
|
||
x-example: exampleuser
|
||
- in: body
|
||
name: body
|
||
description: FTP User data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/FtpUserUpdateRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: User is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
delete:
|
||
tags:
|
||
- FtpUsers
|
||
summary: Delete FTP user
|
||
description: Delete an FTP user account and revoke all associated access.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: name
|
||
description: FTP User name
|
||
required: true
|
||
type: string
|
||
x-example: exampleuser
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: User is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/databases:
|
||
get:
|
||
tags:
|
||
- Databases
|
||
summary: List databases
|
||
description: >-
|
||
Retrieve a list of all databases on the server, with optional filtering
|
||
by domain name.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: query
|
||
name: domain
|
||
description: Filter data by domain name
|
||
type: string
|
||
x-example: example.com
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/Database'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Server is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
post:
|
||
tags:
|
||
- Databases
|
||
summary: Create database
|
||
description: Create a new database on the specified database server.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: Database data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/DatabaseRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/Database'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/databases/{id}:
|
||
delete:
|
||
tags:
|
||
- Databases
|
||
summary: Delete database
|
||
description: Delete a database and all its data from the database server.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Database ID
|
||
required: true
|
||
type: integer
|
||
x-example: 10
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: Database is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/dbusers:
|
||
get:
|
||
tags:
|
||
- Databases
|
||
summary: List database users
|
||
description: >-
|
||
Retrieve a list of database users, with optional filtering by database
|
||
ID.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: query
|
||
name: dbId
|
||
description: Filter data by database ID
|
||
type: integer
|
||
x-example: 44
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/DatabaseUser'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Domain/database is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
post:
|
||
tags:
|
||
- Databases
|
||
summary: Create database user
|
||
description: >-
|
||
Create a new database user with specified credentials and database
|
||
association.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: body
|
||
name: body
|
||
description: Database User data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/DatabaseUserRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/DatabaseUser'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Server/database/domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/dbusers/{id}:
|
||
put:
|
||
tags:
|
||
- Databases
|
||
summary: Update database user
|
||
description: Update database user settings, such as password or access permissions.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Database user ID
|
||
required: true
|
||
type: integer
|
||
x-example: 12
|
||
- in: body
|
||
name: body
|
||
description: Database user data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/DatabaseUserUpdateRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Server/database/domain is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
delete:
|
||
tags:
|
||
- Databases
|
||
summary: Delete database user
|
||
description: Delete a database user and revoke all associated access rights.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: Database user ID
|
||
required: true
|
||
type: integer
|
||
x-example: 12
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: Database user is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/dbservers:
|
||
get:
|
||
tags:
|
||
- Databases
|
||
summary: List database servers
|
||
description: Retrieve a list of all database servers configured on the system.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: query
|
||
name: id
|
||
description: Filter data by database server id
|
||
type: integer
|
||
x-example: 1
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/DatabaseServer'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Server is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/dns/records:
|
||
get:
|
||
tags:
|
||
- DNS
|
||
summary: List DNS records
|
||
description: Retrieve all DNS records for a specific domain or domain alias.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: query
|
||
name: domain
|
||
description: Filter by domain or domain alias name
|
||
type: string
|
||
required: true
|
||
x-example: example.com
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/DnsRecord'
|
||
post:
|
||
tags:
|
||
- DNS
|
||
summary: Create DNS record
|
||
description: Add a new DNS record to a domain or domain alias zone.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: query
|
||
name: domain
|
||
description: Filter by domain or domain alias name
|
||
type: string
|
||
required: true
|
||
x-example: example.com
|
||
- in: body
|
||
name: body
|
||
description: DNS record data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/DnsRecordRequest'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/DnsRecord'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: Domain or Domain Alias is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
/dns/records/{id}:
|
||
get:
|
||
tags:
|
||
- DNS
|
||
summary: Get DNS record
|
||
description: Retrieve details of a specific DNS record by its ID.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: DNS record ID
|
||
type: integer
|
||
required: true
|
||
x-example: 123
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/DnsRecord'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: DNS record is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
put:
|
||
tags:
|
||
- DNS
|
||
summary: Update DNS record
|
||
description: Modify an existing DNS record's properties and values.
|
||
consumes:
|
||
- application/json
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: DNS record ID
|
||
type: integer
|
||
required: true
|
||
x-example: 123
|
||
- in: body
|
||
name: body
|
||
description: DNS record data
|
||
required: true
|
||
schema:
|
||
$ref: '#/definitions/DnsRecord'
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'400':
|
||
description: Invalid request data
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
'404':
|
||
description: DNS record is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
delete:
|
||
tags:
|
||
- DNS
|
||
summary: Delete DNS record
|
||
description: Remove a DNS record from the domain's DNS zone.
|
||
produces:
|
||
- application/json
|
||
parameters:
|
||
- in: path
|
||
name: id
|
||
description: DNS record ID
|
||
type: integer
|
||
required: true
|
||
x-example: 123
|
||
responses:
|
||
'200':
|
||
description: OK
|
||
schema:
|
||
$ref: '#/definitions/StatusResponse'
|
||
'404':
|
||
description: DNS record is not found
|
||
schema:
|
||
$ref: '#/definitions/ErrorResponse'
|
||
definitions:
|
||
StatusResponse:
|
||
properties:
|
||
status:
|
||
description: Result of the operation
|
||
type: string
|
||
example: success
|
||
required:
|
||
- status
|
||
CreatedResponse:
|
||
properties:
|
||
id:
|
||
description: Entity with the specified ID successfully created
|
||
type: integer
|
||
example: 100
|
||
guid:
|
||
description: Entity successfully created, new GUID is
|
||
type: string
|
||
example: 18b78dd1-2b43-44f7-9599-56ccb56a85dc
|
||
required:
|
||
- id
|
||
- guid
|
||
ErrorResponse:
|
||
properties:
|
||
code:
|
||
type: integer
|
||
example: 400
|
||
message:
|
||
type: string
|
||
example: Account with this name already exists
|
||
required:
|
||
- code
|
||
- message
|
||
SecretKeyRequest:
|
||
description: Secret key parameters
|
||
properties:
|
||
ip:
|
||
description: >-
|
||
The IP address that will be linked to the key. If this node or 'ips'
|
||
node is not specified, the IP address of the request sender will be
|
||
used.
|
||
type: string
|
||
example: 195.214.233.128
|
||
ips:
|
||
description: >-
|
||
Array of IP addresses that will be linked to the key. If this node or
|
||
'ip' node is not specified, the IP address of the request sender will
|
||
be used.
|
||
type: array
|
||
items:
|
||
type: string
|
||
example:
|
||
- 93.184.216.34
|
||
- 2606:2800:220:1:248:1893:25c8:1946
|
||
login:
|
||
description: >-
|
||
The login name of an existing customer or a reseller that will have
|
||
this secret key. The customer's or reseller's account should be
|
||
active. If this node is not specified, the administrator's login will
|
||
be used.
|
||
type: string
|
||
example: admin
|
||
description:
|
||
description: Additional information about the key.
|
||
type: string
|
||
example: Secret key for Administrator
|
||
SecretKeyResponse:
|
||
properties:
|
||
key:
|
||
description: Secret key value.
|
||
type: string
|
||
example: c5b239d1-8eb6-8cee-76b7-aa16be37fee8
|
||
required:
|
||
- key
|
||
CliCallRequest:
|
||
description: Command execution parameters
|
||
properties:
|
||
params:
|
||
type: array
|
||
items:
|
||
type: string
|
||
example:
|
||
- '--get'
|
||
- FullHostName
|
||
env:
|
||
type: object
|
||
example:
|
||
PSA_PASSWORD: password
|
||
CliCallResponse:
|
||
description: Command execution result
|
||
properties:
|
||
code:
|
||
description: Command return code.
|
||
type: integer
|
||
example: 0
|
||
stdout:
|
||
description: Command stdout.
|
||
type: string
|
||
example: Done
|
||
stderr:
|
||
description: Command stderr.
|
||
type: string
|
||
example: Execution failed
|
||
ServerMeta:
|
||
description: Server Meta Information
|
||
properties:
|
||
platform:
|
||
description: Server platform type.
|
||
type: string
|
||
example: Unix
|
||
hostname:
|
||
description: Server hostname.
|
||
type: string
|
||
example: example.com
|
||
guid:
|
||
description: Server GUID.
|
||
type: string
|
||
example: baa58292-fee0-4ecb-9da1-bba0cc5adea7
|
||
panel_version:
|
||
description: Product version.
|
||
type: string
|
||
example: 17.9.3
|
||
panel_revision:
|
||
description: Product build revision.
|
||
type: string
|
||
example: 1711e2bceff6fd6656c821b8cb6444c2726f3784
|
||
panel_build_date:
|
||
description: Product ISO build date.
|
||
type: string
|
||
format: date
|
||
example: '2018-06-20'
|
||
panel_update_version:
|
||
description: Product installed update version.
|
||
type: string
|
||
example: '10'
|
||
extension_version:
|
||
description: REST API extension version.
|
||
type: string
|
||
example: 1.1.0
|
||
extension_release:
|
||
description: REST API release number.
|
||
type: string
|
||
example: '10'
|
||
required:
|
||
- platform
|
||
- hostname
|
||
- guid
|
||
- panel_version
|
||
- panel_revision
|
||
- panel_build_date
|
||
- panel_update_version
|
||
- extension_version
|
||
- extension_release
|
||
ServerInit:
|
||
description: Initial server setup parameters
|
||
properties:
|
||
admin:
|
||
$ref: '#/definitions/Admin'
|
||
password:
|
||
description: >-
|
||
The new Plesk Administrator's password that will replace the default
|
||
one.
|
||
type: string
|
||
example: setup
|
||
server_name:
|
||
description: The full host name.
|
||
type: string
|
||
example: my-plesk-server.com
|
||
required:
|
||
- admin
|
||
- password
|
||
Admin:
|
||
description: Plesk administrator information
|
||
properties:
|
||
name:
|
||
description: The administrator's personal name.
|
||
type: string
|
||
example: John Smith
|
||
email:
|
||
description: The administrator's e-mail address.
|
||
type: string
|
||
format: email
|
||
example: john_smith@plesk.com
|
||
company:
|
||
description: The administrator's company name.
|
||
type: string
|
||
example: Plesk
|
||
phone:
|
||
description: The administrator's phone number.
|
||
type: string
|
||
example: +41 31 528 12 23
|
||
fax:
|
||
description: The administrator's fax number.
|
||
type: string
|
||
example: +41 31 528 12 23
|
||
address:
|
||
description: The administrator's street address.
|
||
type: string
|
||
example: Vordergasse 59
|
||
city:
|
||
description: The name of the city where administrator lives.
|
||
type: string
|
||
example: Schaffhausen
|
||
state:
|
||
description: >-
|
||
The name of state (for US citizens) or province where administrator
|
||
lives.
|
||
type: string
|
||
example: Kanton Schaffhausen
|
||
post_code:
|
||
description: The administrator's zip/postal code.
|
||
type: string
|
||
example: '8200'
|
||
country:
|
||
description: The name of the country where administrator lives.
|
||
type: string
|
||
example: CH
|
||
send_announce:
|
||
description: >-
|
||
It specifies whether Plesk announcement messages are sent to the
|
||
administrator's e-mail.
|
||
type: boolean
|
||
example: false
|
||
locale:
|
||
description: The locale used by the administrator.
|
||
type: string
|
||
example: en-US
|
||
multiple_sessions:
|
||
description: >-
|
||
It specifies the information if the administrator has multiple
|
||
sessions in Plesk.
|
||
type: boolean
|
||
example: false
|
||
required:
|
||
- name
|
||
- email
|
||
ServerIp:
|
||
description: Server IP Addresses
|
||
properties:
|
||
ipv4:
|
||
description: The IP address in Plesk database (IPv4).
|
||
type: string
|
||
format: ipv4
|
||
example: 93.184.216.34
|
||
ipv6:
|
||
description: The IP address in Plesk database (IPv6).
|
||
type: string
|
||
format: ipv6
|
||
example: 2606:2800:220:1:248:1893:25c8:1946
|
||
netmask:
|
||
description: The netmask of the network.
|
||
type: string
|
||
example: 255.255.255.0
|
||
interface:
|
||
description: The server network interface name.
|
||
type: string
|
||
example: eth0
|
||
type:
|
||
description: 'The type of IP address. Allowed values: shared | exclusive.'
|
||
type: string
|
||
enum:
|
||
- shared
|
||
- exclusive
|
||
example: exclusive
|
||
required:
|
||
- netmask
|
||
- interface
|
||
- type
|
||
ServerLicense:
|
||
description: License parameters
|
||
properties:
|
||
key:
|
||
description: License key data.
|
||
type: string
|
||
example: >-
|
||
/RjdfLic1RwpNPkEnLlxNJkJCPzNDWSRDOyVeJDI/MSo1RlFEMD4+VTEzKTk3S0pfVjFOJTZFXzMpTEVPQC5JRjdUR0RZCk0hMSJYOzYhVFxPI14jTFJPRSlaRFI0VjZWPEYiT1s5T0opJV8+NCMnUigvQ1o7K0U+QEtbISc1MlMqLV0KTSorUDVfMzxHNUkrSksxWzZVNVZJXTc5T18xQVNNNzRXWTo3WVkmW0I/J2AnYC4iJTlTP1grSCdYS0E+RApNPVteRk43RCNAVFpVO0dBO1hZMjo+K0pQNEsiLj5UUDQlLDA7XyVZIVo/QypGJiJcW1FbJF1fVVxUJy5ECk1HXCpSUzwtUVYoJzwsVV47MT5bJD8wWlgyYCo/KTM0QUJFMmAuOjc7QypMWylfQiFVP05PRj05LCY5SkgKTVRTWE9cRi84OUgxJDpgLl5RPEtPPkE4RCUtXU06NixHLi1ZL0ZBVSkyVkBVUCgiN0YrKyoyXTJMJ08qVwpNIk4lOyFeLFwmIiQ4NkBgMUEmTDRcWDdJKihZTEMhTENOJEMiKV0wIzkkSU4qMTEzO1BIJjo4K0U3LzU6Ck0wPCNTUytONjAhQEFROCFbUDI5OktVLlEsMlY9ND1gSjpgJVMjLS4tVzsrRzpAME8yVTpLVmAiT1NHLFAKTVU0SSowNVo1IShEWipAO10tRlsxQldVSkZSKDcyPjpWLik5I0YzWD0yVTs9NTlNL1dASyglXk5YN1U4UgpNTV8sXD0tRTQuLkBFMVk2I0REUCItXyVMNlRPRkEyTEA7Pl9QO10jUSI6I1tNIzVRU0VZVE1HWDInIzk4Ck1XRUNPVz5CSFUjUSo4K0IvOFlDWSNTLydXSls7KD9VTD8+WzUqQEA5Uic0S1BMJSowOk9fQ0QvQThUVCEKTT1AKiJFKztAKCFXNl9ORDhUVlleOCU5JS8rJzc+JEZUXigzMDs4PDtbNkUpPD8vUiJAREQoTkxUPlQ2JgpNVFdbVz9bT10mVy5FVEkyXD5MPSIkMkRVVipKWTolXVhRTzkoM1tLLSJRJFlXNTRTYEBNWy1UUV09K04wCk1SVWBbLyckXj5KXjsnUzgyRzE3QVUlWilXX0ZCX1BGMkRMSThHXjZBWE5FTUBEMjBgRTomVTpVLy1WRCQKTVtWUyQ+XDcsRUA+XU0hXz4pKFxBJ1JCNUQ6XCEnQjoyPFw
|
||
code:
|
||
description: Activation code.
|
||
type: string
|
||
example: AB1C23-4DEF56-7GHI89-JK1L23-MNP456
|
||
additional:
|
||
description: It specifies if the key that will be installed is an additional key.
|
||
type: boolean
|
||
example: false
|
||
Extension:
|
||
description: Extension entity
|
||
properties:
|
||
id:
|
||
description: Extension identifier.
|
||
type: string
|
||
example: letsencrypt
|
||
name:
|
||
description: Human readable name.
|
||
type: string
|
||
example: Let's Encrypt
|
||
version:
|
||
description: Extension version.
|
||
type: string
|
||
example: 2.6.1
|
||
release:
|
||
description: Extension release number.
|
||
type: string
|
||
example: '398'
|
||
active:
|
||
description: Extension status.
|
||
type: boolean
|
||
example: true
|
||
required:
|
||
- id
|
||
- name
|
||
- version
|
||
- release
|
||
- active
|
||
ExtensionInstallRequest:
|
||
description: Extension installation request
|
||
properties:
|
||
id:
|
||
description: Installation by Identifier.
|
||
type: string
|
||
example: letsencrypt
|
||
url:
|
||
description: Installation by URL.
|
||
type: string
|
||
example: https://example.com/catalog/letsencrypt.zip
|
||
file:
|
||
description: Installation by file.
|
||
type: string
|
||
example: /path/to/extension.zip
|
||
Client:
|
||
description: The client entity
|
||
properties:
|
||
id:
|
||
description: The client's ID.
|
||
type: integer
|
||
example: 7
|
||
created:
|
||
description: Creation date.
|
||
type: string
|
||
format: date
|
||
example: '2016-11-13'
|
||
name:
|
||
description: Client's personal name (1 to 60 characters long).
|
||
type: string
|
||
example: John Smith
|
||
company:
|
||
description: The company name (0 to 60 characters long).
|
||
type: string
|
||
example: Plesk
|
||
login:
|
||
description: The login name of the client account (1 to 60 characters long).
|
||
type: string
|
||
x-validators:
|
||
- UniqueClientLogin
|
||
example: john-unit-test
|
||
status:
|
||
description: >-
|
||
The current status of the client account. Allowed values: 0 (active) |
|
||
16 (disabled by admin) | 4 (under backup/restore) | 256 (expired).
|
||
type: integer
|
||
example: 0
|
||
email:
|
||
description: >-
|
||
The email address of the client account owner (0 to 255 characters
|
||
long).
|
||
type: string
|
||
example: john_smith@msn.com
|
||
locale:
|
||
description: 'The locale used on the client account. Default value: en-US.'
|
||
type: string
|
||
example: en-US
|
||
guid:
|
||
description: The global user ID of the client account just added to Plesk.
|
||
type: string
|
||
example: 18b78dd1-2b43-44f7-9599-56ccb56a85dc
|
||
owner_login:
|
||
description: >-
|
||
The login name of a client account owner. If the client account owner
|
||
is Plesk Administrator, specify the admin login name.
|
||
type: string
|
||
example: admin
|
||
external_id:
|
||
description: >-
|
||
The client GUID in the Plesk components (for example, Business
|
||
Manager).
|
||
type: string
|
||
example: link:12345
|
||
description:
|
||
description: The description for the client account.
|
||
type: string
|
||
example: Nice guy
|
||
type:
|
||
description: >-
|
||
The type of the client account. Allowed values: reseller | customer |
|
||
admin.
|
||
type: string
|
||
enum:
|
||
- reseller
|
||
- customer
|
||
- admin
|
||
example: reseller
|
||
required:
|
||
- id
|
||
- created
|
||
- name
|
||
- company
|
||
- login
|
||
- status
|
||
- email
|
||
- locale
|
||
- guid
|
||
- description
|
||
- type
|
||
ClientRequest:
|
||
description: The client entity
|
||
properties:
|
||
name:
|
||
description: Client's personal name (1 to 60 characters long).
|
||
type: string
|
||
example: John Smith
|
||
company:
|
||
description: The company name (0 to 60 characters long).
|
||
type: string
|
||
example: Plesk
|
||
login:
|
||
description: The login name of the client account (1 to 60 characters long).
|
||
type: string
|
||
x-validators:
|
||
- UniqueClientLogin
|
||
example: john-unit-test
|
||
status:
|
||
description: >-
|
||
The current status of the client account. Allowed values: 0 (active) |
|
||
16 (disabled by admin) | 4 (under backup/restore) | 256 (expired).
|
||
type: integer
|
||
example: 0
|
||
email:
|
||
description: >-
|
||
The email address of the client account owner (0 to 255 characters
|
||
long).
|
||
type: string
|
||
example: john_smith@msn.com
|
||
locale:
|
||
description: 'The locale used on the client account. Default value: en-US.'
|
||
type: string
|
||
example: en-US
|
||
owner_login:
|
||
description: >-
|
||
The login name of a client account owner. If the client account owner
|
||
is Plesk Administrator, specify the admin login name.
|
||
type: string
|
||
example: admin
|
||
external_id:
|
||
description: >-
|
||
The client GUID in the Plesk components (for example, Business
|
||
Manager).
|
||
type: string
|
||
example: link:12345
|
||
description:
|
||
description: The description for the client account.
|
||
type: string
|
||
example: Nice guy
|
||
password:
|
||
description: The password of the client account (5 to 14 characters long).
|
||
type: string
|
||
x-validators:
|
||
- PasswordStrength
|
||
example: changeme1Q**
|
||
type:
|
||
description: >-
|
||
The type of the client account. Allowed values: reseller | customer |
|
||
admin.
|
||
type: string
|
||
enum:
|
||
- reseller
|
||
- customer
|
||
- admin
|
||
example: reseller
|
||
required:
|
||
- name
|
||
- login
|
||
- password
|
||
- email
|
||
- type
|
||
ClientUpdateRequest:
|
||
description: The client entity
|
||
properties:
|
||
name:
|
||
description: Client's personal name (1 to 60 characters long).
|
||
type: string
|
||
example: John Smith
|
||
company:
|
||
description: The company name (0 to 60 characters long).
|
||
type: string
|
||
example: Plesk
|
||
login:
|
||
description: The login name of the client account (1 to 60 characters long).
|
||
type: string
|
||
x-validators:
|
||
- UniqueClientLogin
|
||
example: john-unit-test
|
||
status:
|
||
description: >-
|
||
The current status of the client account. Allowed values: 0 (active) |
|
||
16 (disabled by admin) | 4 (under backup/restore) | 256 (expired).
|
||
type: integer
|
||
example: 0
|
||
email:
|
||
description: >-
|
||
The email address of the client account owner (0 to 255 characters
|
||
long).
|
||
type: string
|
||
example: john_smith@msn.com
|
||
locale:
|
||
description: 'The locale used on the client account. Default value: en-US.'
|
||
type: string
|
||
example: en-US
|
||
owner_login:
|
||
description: >-
|
||
The login name of a client account owner. If the client account owner
|
||
is Plesk Administrator, specify the admin login name.
|
||
type: string
|
||
example: admin
|
||
external_id:
|
||
description: >-
|
||
The client GUID in the Plesk components (for example, Business
|
||
Manager).
|
||
type: string
|
||
example: link:12345
|
||
description:
|
||
description: The description for the client account.
|
||
type: string
|
||
example: Nice guy
|
||
password:
|
||
description: The password of the client account (5 to 14 characters long).
|
||
type: string
|
||
x-validators:
|
||
- PasswordStrength
|
||
example: changeme1Q**
|
||
ClientStatistics:
|
||
description: The client statistics
|
||
properties:
|
||
active_domains:
|
||
description: The number of active domains created by a client.
|
||
type: integer
|
||
example: 1
|
||
subdomains:
|
||
description: The number of sub-domains created by a client.
|
||
type: integer
|
||
example: 0
|
||
disk_space:
|
||
description: The amount of disk space occupied by the given a client.
|
||
type: integer
|
||
example: 765952
|
||
email_postboxes:
|
||
description: The number of email boxes created by a client.
|
||
type: integer
|
||
example: 1
|
||
email_redirects:
|
||
description: The number of redirects created by a client.
|
||
type: integer
|
||
example: 0
|
||
email_response_messages:
|
||
description: The number of automatic response messages created by a client.
|
||
type: integer
|
||
example: 0
|
||
mailing_lists:
|
||
description: The number of mailing lists created by a client.
|
||
type: integer
|
||
example: 0
|
||
databases:
|
||
description: The number of databases used by a client.
|
||
type: integer
|
||
example: 0
|
||
traffic:
|
||
description: The amount of traffic (in bytes) spent by a client monthly.
|
||
type: integer
|
||
example: 0
|
||
traffic_prevday:
|
||
description: >-
|
||
The amount of traffic (in bytes) spent by a client during the previous
|
||
day.
|
||
type: integer
|
||
example: 0
|
||
required:
|
||
- active_domains
|
||
- subdomains
|
||
- disk_space
|
||
- email_postboxes
|
||
- email_redirects
|
||
- email_response_messages
|
||
- mailing_lists
|
||
- databases
|
||
- traffic
|
||
- traffic_prevday
|
||
DomainRequest:
|
||
properties:
|
||
name:
|
||
description: Domain name.
|
||
type: string
|
||
example: example.com
|
||
description:
|
||
description: The description for the domain.
|
||
type: string
|
||
example: My website
|
||
hosting_type:
|
||
description: >-
|
||
It specifies the hosting type of the created domain. Allowed values:
|
||
`virtual` | `standard_forwarding` | `frame_forwarding` | `none`.
|
||
|
||
Meanings: `virtual` - the domain ships with physical hosting.
|
||
|
||
`standard_forwarding` - the domain ships with standard forwarding.
|
||
When the user goes to a domain on which the standard forwarding is
|
||
set, Plesk redirects this user from the requested URL to the
|
||
destination URL. This is done explicitly: the user sees the real
|
||
‘destination’ address in the path bar of the browser.
|
||
|
||
`frame_forwarding` - the domain ships with frame forwarding. When the
|
||
user goes to such site on which frame forwarding is set, Plesk
|
||
redirects this user from the requested URL to the ‘destination’ URL
|
||
implicitly (the user still sees the initial URL in the path bar of the
|
||
browser).
|
||
|
||
`none` - no hosting ships with the domain.
|
||
type: string
|
||
enum:
|
||
- virtual
|
||
- standard_forwarding
|
||
- frame_forwarding
|
||
- none
|
||
hosting_settings:
|
||
description: >2-
|
||
for *physical hosting*:
|
||
`ftp_login` - it specifies the ftp user login name (required).
|
||
`ftp_password` - it specifies the ftp user password (required).
|
||
|
||
for *frame forwarding* and *standard forwarding*:
|
||
|
||
`dest_url` - it specifies the URL to which the user will be redirected
|
||
explicitly at the attempt to visit the specified domain.
|
||
type: object
|
||
properties:
|
||
ftp_login:
|
||
type: string
|
||
x-validators:
|
||
- UniqueFtpLogin
|
||
example: login
|
||
ftp_password:
|
||
type: string
|
||
example: qwe123
|
||
additionalProperties: true
|
||
example:
|
||
ftp_login: test_login
|
||
ftp_password: changeme1Q**
|
||
base_domain:
|
||
description: It specifies the base domain when creating the addon domain.
|
||
$ref: '#/definitions/DomainReference'
|
||
parent_domain:
|
||
description: It specifies the parent domain when creating the subdomain.
|
||
$ref: '#/definitions/DomainReference'
|
||
owner_client:
|
||
description: >-
|
||
It specifies the ID, login, GUID or external ID of the new
|
||
subscription owner Administrator, reseller, or customer.
|
||
$ref: '#/definitions/OwnerClientReference'
|
||
ip_addresses:
|
||
description: The IP address associated with the domain.
|
||
type: array
|
||
items:
|
||
type: string
|
||
example:
|
||
- 93.184.216.34
|
||
- 2606:2800:220:1:248:1893:25c8:1946
|
||
ipv4:
|
||
description: '@deprecated'
|
||
type: array
|
||
items:
|
||
type: string
|
||
format: ipv4
|
||
example:
|
||
- 93.184.216.34
|
||
ipv6:
|
||
description: '@deprecated'
|
||
type: array
|
||
items:
|
||
type: string
|
||
format: ipv6
|
||
example:
|
||
- 2606:2800:220:1:248:1893:25c8:1946
|
||
plan:
|
||
$ref: '#/definitions/PlanReference'
|
||
DomainResponse:
|
||
properties:
|
||
id:
|
||
description: Domain ID.
|
||
type: integer
|
||
example: 7
|
||
name:
|
||
description: Domain name.
|
||
type: string
|
||
example: example.com
|
||
ascii_name:
|
||
description: Domain display name.
|
||
type: string
|
||
example: ascii-example.com
|
||
hosting_type:
|
||
description: Domain hosting type.
|
||
type: string
|
||
enum:
|
||
- virtual
|
||
- standard_forwarding
|
||
- frame_forwarding
|
||
- none
|
||
base_domain_id:
|
||
description: Base domain ID.
|
||
type: integer
|
||
example: 3
|
||
www_root:
|
||
description: WWW Root on filesystem
|
||
type: string
|
||
example: /var/www/vhosts/example.com/httpdocs
|
||
guid:
|
||
description: Domain GUID.
|
||
type: string
|
||
example: b623e93d-dc72-4102-b5f0-ded427cf0fb1
|
||
created:
|
||
description: Creation date.
|
||
type: string
|
||
format: date
|
||
example: '2016-11-13'
|
||
aliases:
|
||
x-since: 18.0.42
|
||
description: Domain aliases that point to this domain.
|
||
type: array
|
||
items:
|
||
$ref: '#/definitions/DomainAlias'
|
||
required:
|
||
- id
|
||
- name
|
||
- ascii_name
|
||
- hosting_type
|
||
- base_domain_id
|
||
- www_root
|
||
- guid
|
||
- created
|
||
DomainReference:
|
||
properties:
|
||
id:
|
||
description: Domain ID.
|
||
type: integer
|
||
example: 7
|
||
name:
|
||
description: Domain name.
|
||
type: string
|
||
example: example.com
|
||
guid:
|
||
description: Domain GUID.
|
||
type: string
|
||
example: b623e93d-dc72-4102-b5f0-ded427cf0fb1
|
||
required:
|
||
- id
|
||
- name
|
||
- guid
|
||
DomainStatus:
|
||
properties:
|
||
status:
|
||
description: Status of the specified domain.
|
||
type: string
|
||
enum:
|
||
- active
|
||
- suspended
|
||
- disabled
|
||
example: active
|
||
required:
|
||
- status
|
||
OwnerClientReference:
|
||
properties:
|
||
id:
|
||
description: The client's ID.
|
||
type: integer
|
||
example: 7
|
||
login:
|
||
description: The login name of the client account owner.
|
||
type: string
|
||
example: owner
|
||
guid:
|
||
description: The global user ID of the client account just added to Plesk.
|
||
type: string
|
||
example: b623e93d-dc72-4102-b5f0-ded427cf0fb1
|
||
external_id:
|
||
description: >-
|
||
The client GUID in the Plesk components (for example, Business
|
||
Manager).
|
||
type: string
|
||
example: b623e93d-dc72-4102-b5f0-ded427cf0fb1
|
||
required:
|
||
- id
|
||
- login
|
||
- guid
|
||
- external_id
|
||
PlanReference:
|
||
properties:
|
||
name:
|
||
description: >-
|
||
The service plan by name if it is necessary to create a subscription
|
||
to a certain service plan.
|
||
type: string
|
||
example: Unlimited
|
||
required:
|
||
- name
|
||
DomainAlias:
|
||
properties:
|
||
id:
|
||
description: Domain alias ID.
|
||
type: integer
|
||
example: 123
|
||
name:
|
||
description: Domain alias name.
|
||
type: string
|
||
example: example.com
|
||
ascii_name:
|
||
description: Domain alias name in ASCII.
|
||
type: string
|
||
example: ascii-example.com
|
||
web:
|
||
description: Web service status.
|
||
type: boolean
|
||
example: false
|
||
dns:
|
||
description: DNS service status.
|
||
type: boolean
|
||
example: true
|
||
mail:
|
||
description: Mail service status.
|
||
type: boolean
|
||
example: false
|
||
seo_redirect:
|
||
description: 301 redirect to HTTPS status.
|
||
type: boolean
|
||
example: true
|
||
required:
|
||
- id
|
||
- name
|
||
- ascii_name
|
||
- web
|
||
- dns
|
||
- mail
|
||
- seo_redirect
|
||
FtpUser:
|
||
properties:
|
||
id:
|
||
description: User ID in the database
|
||
type: integer
|
||
example: 2
|
||
name:
|
||
description: User name in the system
|
||
type: string
|
||
example: exampleuser
|
||
home:
|
||
description: Subdirectory of the WWW Root that user is restricted to
|
||
type: string
|
||
example: /httpdocs
|
||
quota:
|
||
description: Hard disk quota in bytes (if supported by platform)
|
||
type: integer
|
||
example: -1
|
||
permissions:
|
||
description: Access permissions of the user (if supported by platform)
|
||
type: object
|
||
properties:
|
||
write:
|
||
type: string
|
||
enum:
|
||
- 'true'
|
||
- 'false'
|
||
read:
|
||
type: string
|
||
enum:
|
||
- 'true'
|
||
- 'false'
|
||
parent_domain:
|
||
description: ID of the parent domain
|
||
type: integer
|
||
example: 4
|
||
required:
|
||
- id
|
||
- name
|
||
- home
|
||
- parent_domain
|
||
FtpUserRequest:
|
||
properties:
|
||
name:
|
||
description: User name in the system
|
||
type: string
|
||
example: exampleuser
|
||
password:
|
||
description: User password
|
||
type: string
|
||
example: changeme1Q**
|
||
home:
|
||
description: Subdirectory of the WWW Root that user is restricted to
|
||
type: string
|
||
example: /httpdocs
|
||
quota:
|
||
description: Hard disk quota in bytes (if supported by platform)
|
||
type: integer
|
||
example: -1
|
||
permissions:
|
||
description: Access permissions of the user (if supported by platform)
|
||
type: object
|
||
properties:
|
||
read:
|
||
type: string
|
||
enum:
|
||
- 'true'
|
||
- 'false'
|
||
write:
|
||
type: string
|
||
enum:
|
||
- 'true'
|
||
- 'false'
|
||
parent_domain:
|
||
$ref: '#/definitions/DomainReference'
|
||
required:
|
||
- name
|
||
- password
|
||
- parent_domain
|
||
FtpUserUpdateRequest:
|
||
properties:
|
||
name:
|
||
description: User name in the system
|
||
type: string
|
||
example: exampleuser
|
||
password:
|
||
description: User password
|
||
type: string
|
||
home:
|
||
description: Subdirectory of the WWW Root that user is restricted to
|
||
type: string
|
||
example: /httpdocs
|
||
quota:
|
||
description: Hard disk quota in bytes (if supported by platform)
|
||
type: integer
|
||
example: -1
|
||
permissions:
|
||
description: Access permissions of the user (if supported by platform)
|
||
type: object
|
||
properties:
|
||
read:
|
||
type: string
|
||
enum:
|
||
- 'true'
|
||
- 'false'
|
||
write:
|
||
type: string
|
||
enum:
|
||
- 'true'
|
||
- 'false'
|
||
Database:
|
||
properties:
|
||
id:
|
||
description: ID of the database
|
||
type: integer
|
||
example: 2
|
||
name:
|
||
description: Database name
|
||
type: string
|
||
example: exampledb
|
||
type:
|
||
description: Database server type
|
||
type: string
|
||
enum:
|
||
- mssql
|
||
- mysql
|
||
- postgresql
|
||
parent_domain:
|
||
description: ID of the parent domain
|
||
type: integer
|
||
example: 3
|
||
server_id:
|
||
description: ID of the database server
|
||
type: integer
|
||
example: 1
|
||
default_user_id:
|
||
description: ID of the default database user for database
|
||
type: integer
|
||
example: 6
|
||
DatabaseRequest:
|
||
properties:
|
||
name:
|
||
description: Database name
|
||
type: string
|
||
example: exampledb
|
||
type:
|
||
description: Database server type
|
||
type: string
|
||
enum:
|
||
- mssql
|
||
- mysql
|
||
- postgresql
|
||
parent_domain:
|
||
$ref: '#/definitions/DomainReference'
|
||
server_id:
|
||
description: ID of the database server
|
||
type: integer
|
||
example: 1
|
||
DatabaseServer:
|
||
properties:
|
||
id:
|
||
description: ID of the database server
|
||
type: integer
|
||
example: 1
|
||
host:
|
||
description: Database server host
|
||
type: string
|
||
example: 127.0.0.1
|
||
port:
|
||
description: Database server port
|
||
type: integer
|
||
example: 3306
|
||
type:
|
||
description: Database server type
|
||
type: string
|
||
enum:
|
||
- mssql
|
||
- mysql
|
||
- postgresql
|
||
status:
|
||
description: Database server status
|
||
type: string
|
||
db_count:
|
||
description: Database server database count
|
||
type: integer
|
||
example: 123
|
||
is_default:
|
||
description: Flag that server is default for servers of this type
|
||
type: boolean
|
||
is_local:
|
||
description: Flag that server is installed on local service node
|
||
type: boolean
|
||
DatabaseUser:
|
||
properties:
|
||
id:
|
||
description: ID of the database user
|
||
type: integer
|
||
example: 5
|
||
login:
|
||
description: Database user login
|
||
type: string
|
||
example: exampledbuser
|
||
database_id:
|
||
description: ID of the database
|
||
type: integer
|
||
example: 12
|
||
DatabaseUserRequest:
|
||
properties:
|
||
login:
|
||
description: Database user login
|
||
type: string
|
||
example: exampledbuser
|
||
password:
|
||
description: User password
|
||
type: string
|
||
example: changeme1Q**
|
||
parent_domain:
|
||
$ref: '#/definitions/DomainReference'
|
||
server_id:
|
||
description: >-
|
||
ID of the database server (if user should have access to all databases
|
||
on subscription)
|
||
type: integer
|
||
example: 9
|
||
database_id:
|
||
description: ID of the database (if user should have access to one database)
|
||
type: integer
|
||
example: 3
|
||
DatabaseUserUpdateRequest:
|
||
properties:
|
||
login:
|
||
description: Database user login
|
||
type: string
|
||
example: exampledbuser
|
||
password:
|
||
description: New user password
|
||
type: string
|
||
example: changeme1Q**
|
||
DnsRecord:
|
||
properties:
|
||
id:
|
||
description: Unique identifier of the DNS record
|
||
type: integer
|
||
type:
|
||
description: The type of the DNS record
|
||
type: string
|
||
enum:
|
||
- A
|
||
- CNAME
|
||
- PTR
|
||
- MX
|
||
- NS
|
||
- TXT
|
||
- SOA
|
||
- AXFR
|
||
- SRV
|
||
- AAAA
|
||
- DS
|
||
- CAA
|
||
- TLSA
|
||
- HTTPS
|
||
host:
|
||
description: The IP address or name of a host, that will be used by DNS
|
||
type: string
|
||
value:
|
||
description: The value that will be linked with the host value
|
||
type: string
|
||
opt:
|
||
description: Optional information about the DNS record
|
||
type: string
|
||
ttl:
|
||
description: >-
|
||
The amount of time (in seconds) that slave DNS servers should store
|
||
the record in a cache
|
||
type: integer
|
||
DnsRecordRequest:
|
||
properties:
|
||
type:
|
||
description: The type of the DNS record
|
||
type: string
|
||
enum:
|
||
- A
|
||
- CNAME
|
||
- PTR
|
||
- MX
|
||
- NS
|
||
- TXT
|
||
- SOA
|
||
- AXFR
|
||
- SRV
|
||
- AAAA
|
||
- DS
|
||
- CAA
|
||
- TLSA
|
||
- HTTPS
|
||
host:
|
||
description: The IP address or name of a host, that will be used by DNS
|
||
type: string
|
||
value:
|
||
description: The value that will be linked with the host value
|
||
type: string
|
||
opt:
|
||
description: Optional information about the DNS record
|
||
type: string
|
||
ttl:
|
||
description: >-
|
||
The amount of time (in seconds) that slave DNS servers should store
|
||
the record in a cache
|
||
type: integer
|