The API simplifies task such as Installing Scripts, Removing Scripts, Creating Domains, Deleting Domains, Adding Users, Removing Users, Editing User Details and such similar functions. There is also a PHP SDK Class written for doing various activities like Installing Apps, Upgrading installations, etc.
Admin Functions
Authenticating
Key
Value
Description
api_key
Random String
API Key is 16 Characters random string provided by Intaller or your Host.
api_pass
Random String
API Key is 32 Characters random string provided by Intaller or your Host.
useuser (Optional)
Username of the account.
This is Optional and can be used to perform Enduser level functions of that user e.g. installing an application, etc.
createSession (Optional)
Username of the account.
As an Admin you can create a session of a particular user and give the returned session key to the user to give him access to the Softaculous Remote Interface.
api
serialize, json or xml (Default: serialize)
Softaculous Remote will return the output in the format specfied.
Admin Login Example
$url = 'http://remote.softaculous.com/index.php?'.
'api_key=TESTAPIKEYREMOTE'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// Get response from the server.
$resp = curl_exec($ch);
Admin acting as User Example
$url = 'http://remote.softaculous.com/index.php?'.
'api_key=TESTAPIKEYREMOTE'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&useuser=username'.
'&api=serialize';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// Get response from the server.
$resp = curl_exec($ch);
Creating User Session Example
$url = 'http://remote.softaculous.com/index.php?'.
'api_key=TESTAPIKEYREMOTE'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&createSession=username'.
'&api=serialize';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Error
if(!empty($res['error'])){
print_r($res['error']);
// No error
}else{
echo 'User Session Key (RSID) : '.$res['rsid'].'<br />'.
'URL : '.$res['rsid'];
}
Enduser
These are Enduser level actions which can be peformed by any enduser.
Authenticating
Key
Value
Description
api_key
Random String
API Key is 16 Characters random string provided by Intaller or your Host.
api_pass
Random String
API Key is 32 Characters random string provided by Intaller or your Host.
api
serialize, json or xml (Default: serialize)
Softaculous Remote will return the output in the format specfied.
Example
$url = 'http://remote.softaculous.com/index.php?'.
'api_key=TESTAPIKEYREMOTE'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// Get response from the server.
$resp = curl_exec($ch);
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&act=home'.
'&api=serialize';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// Get response from the server.
$resp = curl_exec($ch);
// Unserialize data
$res = unserialize($resp);
// The Installed scripts list is in the array key 'iscripts'
print_r($res['iscripts']);
The value should be “software” to install PHP script, “js” to install a JavaScript and “perl” to install a PERL script for softaculous to perform the action of installing a software.
soft
26 (26 is the Script ID of WordPress)
The value should be “SID” for softaculous to perform the action of installing a software. You can find the list of sid’s here
POST
softsubmit
1
This will trigger the install
softdomain
domain.com
This is the domain on which you wish to install the script
softdirectory
wp
This is the sub-directory to install the script in. Leave it blank to install in root of the domain
softdb
wp123
This is the database name for the script. If the script does not require database you can leave this blank
dbusername
wp123
This is the database user(Only for Softaculous Remote)
dbuserpass
w1XRF28mq8
This is the database password. You can generate a random password(Only for Softaculous Remote)
hostname
localhost
This is the hostname of your MySQL server. You can enter your MySQL server IP if you have MySQL on a remote server(Only for Softaculous Remote)
admin_username
admin
This is the admin account username for the installation
admin_pass
pass
This is the admin account password for the installation
admin_email
admin@domain.com
This is the admin account email address for the installation
language
en
Language for the installation. You can get the language codes from the respective install.xml
site_name
My Blog
Site Name for the installation
site_desc
My WordPress Blog
Site Description for the installation
dbprefix
dbpref_
(Optional) Table Prefix to be used for the tables created by application
noemail
1
(Optional) – Use this only if you do not want to send an email to the user
overwrite_existing
1
(Optional) – Use this only if you do not want Softaculous to check for existing files in installation path. If any file(s) exists they will be overwritten.
(Optional) URL to installation. If not posted the URL in existing records will be used.
edit_datadir
/home/USERNAME/datadir
(Optional) Path to data directory of the installation. If not posted the data directory in existing records will be used.
edit_dbname
username_dbname
(Optional) Database name for the installation. If not posted the Database name in existing records will be used.
edit_dbuser
username_dbuser
(Optional) Database user for the installation. If not posted the Database user in existing records will be used.
edit_dbpass
dbpass
(Optional) Password of the database user for the installation. If not posted the password in existing records will be used.
edit_dbhost
localhost
(Optional) Database host for the installation. If not posted the Database host in existing records will be used.
eu_auto_upgrade
1
(Optional) 1 to Enable auto upgrade option and 0 to disable. If not posted the existing setting will not be changed.
auto_upgrade_plugins
1
(Optional) 1 to Enable auto upgrade plugins option and 0 to disable. If not posted the existing setting will not be changed. (Currently this option is supported only in WordPress)
auto_upgrade_themes
1
(Optional) 1 to Enable auto upgrade themes option and 0 to disable. If not posted the existing setting will not be changed. (Currently this option is supported only in WordPress)
noemail
1
(Optional) – Use this only if you do not want to send an email to the user
admin_username
adminusername
(Optional) – Use this only if the script provides admin account creation at the time of installation
admin_pass
adminpassword
(Optional) – Use this only if the script provides admin account creation at the time of installation
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=editdetail'.
'&insid=26_12345';
$post = array('editins' => '1',
'edit_dir' => '/path/to/installation/', // Must be the path to installation
'edit_url' => 'http://example.com', // Must be the URL to installation
'edit_dbname' => 'wpdb',
'edit_dbuser' => 'dbusername',
'edit_dbpass' => 'dbuserpass',
'edit_dbhost' => 'dbhost',
'admin_username' => 'adminusername', //Provide this only if script provides as well as password needs to be reset
'admin_pass' => 'adminpassword' //Provide this only if script provides
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
// Print the entire output just incase !
print_r($res);
The value should be “upgrade” for softaculous to perform the action of upgrading an installation.
insid
26_12345
The installation ID that you want to upgrade. It can be fetched from List Installed Script
POST
softsubmit
1
This will trigger the upgrade
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=upgrade'.
'&insid=26_12345';
$post = array('softsubmit' => '1');
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
// There might be some task that the user has to perform
if(!empty($res['setupcontinue'])){
echo 'Please visit the following URL to complete upgrade : '.$res['setupcontinue'];
// It upgraded
}else{
echo 'Upgraded successfully. URL to Installation : '.$res['__settings']['softurl'];
}
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
// Print the entire output just incase !
print_r($res);
Update Installation Version in Softaculous Records
The value should be “editdetail” for softaculous to perform the action of editing an installation.
insid
26_12345
The installation ID that you want to edit. It can be fetched from List Installed Script
updateversion
1
The value should be 1 so it will invoke the method to determine and update the Softaculous records with the correct version of the installation
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=editdetail'.
'&insid=26_12345'.
'&updateversion=1';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
// Print the entire output just incase !
print_r($res);
The value should be “sclone” for softaculous to perform the action of cloning an installation.
insid
26_12345
The installation ID that you want to clone. It can be fetched from List Installed Script
POST
softsubmit
1
This will trigger the clone
softdomain
domain.com
This is the domain on which you wish to clone the installation
softdirectory
wp
This is the sub-directory to clone the installation in. Leave it blank to clone in root of the domain
softdb
wp123
This is the database name for the cloned installation. If the script does not require database you can leave this blank.
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=sclone'.
'&insid=26_12345';
$post = array('softsubmit' => '1',
'softdomain' => 'example.com', // Must be a valid Domain
'softdirectory' => 'wp', // Keep empty to install in Web Root
'softdb' => 'wpdb'
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
echo 'Cloned successfully. URL to Installation cloned installation : '.$res['__settings']['softurl'];
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
// Print the entire output just incase !
print_r($res);
(Optional) – Protocol to be used for the installation
softdomain
domain.com
This is the domain on which you wish to staging installation to run
softdirectory
wp
This is the sub-directory to create staging installation in. Leave it blank to create staging in root of the domain
softdb
wp123
This is the database name for the staging installation. If the script does not require database you can leave this blank.
dbusername
dbuser
This is the database user for the staging installation. If the script does not require database you can leave this blank.
dbuserpass
dbpass
This is the database password for the staging installation. If the script does not require database you can leave this blank.
hostname
localhost
This is the hostname of your MySQL server. You can enter your MySQL server IP if you have MySQL on a remote server.
Note : Staging process will start in background and you will get a Task key (32 chars) in response [‘done’] key. Use that key to get the current status of the task. Refer to Get Task Status API.
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=staging'.
'&insid=26_12345';
$post = array('softsubmit' => '1',
'softproto' => '1', // 1 refers to http://
'softdomain' => 'example.com', // Must be a valid Domain
'softdirectory' => 'wp', // Keep empty to install in Web Root
'softdb' => 'wpdb',
'dbusername' => 'dbuser',
'dbuserpass' => 'dbpass',
'hostname' => 'localhost'
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
echo 'Staging succesfully pushed in background. Use the Task key '.$res['done'].' to get the current status of the staging process.';
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
// Print the entire output just incase !
print_r($res);
The value should be “pushtolive” for softaculous to perform the action of pushing to live from the staging installation.
insid
26_12345
The installation ID of the staging installation which you want to push to live. It can be fetched from List Installed Script
POST
softsubmit
1
This will trigger the pushtolive process
Note : Push to Live process will start in background and you will get a Task key (32 chars) in response [‘done’] key. Use that key to get the current status of the task. Refer to Get Task Status API.
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=pushtolive'.
'&insid=26_12345';
$post = array('softsubmit' => '1'
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
echo 'Push to live succesfully started in background. Use the Task key '.$res['done'].' to get the current status of the push to live process.';
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
// Print the entire output just incase !
print_r($res);
The value should be “remove” to perform the action of removing an installed script.
insid
8 (Installation ID)
Installation ID of the installed script. It can be fetched from List Installed Script
POST
removeins
1
This will trigger the remove install process
remove_dir
1
This is to remove the directory where the script is installed. If you do not want to remove the directory do not pass this key in post.
remove_datadir
1
This is to remove the data directory where the script is installed. If you do not want to remove the data directory do not pass this key in post.
remove_db
1
This is to remove the database of the installation. If you do not want to remove the database do not pass this key in post.
remove_dbuser
1
This is to remove the database user of the installation. If you do not want to remove the database user do not pass this key in post.
noemail
1
(Optional) – Use this only if you do not want to send an email to the user
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=remove'.
'&insid=8';
$post = array('removeins' => '1',
'remove_dir' => '1', // Pass this if you want the directory to be removed
'remove_datadir' => '1', // Pass this if you want the data directory to be removed
'remove_db' => '1', // Pass this if you want the database to be removed
'remove_dbuser' => '1' // Pass this if you want the database user to be removed
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
The value should be “import” to perform the action of importing an installation.
soft
26 (26 is the Script ID of WordPress)
The value should be “SID” for softaculous to perform the action of installing a software. You can find the list of sid’s here
POST
softdomain
example.com
This will be the domain where your script is installed. Domain should be without http:// or https://
softdirectory
wp
(OPTIONAL) This will be the directory under the domain where your script is installed. Leave this blank if the script is installed in the root of domain.
softsubmit
1
This will trigger the import function.
Example
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=import'.
'&soft=26';
$post = array('softsubmit' => 1,
'softdomain' => 'example.com',
'softdirectory' => 'wp');
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
The value should be “installations” to perform the action of listing installations.
soft
26 (26 is the Script ID of WordPress)
The value should be “SID” for softaculous to perform the action of installing a software. You can find the list of sid’s here
giveinfo
1
Pass this value as 1 to get the information of the script (passed in the soft parameter)
Example
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=software'.
'&soft=26'.
'&giveinfo=1';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
print_r($res);
print_r($res['info']['overview']); // will have overview of the script (in HTML format)
print_r($res['info']['features']); // will have features list of the script (in HTML format)
print_r($res['info']['demo']); // will have the link to demo of the script
print_r($res['info']['ratings']); // will have the link to ratings page of the script
print_r($res['info']['support']); // will have the link to script vendor support page
print_r($res['info']['release_date']); // will have the release date of the current version of the script
print_r($res['settings']); // will have an array of the list of fields that the script will require, e.g. site_name, site_desc, language, etc
print_r($res['dbtype']); // if the value is not empty it means the script requires a database, if the value is empty it means that the script does not require a database
print_r($res['cron']); // if the value is not empty it means the script requires a CRON JOB, if the value is empty it means that the script does not require a CRON JOB
print_r($res['datadir']); // if the value is not empty it means the script requires a data directory, if the value is empty it means that the script does not require a data directory
The value should be “installations” to perform the action of listing installations.
showupdates
true
(OPTIONAL) The value should be “true” if you want to list only installations that have an update available for softaculous to perform the action of listing installations.
Example
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=installations';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
List Outdated Installations/ Installations that need update
The value should be “installations” to perform the action of listing installations.
showupdates
true
The value should be “true” if you want to list only installations that have an update available for Softaculous to perform the action of listing installations.
Example
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=installations'.
'&showupdates=true';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
The value should be “backup” to perform the action of taking the backup of the installation.
insid
26_5454 (Installation ID)
Installation ID of the installed script. It can be fetched from List Installed Script
POST
backupins
1
This will trigger the backup function.
backup_dir
1
This is to backup the directory
backup_datadir
1
This is to backup the data directory
backup_db
1
This is to backup the database
backup_location
2 (Location ID)
(Optional) – Location id of the backup location where you want to store your current backup. Default value will be the one saved in the installation’s settings. You can find the location id from List Backup Locations
noemail
1
(Optional) – Use this only if you do not want to send an email to the user
Example
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=backup'.
'&insid=26_4545';
$post = array('backupins' => '1',
'backup_dir' => '1', // Pass this if you want to backup the directory
'backup_datadir' => '1', // Pass this if you want to backup the data directory
'backup_db' => '1', // Pass this if you want to backup the database
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
The value should be “restore” to perform the action of restoring the backup of the installation.
restore
backup_time_insid.tar.gz (Backup File Name)
Name of the Backup File. It can be fetched from List Backups
POST
restore_ins
1
This will trigger the restore function.
restore_dir
1
This is to restore the directory
restore_datadir
1
This is to restorethe data directory
restore_db
1
This is to restore the database
noemail
1
(Optional) – Use this only if you do not want to send an email to the user
Example
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=restore'.
'&restore=backup_time_insid.tar.gz';
$post = array('restore_ins' => '1',
'restore_dir' => '1', // Pass this if you want to restore the directory
'restore_datadir' => '1', // Pass this if you want to restore the data directory
'restore_db' => '1', // Pass this if you want to restore the database
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
The value should be “sign_on” to perform the action to get the sign on URL.
insid
26_12345
The installation ID that you want to edit. It can be fetched from List Installed Script
autoid
abcdefghijklmnopqrstuvwxyz0123456789
This must be any 32 character random string.
Example
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=sign_on'.
'&insid=26_12345'.
'&autoid=abcdefghijklmnopqrstuvwxyz0123456789';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// Get response from the server.
$resp = curl_exec($ch);
On using this API, you will get the sign_on_url, upon accessing which the user will be logged in to the admin panel of the script. You can use the same URL to redirect the user as shown here:
This will list the domains under the account that you are logged in as.
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=domains';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will trigger the add domain function under the account that you are logged in as.
POST
add_domain
1
This will trigger the add domain function
domain
domain.com
Name of the domain to be added
server_host
ftp.domain.com
(Optional) This is the server host which will be used as the host to connect via FTP/FTPS/SFTP.
ftp_user
ftp_user
User to connect to the FTP/FTPS/SFTP server
ftp_pass
ftp_pass
Password for User to connect to the FTP/FTPS/SFTP server
ftp_path
/public_html
Path to the directory relative to home directory of user for installations
backup_path
/backups
Path to the directory relative to home directory of user for storing backups
data_dir
/datadir
Path to the data directory which will be used to create data directories required by some scripts like Moodle. This should not be accessible by webserver.
protocol (Optional)
ftp, ftps, sftp (Default: ftp)
The Protocol to use for this domain
port
21
Port number to connect to the FTP/SFTP/FTPS server. FTP default is 21.
public_key (Optional)
Public Key
Path to Public Key. Specify only when sftp protocol is used
private_key (Optional)
Private Key
Path to Private Key. Specify only sftp protocol is used
passphrase (Optional)
Passphrase
Passphrase for Private Key. Specify only sftp protocol is used
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=adddomain';
$post = array('add_domain' => 1,
'domain' => 'example.com',
'server_host' => 'ftp.example.com', // Optional
'ftp_user' => 'ftp_user',
'ftp_pass' => 'ftp_pass',
'ftp_path' => '/public_html',
'backup_path' => '/backups',
'data_dir' => '/datadir',
'protocol' => 'ftp',
'port' => '21');
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will trigger the domains function under the account that you are logged in as.
delid
1
This will will be the domain id of the domain which you want to delete. You can use the List Domains function.
cleanins
1
(Optional) Passing this as 1 will delete all the installations under this domain. If you do not want to delete the installations for the domain being deleted leave this parameter empty.
Example
// URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=domains'.
'&delid=1'.
'&cleanins=1';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of creating a set.
POST
set_input
SET-NAME
The value must be name of your set
add_sets
1
This will trigger the addition of set
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=manage_sets';
$post = array('set_input' => 'SET-NAME', //Name of your set
'add_sets' => '1'
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of installing plugin to a set.
sets_name
SET-NAME
The value should be name of your set
plugins
1
The value of plugin must be 1 to install plugin in set
add_plugins_themes_data
1
The add_plugins_themes_data is to add the plugin to the set.
POST
add_plugins_themes_data_slugs
An array with the plugin slugs
An array with the plugin slugs that you want to add.
add_plugins_themes_data_names
An array with the plugin name
An array with the plugin names that you want to add.
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&sets_name=SET-NAME'.
'&plugins=1'.
'&add_plugins_themes_data=1'.
'&act=manage_sets';
$post = array('add_plugins_themes_data_slugs' => array('duplicator'), //Slug name
'add_plugins_themes_data_names' => array('Duplicator – WordPress Migration Plugin') //Plugin name
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of installing theme to a set.
sets_name
SET-NAME
The value should be name of your set
themes
1
The value of themes must be 1 to install theme in set
add_plugins_themes_data
1
The add_plugins_themes_data is to add the theme to the set.
POST
add_plugins_themes_data_slugs
An array with the theme slugs
An array with the theme slugs that you want to add.
add_plugins_themes_data_names
An array with the theme names
An array with the theme names that you want to add.
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&sets_name=SET-NAME'.
'&themes=1'.
'&add_plugins_themes_data=1'.
'&act=manage_sets';
$post = array('add_plugins_themes_data_slugs' => array('open-shop'), //Slug name
'add_plugins_themes_data_names' => array('Open Shop') //Theme name
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing a set.
remove_sets
1
This will trigger the removal process of set.
POST
sets
An array with the set names
An array with the set names you want to remove.
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&remove_sets=1'.
'&act=manage_sets';
$post = array('sets' => array('SET-NAME'), //Set name
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing plugin from set.
set_name
SET-NAME
The value should be name of your set from which plugin is to be removed.
plugins
1
The value must be 1 to remove plugin from set.
plugins_themes_to_remove
duplicator
The slug name of plugin
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&set_name=SET-NAME'.
'&plugins=1'.
'&plugins_themes_to_remove=duplicator'.
'&act=manage_sets';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing theme from set.
set_name
SET-NAME
The value should be name of your set from which theme is to be removed.
themes
1
The value must be 1 to remove theme from set.
plugins_themes_to_remove
open-shop
The slug name of theme
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&set_name=SET-NAME'.
'&themes=1'.
'&plugins_themes_to_remove=open-shop'.
'&act=manage_sets';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing a set.
softinstall_set
SET-NAME
The value should be name of your set which is to be installed.
softwebsites
26_35180
The installation ID that you want the set to be installed on. It can be fetched from List Installed Script
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&softinstall_set=SET-NAME'.
'&softwebsites=26_35180'.
'&act=manage_sets';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing a set.
set_name
SET-NAME
The value should be name of your set which to be pre-selected on install form
default_value
1
This will pre-select the set.
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&set_name=SET-NAME'.
'&default_value=1'.
'&act=manage_sets';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “wordpress” to perform the action of listing wordpress installations.
Example
// The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=wordpress';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
if(!empty($res['error'])){
// Error
echo 'Some error occurred';
print_r($res['error']);
}else{
print_r($res);
}
Auto Login to WordPress admin panel
You can use the Auto Sign On API example to Auto Login to the WordPress admin panel via WordPress Manager.
The value should be “wordpress” to perform the action of enabling auto upgrade core settings.
POST
insid
26_31793
The installation ID for which you want to enable auto upgrade . It can be fetched from List WordPress Installations
auto_upgrade_core
1
The values for auto upgrade core settings can be: 0 – Do not upgrade 1 – Upgrade to minor version only 2- Upgrade to any latest version available (Major as well as Minor)
save
1
This shall enable the auto upgrade core settings
Example
//The URL
$url = 'http://your.softaculous.com/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=wordpress';
$post = array('insid' => '26_31793',
'auto_upgrade_core' => '1',
'save' => '1'
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
Number of results to be returned. Default is 100. You can pass all to get the list of all existing users.
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=listuser';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will be the updated number of users to be allotted (Can be used for Reseller users only)
email
email@xyz.com
This will be the Email ID to be set for the user
updateuser
newuser
This is the new username that you want to set (Can be changed for non-reseller users only)
moduser
testuser
This is the username of the user you want to edit
modowner
testuser
This is the owner of the reseller. In case of Resellers they are owned by themselves
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&email=email@xyz.com'.
'&act=listuser'.
'&nof=10'.
'&updateuser=newuser'.
'&moduser=testuser'.
'&modowner=testuser';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will be the username of the user to be deleted
delowner
root
This is the owner username of the user you want to delete. Default owner is root if the user is not created by a reseller.
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=listuser'.
'&deluser=testuser'.
'&delowner=root';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will trigger the list installations function.
POST
listinstallations
1
This will trigger the listinstallations function
users
root;user1;
(Optional) Pass ; separated list of users to filter installations by users
scripts
WordPress;Joomla;
(Optional) Pass ; separated list of scripts to filter installations by scripts
domains
example.com;example2.com;
(Optional) Pass ; separated list of domains to filter installations by domains
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=installations';
$post = array('listinstallations' => 1,
//'users' => 'root;user1;', // Pass this if you want the installation list of specific users
//'scripts' => 'WordPress;Joomla;', // Pass this if you want the installation list of specific scripts
//'domains' => 'example.com;example2.com;', // Pass this if you want the installation list of specific domains
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res)){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will trigger the list installations function.
show
outdated
This will trigger the outdated installations list function
POST
listinstallations
1
This will trigger the listinstallations function
users
root;user1;
(Optional) Pass ; separated list of users to filter installations by users
scripts
WordPress;Joomla;
(Optional) Pass ; separated list of scripts to filter installations by scripts
domains
example.com;example2.com;
(Optional) Pass ; separated list of domains to filter installations by domains
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=installations'.
'&show=outdated';
$post = array('listinstallations' => 1,
//'users' => 'root;user1;', // Pass this if you want the installation list of specific users
//'scripts' => 'WordPress;Joomla;', // Pass this if you want the installation list of specific scripts
//'domains' => 'example.com;example2.com;', // Pass this if you want the installation list of specific domains
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res)){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will trigger the list installations function.
POST
listinstallations
1
This will trigger the listinstallations function
only_realversion
1
This will trigger the only_realversion function to list only installations in which the version in Softaculous records do not match with actual installation version
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=installations';
$post = array('listinstallations' => 1, 'only_realversion' => 1);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res)){
print_r($res);
}
This will trigger the list installations function.
POST
listinstallations
1
This will trigger the listinstallations function
only_realversion
1
This will trigger the only_realversion function to list only installations in which the version in Softaculous records do not match with actual installation version
list
array(‘username-26_68351’, ‘username-26_68352’)
This will contain the array list for the installations which needs to be updated in Softaculous record(you will need to pass installation id which you will get from Real Version response in List Real Version
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=installations';
$post = array('listinstallations' => 1, 'only_realversion' => 1, 'list' => array('username-26_68351', 'username-26_68352'));
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res)){
print_r($res);
}
This will trigger the installation statistics function
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=ins_statistics';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
(Optional) Use this only if you want to add a reseller to the plan. resellers_ is the prefix for adding a reseller and abc is the name of the reseller (that should already exist). Similarly pass a separate key for each reseller you want to add to the plan.
users_xyz
1
(Optional) Use this only if you want to add a user to the plan. users_ is the prefix for adding a user and xyz is the name of the user (that should already exist). Similarly pass a separate key for each user you want to add to the plan.
scripts_26
1
Use this to pass the scripts to be added to the plan. scripts_ is the prefix for adding a script and 26 is the id of the script to be added. Similarly pass a separate key for each script you want to add to the plan. Get Script ids
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=addplans';
$post = array('saveplan' => '1',
'planname' => 'plan1',
'resellers_abc' => '1',
'users_xyz' => '1',
'scripts_26' => '1', // Add WordPress
'scripts_413' => '1' // Add Joomla
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will be the plan name of the plan you want to edit
POST
saveplan
1
This will trigger the add plan function
planname
plan1
Plan name for the new plan being created
resellers_abc
1
(Optional) Use this only if you want to assign a reseller to the plan. resellers_ is the prefix for adding a reseller and abc is the name of the reseller (that should already exist). Similarly pass a separate key for each reseller you want to assign to the plan.
users_xyz
1
(Optional) Use this only if you want to assign a user to the plan. users_ is the prefix for assigning a user and xyz is the name of the user (that should already exist). Similarly pass a separate key for each user you want to assign to the plan.
scripts_413
1
Use this to pass the scripts to be assigned to the plan. scripts_ is the prefix for assigning a script and 26 is the id of the script to be assigned. Similarly pass a separate key for each script you want to assign to the plan. Get Script ids
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=editplans'.
'&plan=plan1';
$post = array('saveplan' => '1',
'planname' => 'plan1',
'resellers_abc' => '1',
'users_xyz' => '1',
'scripts_543' => '1', // Add Drupal
'scripts_72' => '1' // Add PrestaShop
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will be the plan name of the plan you want to delete
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=plans'.
'&delete=plan1';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
This will trigger the enable/disable script function
POST
updatesoft
Update Settings
This will trigger the submit function for enabling/disabling the scripts
soft_26
1
Use it to Enable Script from Admin Panel. soft_ is the prefix for enabling a script and 26 is the id of the script to be enabled. Similarly pass a separate key for each script you want to enable. Get Script ids
Note: If you have 10 scripts Enabled. You want to Enable 1 more script you will need to pass all 11 scripts id in the POST data for it to Enable the script. The scripts which are not posted will be disabled.
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=softwares';
$post = array('updatesoft' => 'Update Settings',
'soft_26' => 1, // WordPress
'soft_18' => 1, // Joomla 2.5
'soft_543' => 1, // Drupal 8
'soft_11' => 1, // Open Blog
'soft_3' => 1, // Serendipity
'soft_34' => 1, // Dotclear
'soft_14' => 1, // b2evolution
'soft_470' => 1 // Ghost
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of creating a set.
POST
set_input
SET-NAME
The value must be name of your set
add_sets
1
This will trigger the addition of set
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=manage_sets';
$post = array('set_input' => 'SET-NAME', //Name of your set
'add_sets' => '1'
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of installing plugin to a set.
sets_name
SET-NAME_admin
The value should be name of your set and append _admin to the set name for admin sets.
plugins
1
The value of plugin must be 1 to install plugin in set
add_plugins_themes_data
1
The add_plugins_themes_data is to add the plugin to the set.
POST
add_plugins_themes_data_slugs
An array with the plugin slugs
An array with the plugin slugs that you want to add.
add_plugins_themes_data_names
An array with the plugin name
An array with the plugin names that you want to add
Example
//The URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&sets_name=SET-NAME_admin'.
'&plugins=1'.
'&add_plugins_themes_data=1'.
'&act=manage_sets';
$post = array('add_plugins_themes_data_slugs' => array('duplicator'), //Slug name
'add_plugins_themes_data_names' => array('Duplicator – WordPress Migration Plugin') //Plugin name
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of installing theme to a set.
sets_name
SET-NAME_admin
The value should be name of your set and append _admin to the set name for admin sets.
themes
1
The value of themes must be 1 to install theme in set
add_plugins_themes_data
1
The add_plugins_themes_data is to add the theme to the set.
POST
add_plugins_themes_data_slugs
An array with the theme slugs
An array with the theme slugs that you want to add.
add_plugins_themes_data_names
An array with the theme names
An array with the theme names that you want to add
Example
//The URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&sets_name=SET-NAME_admin'.
'&themes=1'.
'&add_plugins_themes_data=1'.
'&act=manage_sets';
$post = array('add_plugins_themes_data_slugs' => array('open-shop'), //Slug name
'add_plugins_themes_data_names' => array('Open Shop') //Theme name
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing a set.
remove_sets
1
This will trigger the removal process of set.
POST
sets
An array with the set names
An array with the set names you want to remove and append the _admin to the set name for admin sets.
Example
//The URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&remove_sets=1'.
'&act=manage_sets';
$post = array('sets' => array('SET-NAME_admin'), //Set name
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing plugin from set.
set_name
SET-NAME_admin
The value should be name of your set from which plugin is to be removed and also append _admin to the set name for admin sets.
plugins
1
The value must be 1 to remove plugin from set.
plugins_themes_to_remove
duplicator
The slug name of plugin
Example
//The URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&set_name=SET-NAME_admin'.
'&plugins=1'.
'&plugins_themes_to_remove=duplicator'.
'&act=manage_sets';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing theme from set.
set_name
SET-NAME_admin
The value should be name of your set from which theme is to be removed and also append _admin to the set name for admin sets.
themes
1
The value must be 1 to remove theme from set.
plugins_themes_to_remove
open-shop
The slug name of theme
Example
//The URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&set_name=SET-NAME_admin'.
'&themes=1'.
'&plugins_themes_to_remove=open-shop'.
'&act=manage_sets';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “manage_sets” to perform the action of removing a set.
set_name
SET-NAME_admin
The value should be name of your set which to be pre-selected on install form and also append _admin to the set name for admin sets.
default_value
1
This will pre-select the set.
Example
//The URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&set_name=SET-NAME_admin'.
'&default_value=1'.
'&act=manage_sets';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “customscripts” to perform the action of editing a custom script.
sact
edit
The value should be “edit” to edit the custom script.
sid
10001
Here 10001 is the sid or script id of your custom script. The sid can be fetch from List Custom Scripts
POST
csname
CUSTOM-SCRIPT_NAME
The value must be name of your custom script
softname
custom-script
The value must be folder name of the custom script package
desc
Description
The value must be the description of your custom script
ver
1.0
The value must be the version of your custom script
cat
Category
The value must be the category of your custom script. For example, Blogs, Ecommerce etc.
parent
10002
(OPTIONAL) – The value must be sid of your parent script, in case if you want to set your custom script as child. The parent sid can be fetch from List Custom Scripts
edit_submit
1
This will trigger the action of editing the custom script
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=customscripts'.
'&sact=edit'.
'&sid=10001';
$post = array('csname' => 'CUSTOM SCRIPT', //Name of your custom script
'softname' => 'custom', //Name of the custom script folder
'desc' => 'My Custom Script', //Description of custom script
'ver' => '1.0', //Version of custom script
'cat' => 'blogs', //Category
'parent' => '10002', //Parent sid
'edit_submit' => '1'
);
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “customscripts” to perform the action of deleting a custom script.
remid
10001
The value should be sid of the custom script you want to delete. You can fetch the sid from List Custom Scripts
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=customscripts'.
'&remid=10001';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res['done'])){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}
The value should be “customscripts” to perform the action of listing the custom scripts.
Example
// URL
$url = 'http://your.softaculous.com:2006/index.php?'.
'api_key=TESTAPIKEY'.
'&api_pass=PASSPASSPASSPASSPASSPASSPASSPASS'.
'&api=serialize'.
'&act=customscripts';
// Set the curl parameters.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $time);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Turn off the server and peer verification (TrustManager Concept).
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if(!empty($post)){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
// Get response from the server.
$resp = curl_exec($ch);
// The response will hold a string as per the API response method. In this case its PHP Serialize
$res = unserialize($resp);
// Done ?
if(!empty($res)){
print_r($res);
// Error
}else{
echo 'Some error occured';
print_r($res['error']);
}