1. Go to this page and download the library: Download mastercraft/aapanel-php-sdk library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
mastercraft / aapanel-php-sdk example snippets
use Mastercraft\AapanelPhpSdk\AaPanelClient;
use Mastercraft\AapanelPhpSdk\Services\System;
use Dotenv\Dotenv;
$dotenv = Dotenv::createImmutable(__DIR__);
$dotenv->safeLoad();
$baseUri = $_ENV['AAPANEL_URL'];
$apiKey = $_ENV['AAPANEL_API_KEY'];
$client = new AaPanelClient($baseUri, $apiKey);
// Example usage
$system = new System($client);
$systemInfo = $system->getSystemTotal();
print_r($systemInfo);
use Mastercraft\AapanelPhpSdk\Services\System;
$system = new System($client);
// Get system info
$systemInfo = $system->getSystemTotal();
print_r($systemInfo);
// Get disk information
$diskInfo = $system->getDiskInfo();
print_r($diskInfo);
// Get real-time network status
$networkStatus = $system->getNetwork();
print_r($networkStatus);
// Check for updates
$updateStatus = $system->checkUpdate();
print_r($updateStatus);
// Get Auto Restart Rph
$webname = "www.abc.com";
$rphStatus = $system->getAutoRestartRph($webname);
print_r($rphStatus);
// Auto Restart Rph
$rphStatus = $system->autoRestartRph($webname);
print_r($rphStatus);
use Mastercraft\AapanelPhpSdk\Services\Website;
$website = new Website($client);
// Get list of sites
$sites = $website->getSites();
print_r($sites);
// Create a new site
$newSite = $website->createSite([
'webname' => '{"domain":"example.com","domainlist":[],"count":0}',
'path' => '/www/wwwroot/example.com',
'type_id' => 0,
'type' => 'PHP',
'version' => '72',
'port' => 80,
'ps' => 'test site',
'ftp' => true,
'ftp_username' => 'example_com',
'ftp_password' => 'password',
'sql' => true,
'codeing' => 'utf8',
'datauser' => 'example_com',
'datapassword' => 'password'
]);
print_r($newSite);
// Delete a site
$siteId = 66;
$deletedSite = $website->deleteSite($siteId, 'example.com');
print_r($deletedSite);
use Mastercraft\AapanelPhpSdk\Services\Backup;
$backup = new Backup($client);
// List backups for a site
$backups = $backup->listBackups($siteId);
print_r($backups);
// Create a new backup
$newBackup = $backup->createBackup($siteId);
print_r($newBackup);
// Delete a backup
$backupId = 121;
$deletedBackup = $backup->deleteBackup($backupId);
print_r($deletedBackup);
use Mastercraft\AapanelPhpSdk\Services\Domain;
$domain = new Domain($client);
// List domains for a site
$domains = $domain->listDomains($siteId);
print_r($domains);
// List domains for a site
$domains = $domain->getSiteDomains($siteId);
print_r($domains);
// Add a new domain to a site
$newDomain = $domain->addDomain($siteId, ['webname' => 'example.com', 'domain' => 'new.example.com']);
print_r($newDomain);
// Delete a domain from a site
$deletedDomain = $domain->deleteDomain($siteId, ['webname' => 'example.com', 'domain' => 'new.example.com', 'port' => 80]);
print_r($deletedDomain);
use Mastercraft\AapanelPhpSdk\Services\Ssl;
$ssl = new Ssl($client);
// Retrieve ssl information
$sslInfo = $ssl->getSslData();
print_r($sslInfo);
// Retrieve ssl certificates
$sslCerts = $ssl->getSslCertificates();
print_r($sslCerts);
// Retrieve Let's Encrypt Account Info
$letsEncrypt = $ssl->getLetsEncryptInfo();
print_r($letsEncrypt);
// Retrieve Registered Panel User (SSL Account) Info
$registeredSslUser = $ssl->getRegisteredUserInfo();
print_r($registeredSslUser);
// Disable current ssl
$sslStatus = $ssl->disableSsl($webname);
print_r($sslStatus);
// Apply for ssl certificate
$certStatus = $ssl->applyForCertificate([
'domains' => ['example.com', 'example2.com'],
'id' => $siteId,
]);
print_r($certStatus);
// Enable new ssl certificate
$sslStatus = $ssl->enableSsl([
'siteName' => $data['webName'],
'key' => $data['key'],
'csr' => $data['csr'],
]);
print_r($sslStatus);
use Mastercraft\AapanelPhpSdk\Services\PseudoStatic;
$pseudoStatic = new PseudoStatic($client);
// Get pseudo-static rewrite list
$rewriteList = $pseudoStatic->getRewriteList('example.com');
print_r($rewriteList);
// Get rewrite rule content
$rewriteRule = $pseudoStatic->getRewriteRule('/www/server/panel/vhost/rewrite/nginx/example.com.conf');
print_r($rewriteRule);
// Save rewrite rule content
$savedRewriteRule = $pseudoStatic->saveRewriteRule('/www/server/panel/vhost/rewrite/nginx/example.com.conf', 'new content');
print_r($savedRewriteRule);
use Mastercraft\AapanelPhpSdk\Services\Log;
$log = new Log($client);
// Get logs
$logLimit = 10;
$logs = $log->getRealtimeLog($logPath);
print_r($logs);