API:Admin
From SolusVM
Overview
To create an API user in SolusVM click Configuration >> API Users from the top menu then select Create API User.
You will be presented with some fields like the image below:
The ID & Key are auto generated and cannot be changed, all you need to add is the IP Address of the connecting user and set it to active.
Functions
Create Virtual Server
Action ................ : vserver-create
Method ................ : GET or POST
Variables ............. : type [openvz|xen|xen hvm|kvm]
node [name of node]
nodegroup [name of nodegroup]
hostname [hostname of virtual server]
password [root password]
username [client username]
plan [plan name]
template [template or iso name]
ips [amount of ips]
hvmt [0|1] default is 0. This allows to to define templates & isos for Xen HVM
custommemory [overide plan memory with this amount]
customdiskspace [overide plan diskspace with this amount]
custombandwidth [overide plan bandwidth with this amount]
customcpu [overide plan cpu cores with this amount]
customextraip [add this amount of extra ips]
issuelicense [1|2] 1 = cPanel monthly 2= cPanel yearly
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server created</statusmsg>
<mainipaddress>123.123.123.123</mainipaddress>
<extraipaddress>122.122.122.122,111.111.111.111</extraipaddress>
<rootpassword>123456</rootpassword>
<vserverid>100</vserverid>
<consoleuser>console-123</consoleuser>
<consolepassword>123456</consolepassword>
<hostname>server.hostname.com</hostname>
<virtid>vm101|101</virtid>
<nodeid>1</nodeid>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Check if Virtual Server Exists
Action ................ : vserver-checkexists
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server exists</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Check if Client Exists
Action ................ : client-checkexists
Method ................ : GET or POST
Variables ............. : username
Success Returns ....... : <status>success</status>
<statusmsg>Client exists</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Delete Client
Action ................ : client-delete
Method ................ : GET or POST
Variables ............. : username
Success Returns ....... : <status>success</status>
<statusmsg>Client deleted</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Check Virtual Server Status
Action ................ : vserver-status
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>disabled|online|offline</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Create Client
Action ................ : client-create
Method ................ : GET or POST
Variables ............. : username [username]
password [password]
email [email address]
firstname [first name]
lastname [last name]
company [compnay]
Success Returns ....... : <status>success</status>
<statusmsg>Successfully added client</statusmsg>
<username>vps123</username>
<password>123456</passowrd>
<email>email@address.com</email>
<firstname>phill</firstname>
<lastname>smith</lastname>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Create Reseller
Action ................ : reseller-create
Method ................ : GET or POST
Variables ............. : username [username]
password [password]
email [email address]
firstname [first name]
lastname [last name]
company [company] (optional)
usernameprefix [prefix for reseller client usernames] (optional)
maxvps [maximum amount of virtual servers] (optional)
maxusers [maximum amount of users] (optional)
maxmem [maximum amount memory] (optional)
maxburst [maximum amount of burst memory or swapspace] (optional)
maxdisk [maximum amount of diskspace] (optional)
maxbw [maximum amount of bandwidth] (optional)
maxipv4 [maximum amount of ipv4 addresses] (optional)
maxipv6 [maximum amount of ipv6 addresses] (optional)
nodegroup [comma seperated list of node groups] (optional)
mediagroups [comma seperated list of media groups] (optional)
openvz [y|n (Allow building of openvz virtual servers)] (optional)
xenpv [y|n (Allow building of xen pv virtual servers)] (optional)
xenhvm [y|n (Allow building of xen hvm virtual servers)] (optional)
kvm [y|n (Allow building of kvmvirtual servers)] (optional)
Success Returns ....... : <status>success</status>
<statusmsg>Successfully added reseller</statusmsg>
<username>apitest3</username>
<password>1234567</password>
<email>phill@email.com</email>
<firstname>Phill</firstname>
<lastname>Smith</lastname>
<company>FastServers</company>
<usernameprefix>vpsuser</usernameprefix>
<maxvps>10</maxvps>
<maxdisk>21474836480</maxdisk>
<maxmem>10737418240</maxmem>
<maxusers>20</maxusers>
<maxipv4>4</maxipv4>
<maxipv6>6</maxipv6>
<maxburst>10738466816</maxburst>
<maxbw>107374182400</maxbw>
<nodegroupids>14,11,9</nodegroupids>
<mediagroupids>14,11,9</mediagroupids>
<xenpv>1</xenpv>
<xenhvm>1</xenhvm>
<kvm>1</kvm>
<openvz>1</openvz>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Modify Reseller Resources
Action ................ : reseller-modifyresources
Method ................ : GET or POST
Variables ............. : username [username]
maxvps [maximum amount of virtual servers] (optional)
maxusers [maximum amount of users] (optional)
maxmem [maximum amount memory] (optional)
maxburst [maximum amount of burst memory or swapspace] (optional)
maxdisk [maximum amount of diskspace] (optional)
maxbw [maximum amount of bandwidth] (optional)
maxipv4 [maximum amount of ipv4 addresses] (optional)
maxipv6 [maximum amount of ipv6 addresses] (optional)
nodegroup [comma seperated list of node groups] (optional)
mediagroups[comma seperated list of media groups] (optional)
openvz [y|n (Allow building of openvz virtual servers)] (optional)
xenpv [y|n (Allow building of xen pv virtual servers)] (optional)
xenhvm [y|n (Allow building of xen hvm virtual servers)] (optional)
kvm [y|n (Allow building of kvmvirtual servers)] (optional)
Success Returns ....... : <status>success</status>
<statusmsg>Successfully modified reseller resources</statusmsg>
<maxvps>10</maxvps>
<maxdisk>21474836480</maxdisk>
<maxmem>10737418240</maxmem>
<maxusers>20</maxusers>
<maxipv4>4</maxipv4>
<maxipv6>6</maxipv6>
<maxburst>10738466816</maxburst>
<maxbw>107374182400</maxbw>
<nodegroupids>14,11,9</nodegroupids>
<mediagroupids>14,11,9</mediagroupids>
<xenpv>1</xenpv>
<xenhvm>1</xenhvm>
<kvm>1</kvm>
<openvz>1</openvz>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Reseller Info
Action ................ : reseller-info
Method ................ : GET or POST
Variables ............. : username [username]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<username>apitest3</username>
<email>phill@email.com</email>
<firstname>Phill</firstname>
<lastname>Smith</lastname>
<company>FastServers</company>
<usernameprefix>vpsuser</usernameprefix>
<maxvps>10</maxvps>
<maxdisk>21474836480</maxdisk>
<maxmem>10737418240</maxmem>
<maxusers>20</maxusers>
<maxipv4>4</maxipv4>
<maxipv6>6</maxipv6>
<maxburst>10738466816</maxburst>
<maxbw>107374182400</maxbw>
<nodegroupids>14,11,9</nodegroupids>
<mediagroupids>14,11,9</mediagroupids>
<xenpv>1</xenpv>
<xenhvm>1</xenhvm>
<kvm>1</kvm>
<openvz>1</openvz>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Reseller Usernames
Action ................ : reseller-list
Method ................ : GET or POST
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<usernames>username1,username2,username3</usernames>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Delete Reseller
Action ................ : reseller-delete
Method ................ : GET or POST
Variables ............. : username
Success Returns ....... : <status>success</status>
<statusmsg>Reseller deleted</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Update Client Password
Action ................ : client-updatepassword
Method ................ : GET or POST
Variables ............. : username [username]
password [new password]
Success Returns ....... : <status>success</status>
<statusmsg>Successfully updated client password</statusmsg>
<username>vps123</username>
<password>123456</passowrd>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Add Ip Address
Action ................ : vserver-addip
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Ip address added</statusmsg>
<ipaddress>123.123.123.123</ipaddress>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Change Owner of Virtual Server
Action ................ : vserver-changeowner
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
clientid [new client id]
Success Returns ....... : <status>success</status>
<statusmsg>Successfully changed owner</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Reboot Virtual Server
Action ................ : vserver-reboot
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server rebooted</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Shutdown Virtual Server
Action ................ : vserver-shutdown
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server shutdown</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Boot Virtual Server
Action ................ : vserver-boot
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server booted</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Suspend Virtual Server
Action ................ : vserver-suspend
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server suspended</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Unsuspend Virtual Server
Action ................ : vserver-unsuspend
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server unsuspended</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Enable TUN/TAP
Action ................ : vserver-tun-enable
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Enabled</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Enable Network Mode
Action ................ : vserver-network-enable
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server network enabled</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Disable Network Mode
Action ................ : vserver-network-disable
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server network disabled</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Change Serial Console Password
Action ................ : vserver-consolepass
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Variables ............. : consolepassword [new password]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server console password changed</statusmsg>
<consolepassword></consolepassword>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Change VNC Password
Action ................ : vserver-vncpass
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Variables ............. : vncpassword [new password]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server vnc password changed</statusmsg>
<vncpassword></vncpassword>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
VNC Info
Action ................ : vserver-vnc
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<type>kvm|hvm</type>
<vncip>ip of host</vncip>
<vncport>vncport</vncport>
<vncpassword>vnc password</vncpassword>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Serial Console Info
Action ................ : vserver-console
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<type>openvz|xen</type>
<consoleip>ip of host</consoleip>
<consoleport>port of host</consoleport>
<consolepassword>console password</consolepassword>
<consoleusername>console username</consoleusername>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Disable TUN/TAP
Action ................ : vserver-tun-disable
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>Disabled</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Mount ISO
Action ................ : vserver-mountiso
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
iso [filename of iso]
Success Returns ....... : <status>success</status>
<statusmsg>ISO mounted</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Unmount ISO
Action ................ : vserver-unmountiso
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
Success Returns ....... : <status>success</status>
<statusmsg>ISO unmounted</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Enable/Disable PAE
Action ................ : vserver-pae
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
pae [on|off]
Success Returns ....... : <status>success</status>
<statusmsg>Enabled|Disabled</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Change Boot Order
Action ................ : vserver-bootorder
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
bootorder [cd(Hard Disk CDROM)|dc{CDROM Hard Disk)|c(Hard Disk)|d{CDROM)]
Success Returns ....... : <status>success</status>
<statusmsg>Boot order changed</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Terminate Virtual Server
Action ................ : vserver-terminate
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
deleteclient [true|false]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server terminated</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Rebuild Virtual Server
Action ................ : vserver-rebuild
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
template [template filename without extension]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server rebuilt</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Change Virtual Server Plan
Action ................ : vserver-change
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
plan [new plan name]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server updated</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Change Virtual Server Root Password
Action ................ : vserver-rootpassword
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
rootpassword [new root password]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server root password changed</statusmsg>
<rootpassword>rootpassword</rootpassword>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Change Virtual Server Hostname
Action ................ : vserver-hostname
Method ................ : GET or POST
Variables ............. : vserverid [virtual server id]
hostname [new hostname]
Success Returns ....... : <status>success</status>
<statusmsg>Virtual server hostname changed</statusmsg>
<hostname>hostname</hostname>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Nodes by Name
Action ................ : listnodes
Method ................ : GET or POST
Variables ............. : type [openvz|xen|xen hvm|kvm]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<nodes>node1,node2,node3,node4</nodes>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Nodes by ID
Action ................ : node-idlist
Method ................ : GET or POST
Variables ............. : type [openvz|xen|xen hvm|kvm]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<nodes>nodeid,nodeid,nodeid,nodeid</nodes>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Node Groups
Action ................ : listnodegroups
Method ................ : GET or POST
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<nodegroups>0|--none--,1|nodegroup1,2|nodegroup2,3|nodegroup3</nodegroups>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Clients
Action ................ : client-list
Method ................ : GET or POST
Please note, successful data will be returned in XML format.
Success Returns ....... : <clients>
<client>
<id>1</id>
<username>philltest</username>
<email>support@soluslabs.com</email>
<firstname>Phill</firstname>
<lastname>B</lastname>
<company>Soluslabs Ltd</company>
<level>Client</level>
<status>Active</status>
<created>2009-01-01</created>
<lastlogin>2010-04-23</lastlogin>
</client>
......
</clients>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Plans
Action ................ : listplans
Method ................ : GET or POST
Variables ............. : type [openvz|xen|xen hvm]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<plans>plan1,plan2,plan3,plan4</plans>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Templates
Action ................ : listtemplates
Method ................ : GET or POST
Variables ............. : type [openvz|xen|xen hvm]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<templates>template1,template2,template3</templates>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List ISO
Action ................ : listiso
Method ................ : GET or POST
Variables ............. : type [xen hvm|kvm]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<iso>iso1,iso2,iso3</iso>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List All IP Addresses for a Node
Action ................ : node-iplist
Method ................ : GET or POST
Variables ............. : nodeid [ID of node]
Success Returns ....... : <status>success</status>
<statusmsg>Available ip addresses</statusmsg> / <statusmsg>No available ip addresses</statusmsg>
<ipcount>numbers of ip's</ipcount>
<ips>123.123.123.123,124.124.124.124,125.125.125.125</ips>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
List Virtual Servers
Action ................ : node-virtualservers
Method ................ : GET or POST
Variables ............. : nodeid [node id]
Success Returns ....... : <virtualservers>
<virtualserver>
<vserverid>[vserverid]</vserverid>
<ctid-xid>[ctid or xen id]</ctid-xid>
<clientid>[clientid]</clientid>
<ipaddress>[main ipaddress]</ipaddress>
<hostname>[hostname]</hostname>
<template>[template]</template>
<hdd>[diskspace]</hdd>
<memory>[memory]</memory>
<swap-burst>[swp or burst memory]</swap-burst>
<type>[openvz/xen/xenhvm]</type>
<mac>[mac address]</mac>
</virtualserver>
</virtualservers>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Virtual Server Information
Action ................ : vserver-info
Method ................ : GET or POST
Variables ............. : vserverid [vserver id]
reboot [true/false] (only required for Xen PV] if not specified default is false
Success Returns ....... : <vserverid>[vserverid]</vserverid>
<ctid-xid>[ctid or xen id]</ctid-xid>
<clientid>[clientid]</clientid>
<ipaddress>[main ipaddress]</ipaddress>
<hostname>[hostname]</hostname>
<template>[template]</template>
<hdd>[diskspace]</hdd>
<memory>[memory]</memory>
<swap-burst>[swp or burst memory]</swap-burst>
<type>[openvz/xen/xenhvm]</type>
<mac>[mac address]</mac>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Virtual Server State
Action ................ : vserver-infoall
Method ................ : GET or POST
Variables ............. : vserverid [vserver id]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<state>online|offline|disabled</state>
<ipaddresses>comma seperated list of ip's</ipaddresses>
<mainipaddress>main ipaddress</mainipaddress>
<type>openvz|xen|xenhvm|kvm</type>
<trafficgraph>path to graph</trafficgraph>
<loadgraph>path to graph</loadgraph>
<memorygraph>path to graph</memorygraph>
<node>name of node</node>
<hdd>total space, used space, free space, percent used space</hdd>
<bandwidth>total bandwidth, used bandwidth, free bandwidth, percent used bandwidth</bandwidth>
<memory>total memory used memory, free memory, percent used memory</memory
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Xen Node Resources
Action ................ : node-xenresources
Method ................ : GET or POST
Variables ............. : nodeid [node id]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<freememory>[Amount of free memory in bytes]</freememory>
<freehdd>[Amount of free hard diskspace in bytes]</freehdd>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Node Statistics
Action ................ : node-statistics
Method ................ : GET or POST
Variables ............. : nodeid [node id or name]
Success Returns ....... : <status>success</status>
<statusmsg></statusmsg>
<id>[node id]</id>
<name>[node name]</name>
<ip>[ipaddress]</ip>
<hostname>[hostname]</hostname>
<country>[country]</country>
<city>[city]</city>
<sshport>[sshport]</sshport>
<arch>[arch]</arch>
<freememory>[free memory]</freememory>
<freedisk>[free diskspace]</freedisk>
<virtualservers>[number of virtual servers]</virtualservers>
<freeips>[number of free ips]</freeips>
<allocatedmemory>[amount of memory allocated to virtual servers]</allocatedmemory>
<allocatedbandwidth>[amount of bandwidth allocated to virtual servers]</allocatedbandwidth>
<memorylimit>[the max memory of the node]</memorylimit>
<disklimit>[the max disk space of the node]</disklimit>
Failure Returns ....... : <status>error</status>
<statusmsg>error message</statusmsg>
Authenticate Client
Action ................ : client-authenticate
Method ................ : GET or POST
Variables ............. : username
password
Success Returns ....... : <status>success</status>
<statusmsg>validated</statusmsg>
Failure Returns ....... : <status>error</status>
<statusmsg>invalid username or password</statusmsg>
Connection Examples
Curl method using POST
<?php // Url to the admin API $url = "https://<MASTER IP>:5656/api/admin"; $postfields["id"] = "EXAMPLEIDKEY"; $postfields["key"] = "EXAMPLEIDPASSWORD"; $postfields["action"] = "reboot"; $postfields["vserverid"] = "100"; // Send the query to the solusvm master $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url . "/command.php"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 20); curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_HTTPHEADER, array("Expect:")); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields); $data = curl_exec($ch); curl_close($ch); // Parse the returned data and build an array preg_match_all('/<(.*?)>([^<]+)<\/\\1>/i', $data, $match); $result = array(); foreach ($match[1] as $x => $y) { $result[$y] = $match[2][$x]; } ?>

