API Documentation

All of our services are also available via a REST-API for developers to automate your infrastructure administration.

VPS

Deploy new VPS or completely manage existing virtual servers from a third-party interface via our powerful REST API.

POST Parameters
Parameter Type Possible values Description Required
service string "VPS" Choose one of our services Yes
action string "Create", "Info", "RequestCancellation", "Start", "Reboot", "Stop", "Rebuild", "ChangeHostname", "ChangePassword" Service action Yes
productid int Ex: "50" Your VPS id Yes* ("Start", "Reboot", "Stop", "Rebuild", "ChangeHostname", "ChangePassword")
package int 1-6 Select VPS package Yes
billingcycle string "Monthly", "Yearly" Billing cycle for this service. No
operatingsystem int "314" (ubuntu-14.04-x86_64), "446" (ubuntu-16.04-x86_64), "860" (ubuntu-18.10-x86_64), "402" (debian-8.0-x86), "776" (debian-9.4-x86), "878" (debian-10-x86_64), "625" (centos-6.9-x86), "791" (centos-7.4-x86_64), "870" (centos-7.6-x86_64), "895" (centos-8-x86_64), "100001" (Windows Server 2016 *BYOL) Choose operating system for new vps or when rebuilding existing vps. Yes* ("Create", "Rebuild")
hostname string Ex: "server.illyhosting.com" Put VPS in rescue mode. Yes* ("Create", "ChangeHostname")
rootpw string A-Z, 1-99, Symbols VPS root password. Yes* ("Create", "ChangePassword", "Rebuild")
confirmrootpw string A-Z, 1-99, Symbols Confirm VPS root password. Yes* ("ChangePassword")
additionalips int 1-4 Add additional IPv4 to this VPS. Yes* ("Create")
autobackups string "yes", "no" Add Auto backups to this VPS. Yes* ("Create")
rescuemode string "yes", "no" Put VPS in rescue mode. No
promocode string Ex: "20OFF20SALE" Apply promo code for this order. No

Example Request (PHP Curl)
<?php
//API Endpoint 
$apiurl = "https://api.illyhosting.com/"; //API ENDPOINT URL with Trailing Slash 

//Your API credentials generated in our control panel
$api_identifier = "your_api_credential_identifier";
$api_secret = "your_api_credential_secret";

//Post values
$postfields = array(
	'api_identifier' => $api_identifier,
	'api_secret' => $api_secret,
	'service' => 'VPS',
	'action' => 'Create',
	'package' => '1', //VPS 1
	'billingcycle' => 'Monthly',
	'operatingsystem' => '870', //centos-7.6-x86_64
	'hostname' => 'server.illyhosting.com',
	'rootpw' => 'ExamplePassword',
	//'confirmrootpw' => 'ExamplePassword',
	//'productid' => '100',
	//'rescuemode' => 'yes',
	//'autobackups' => '', 
	//'additionalips' => '', 
	//'promocode' => '', 
);

//Call the API 
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $apiurl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postfields));
$response = curl_exec($ch);
if (curl_error($ch)) {
    die('Unable to connect: ' . curl_errno($ch) . ' - ' . curl_error($ch));
}
curl_close($ch);

// Decode response
$jsonData = json_decode($response, true);

// Dump array structure
var_dump($jsonData);
?>

Example Response (JSON)
{ 
	"result": "success", 
	"message": "Order Created", 
	"orderdetails": [ { 
		"id": 150, 
		"regdate": "2020-04-25", 
		"name": "VPS 1", 
		"groupname": "VPS", 
		"domain": "server.illyhosting.com", 
		"dedicatedip": "194.5.235.50", 
		"billingcycle": "Monthly", 
		"nextduedate": "2020-04-25", 
		"username": "serverilly", 
		"password": "ExamplePassword" } 
		] 
}

Possible Error Responses
  • Package can not be empty
  • Package does not exist (Allowed values: 1-6)
  • Operating system can not be empty
  • Operating System value must be numeric
  • Hostname can not be empty
  • Root password can not be empty
  • Product id can not be empty (*Numeric value only)
  • This product doesn't exist or it doesn't belog to your account.
  • Your account do not have enough credit balance.
  • Unable to add order, your account status is closed
  • Other error message

Note: BYOL means: Brind your own license.