API

From Sysvm VEPH : VPS Control Panel

Jump to: navigation, search

Sysvm API is for the developers who need to integrate third party application with Sysvm and manage it remotely. You can operate your Sysvm control panel using API functions described below.

Api Error Codes

Sysvm have the following error codes implemented. This will help you to get the result from Sysvm.

 200  - OK
 101 - Node don't have license
 102 - There is no default node configured
 103 - No free ips
 104 - Invalid plan
 105 - Invalid OS template
 106 - Invalid/Duplicate  vps name
 107 - Invalid Authentication
 108 - Locked vps
 109 - Unknown
 110  - No default node
 199  - License not found for node

You will always get the response code 200 , if your operations are correct.

Operations that can handle by current API

Sysvm API can handle the following current operations.

create - Create a vps
suspend - Suspend a vps
unsuspend - unsuspend a vps
terminate - Terminate a vps

Please read some samples below,

Example 1 : Create A VPS

The following code is in php

<?php
$posturl='http://YOURVCPANELSERVER:9966/';
$postfields['auth']=md5('thisisapikey');  // You need to get the API key from the Sysvm admin page. 
$postfields['vpsname']="test.yourdomain.com";  // This is your new vps name
$postfields['vpsplan']="VPS1";  // This is your vps plan name. It must be same as plan name in Sysvm
$postfields['clinetfname']="Tom"; // This is client name 
$postfields['clientlname']="Jan"; // This is client last name 
$postfields['clientemail']="tomjan@gmail.com";  // This is client email address and it is using as login ID for end user 
$postfields['clinetpass']=md5('mypass');   // This is  your client password using for login into end user Sysvm
$postfields['vpsos']="centos-5.4-i386-default";  // This vps template name. It must be same as in Sysvm admin panel
$postfields['type']="openvz";  // This is type  you can use openvz or xen  . It is case sensitive 
$postfields['action']="create";  // This is the action you can use create / suspend /unsuspend/terminate . It is case sensitive 
$postfields['numip']="2";  // How many ips that you need to allocate for this new vps
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL,$posturl."vcpapi.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
curl_setopt($ch, CURLOPT_TIMEOUT, 900);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
curl_close($ch);
print_r($data);   // This is the code return from the API
?>
Retrieved from "http://wiki.sysvm.com/API"
Personal tools
End user manual
Modules