Skip to content

PHP library for Plesk XML-RPC interface

License

Notifications You must be signed in to change notification settings

arichard42/api-php-lib

This branch is 153 commits behind plesk/api-php-lib:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a665af5 · Sep 17, 2021
Sep 16, 2021
Sep 17, 2021
Sep 17, 2021
Jan 10, 2021
Jan 5, 2020
Jan 10, 2021
Jan 10, 2021
Sep 16, 2021
Jan 31, 2021
Jan 31, 2021
Jun 4, 2021
Jan 1, 2020
Jan 31, 2021
Jan 10, 2021

Repository files navigation

PHP library for Plesk XML-RPC API

Test Status Scrutinizer Code Quality StyleCI codecov

PHP object-oriented library for Plesk XML-RPC API.

Install Via Composer

Composer is a preferable way to install the library:

composer require plesk/api-php-lib

Usage Examples

Here is an example on how to use the library and create a customer with desired properties:

$client = new \PleskX\Api\Client($host);
$client->setCredentials($login, $password);

$client->customer()->create([
    'cname' => 'Plesk',
    'pname' => 'John Smith',
    'login' => 'john',
    'passwd' => 'secret',
    'email' => 'john@smith.com',
]);

It is possible to use a secret key instead of password for authentication.

$client = new \PleskX\Api\Client($host);
$client->setSecretKey($secretKey)

In case of Plesk extension creation one can use an internal mechanism to access XML-RPC API. It does not require to pass authentication because the extension works in the context of Plesk.

$client = new \PleskX\Api\InternalClient();
$protocols = $client->server()->getProtos();

For additional examples see tests/ directory.

How to Run Unit Tests

One the possible ways to become familiar with the library is to check the unit tests.

To run the unit tests use the following command:

REMOTE_HOST=your-plesk-host.dom REMOTE_PASSWORD=password composer test

To use custom port one can provide a URL (e.g. for Docker container):

REMOTE_URL=https://your-plesk-host.dom:port REMOTE_PASSWORD=password composer test

One more way to run tests is to use Docker:

docker-compose run tests

Continuous Testing

During active development it could be more convenient to run tests in continuous manner. Here is the way how to achieve it:

REMOTE_URL=https://your-plesk-host.dom:port REMOTE_PASSWORD=password composer test:watch

About

PHP library for Plesk XML-RPC interface

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 99.7%
  • Other 0.3%