Skip to content
VirtlixCP

Documentation / API

Servers

List Servers

GET /server{?parts.exact,available,inventory,is_pxe_ready,q,cpu,mem,disks,addons,cpu_billing,mem_billing,disks_billing,addons_billing,client,group,switch,ip_group_billing,billing_id,billing_integration}

Response 200: A list of Servers

Field Type Description
access object
access.client object
access.id integer VirtlixCP-specific unique identifier used for URLs, etc.
access.ipmi boolean Whether or not the Client has been granted IPMI access to the server
access.is_active boolean Whether or not the Client's access to the server has been suspended
access.pxe boolean Whether or not the Client has been granted OS Reload access to the server
access.switch boolean Whether or not the Client has been granted access to turn on/off the server's switch port
addons array
addons[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
addons[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
addons[].name string The name of the part, e.g. E3-1270
billing object
billing.date string
billing.id integer The ID of the server given to us by the billing program. Only unique to that API Integration.
billing.integration object
canEdit boolean
cpu object
cpu.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
cpu.id integer VirtlixCP-specific unique identifier used for URLs, etc.
cpu.name string The name of the part, e.g. E3-1270
disks array
disks[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
disks[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
disks[].name string The name of the part, e.g. E3-1270
entity object
entity.full_ip string
entity.id integer VirtlixCP-specific unique identifier used for URLs, etc.
entity.name string
group object
group.id integer VirtlixCP-specific unique identifier used for URLs, etc.
group.name string
hdd_counts array
hdd_counts[].key integer The number of the Disk type that are in the server
hdd_counts[].value string The name of the Disk type
id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi object
ipmi.admin object
ipmi.client object
ipmi.id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi.ip string
is_ipmi_ready boolean
is_pxe_ready boolean
mem object
mem.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
mem.id integer VirtlixCP-specific unique identifier used for URLs, etc.
mem.name string The name of the part, e.g. E3-1270
nickname string The hostname of the server.
notes object
notes.admin string
notes.client string
raid_soft_ready boolean
srv_id string Unique identifier typically labeled on the physical server.
status_desc string
switch object
switch.id integer VirtlixCP-specific unique identifier used for URLs, etc.
switch.name string
switch.port object
usage object
usage.id integer VirtlixCP-specific unique identifier used for URLs, etc.
usage.max integer Max Bandwidth in bits
usage.used integer Bandwidth used in bits

Response 400: Invalid input

Create Server

POST /server

Create a new Server

Request body

Field Type Required Description
access object
access.client object yes
access.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
access.ipmi boolean yes Whether or not the Client has been granted IPMI access to the server
access.is_active boolean yes Whether or not the Client's access to the server has been suspended
access.pxe boolean yes Whether or not the Client has been granted OS Reload access to the server
access.switch boolean yes Whether or not the Client has been granted access to turn on/off the server's switch port
addons array
addons[].billing_id string yes The billing ID of the part, which is what is used by billing programs like WHMCS.
addons[].id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
addons[].name string yes The name of the part, e.g. E3-1270
billing object
billing.date string yes
billing.id integer yes The ID of the server given to us by the billing program. Only unique to that API Integration.
billing.integration object yes
canEdit boolean
cpu object yes
cpu.billing_id string yes The billing ID of the part, which is what is used by billing programs like WHMCS.
cpu.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
cpu.name string yes The name of the part, e.g. E3-1270
disks array yes
disks[].billing_id string yes The billing ID of the part, which is what is used by billing programs like WHMCS.
disks[].id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
disks[].name string yes The name of the part, e.g. E3-1270
entity object
entity.full_ip string yes
entity.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
entity.name string yes
group object
group.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
group.name string yes
hdd_counts array
hdd_counts[].key integer yes The number of the Disk type that are in the server
hdd_counts[].value string yes The name of the Disk type
id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
ipmi object
ipmi.admin object yes
ipmi.client object yes
ipmi.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
ipmi.ip string yes
is_ipmi_ready boolean
is_pxe_ready boolean
mem object yes
mem.billing_id string yes The billing ID of the part, which is what is used by billing programs like WHMCS.
mem.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
mem.name string yes The name of the part, e.g. E3-1270
nickname string The hostname of the server.
notes object
notes.admin string
notes.client string
raid_soft_ready boolean
srv_id string Unique identifier typically labeled on the physical server.
status_desc string
switch object
switch.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
switch.name string yes
switch.port object yes
usage object
usage.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
usage.max integer yes Max Bandwidth in bits
usage.used integer yes Bandwidth used in bits

Response 200: A Server

Field Type Description
access object
access.client object
access.id integer VirtlixCP-specific unique identifier used for URLs, etc.
access.ipmi boolean Whether or not the Client has been granted IPMI access to the server
access.is_active boolean Whether or not the Client's access to the server has been suspended
access.pxe boolean Whether or not the Client has been granted OS Reload access to the server
access.switch boolean Whether or not the Client has been granted access to turn on/off the server's switch port
addons array
addons[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
addons[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
addons[].name string The name of the part, e.g. E3-1270
billing object
billing.date string
billing.id integer The ID of the server given to us by the billing program. Only unique to that API Integration.
billing.integration object
canEdit boolean
cpu object
cpu.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
cpu.id integer VirtlixCP-specific unique identifier used for URLs, etc.
cpu.name string The name of the part, e.g. E3-1270
disks array
disks[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
disks[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
disks[].name string The name of the part, e.g. E3-1270
entity object
entity.full_ip string
entity.id integer VirtlixCP-specific unique identifier used for URLs, etc.
entity.name string
group object
group.id integer VirtlixCP-specific unique identifier used for URLs, etc.
group.name string
hdd_counts array
hdd_counts[].key integer The number of the Disk type that are in the server
hdd_counts[].value string The name of the Disk type
id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi object
ipmi.admin object
ipmi.client object
ipmi.id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi.ip string
is_ipmi_ready boolean
is_pxe_ready boolean
mem object
mem.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
mem.id integer VirtlixCP-specific unique identifier used for URLs, etc.
mem.name string The name of the part, e.g. E3-1270
nickname string The hostname of the server.
notes object
notes.admin string
notes.client string
raid_soft_ready boolean
srv_id string Unique identifier typically labeled on the physical server.
status_desc string
switch object
switch.id integer VirtlixCP-specific unique identifier used for URLs, etc.
switch.name string
switch.port object
usage object
usage.id integer VirtlixCP-specific unique identifier used for URLs, etc.
usage.max integer Max Bandwidth in bits
usage.used integer Bandwidth used in bits

Request body

Field Type Required Description
access object
access.client object yes
access.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
access.ipmi boolean yes Whether or not the Client has been granted IPMI access to the server
access.is_active boolean yes Whether or not the Client's access to the server has been suspended
access.pxe boolean yes Whether or not the Client has been granted OS Reload access to the server
access.switch boolean yes Whether or not the Client has been granted access to turn on/off the server's switch port
addons array
addons[].billing_id string yes The billing ID of the part, which is what is used by billing programs like WHMCS.
addons[].id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
addons[].name string yes The name of the part, e.g. E3-1270
billing object
billing.date string yes
billing.id integer yes The ID of the server given to us by the billing program. Only unique to that API Integration.
billing.integration object yes
canEdit boolean
cpu object yes
cpu.billing_id string yes The billing ID of the part, which is what is used by billing programs like WHMCS.
cpu.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
cpu.name string yes The name of the part, e.g. E3-1270
disks array yes
disks[].billing_id string yes The billing ID of the part, which is what is used by billing programs like WHMCS.
disks[].id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
disks[].name string yes The name of the part, e.g. E3-1270
entity object
entity.full_ip string yes
entity.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
entity.name string yes
group object
group.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
group.name string yes
hdd_counts array
hdd_counts[].key integer yes The number of the Disk type that are in the server
hdd_counts[].value string yes The name of the Disk type
id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
ipmi object
ipmi.admin object yes
ipmi.client object yes
ipmi.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
ipmi.ip string yes
is_ipmi_ready boolean
is_pxe_ready boolean
mem object yes
mem.billing_id string yes The billing ID of the part, which is what is used by billing programs like WHMCS.
mem.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
mem.name string yes The name of the part, e.g. E3-1270
nickname string The hostname of the server.
notes object
notes.admin string
notes.client string
raid_soft_ready boolean
srv_id string Unique identifier typically labeled on the physical server.
status_desc string
switch object
switch.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
switch.name string yes
switch.port object yes
usage object
usage.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.
usage.max integer yes Max Bandwidth in bits
usage.used integer yes Bandwidth used in bits

Response 422: Unprocessable Entity

List Server Control Types

GET /server/control/type

A list of the types of server controls

Response 200: A list of the types of server controls

Field Type Description
id integer VirtlixCP-specific unique identifier used for URLs, etc.
name string
supports object
supports.admin_user boolean
supports.bmc_reset boolean
supports.boot_device boolean
supports.client_user boolean
supports.power_control boolean
supports.power_status boolean
supports.snmp boolean
supports.system_info boolean
supports.web_access boolean

View Server Control

GET /server/control/type/{type_id}

List the server controls for a type of server

Response 200: List the server controls for a type of server

Field Type Description
id integer VirtlixCP-specific unique identifier used for URLs, etc.
name string
supports object
supports.admin_user boolean
supports.bmc_reset boolean
supports.boot_device boolean
supports.client_user boolean
supports.power_control boolean
supports.power_status boolean
supports.snmp boolean
supports.system_info boolean
supports.web_access boolean

Provision Server

POST /server/provision

Provison a Server

Request body

Field Type Required Description
entities array yes An array of entity IDs
extra_ports_ip_group_id_to_billing_id object yes A mapping from IP Group ID to Billing ID which applies only to secondary server ports
extra_ports_ip_group_id_to_billing_id.some_ip_group_ID integer VirtlixCP-specific unique identifier used for URLs, etc.
ips_billing string yes IP Entity/IP Pool Billing ID
server object yes
server.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.

Response 200: A Server

Field Type Description
access object
access.client object
access.id integer VirtlixCP-specific unique identifier used for URLs, etc.
access.ipmi boolean Whether or not the Client has been granted IPMI access to the server
access.is_active boolean Whether or not the Client's access to the server has been suspended
access.pxe boolean Whether or not the Client has been granted OS Reload access to the server
access.switch boolean Whether or not the Client has been granted access to turn on/off the server's switch port
addons array
addons[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
addons[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
addons[].name string The name of the part, e.g. E3-1270
billing object
billing.date string
billing.id integer The ID of the server given to us by the billing program. Only unique to that API Integration.
billing.integration object
canEdit boolean
cpu object
cpu.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
cpu.id integer VirtlixCP-specific unique identifier used for URLs, etc.
cpu.name string The name of the part, e.g. E3-1270
disks array
disks[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
disks[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
disks[].name string The name of the part, e.g. E3-1270
entity object
entity.full_ip string
entity.id integer VirtlixCP-specific unique identifier used for URLs, etc.
entity.name string
group object
group.id integer VirtlixCP-specific unique identifier used for URLs, etc.
group.name string
hdd_counts array
hdd_counts[].key integer The number of the Disk type that are in the server
hdd_counts[].value string The name of the Disk type
id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi object
ipmi.admin object
ipmi.client object
ipmi.id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi.ip string
is_ipmi_ready boolean
is_pxe_ready boolean
mem object
mem.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
mem.id integer VirtlixCP-specific unique identifier used for URLs, etc.
mem.name string The name of the part, e.g. E3-1270
nickname string The hostname of the server.
notes object
notes.admin string
notes.client string
raid_soft_ready boolean
srv_id string Unique identifier typically labeled on the physical server.
status_desc string
switch object
switch.id integer VirtlixCP-specific unique identifier used for URLs, etc.
switch.name string
switch.port object
usage object
usage.id integer VirtlixCP-specific unique identifier used for URLs, etc.
usage.max integer Max Bandwidth in bits
usage.used integer Bandwidth used in bits

Request body

Field Type Required Description
entities array yes An array of entity IDs
extra_ports_ip_group_id_to_billing_id object yes A mapping from IP Group ID to Billing ID which applies only to secondary server ports
extra_ports_ip_group_id_to_billing_id.some_ip_group_ID integer VirtlixCP-specific unique identifier used for URLs, etc.
ips_billing string yes IP Entity/IP Pool Billing ID
server object yes
server.id integer yes VirtlixCP-specific unique identifier used for URLs, etc.

Response 422: Unprocessable Entity

View Server

GET /server/{server_id}

Response 200: A server

Field Type Description
access object
access.client object
access.id integer VirtlixCP-specific unique identifier used for URLs, etc.
access.ipmi boolean Whether or not the Client has been granted IPMI access to the server
access.is_active boolean Whether or not the Client's access to the server has been suspended
access.pxe boolean Whether or not the Client has been granted OS Reload access to the server
access.switch boolean Whether or not the Client has been granted access to turn on/off the server's switch port
addons array
addons[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
addons[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
addons[].name string The name of the part, e.g. E3-1270
billing object
billing.date string
billing.id integer The ID of the server given to us by the billing program. Only unique to that API Integration.
billing.integration object
canEdit boolean
cpu object
cpu.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
cpu.id integer VirtlixCP-specific unique identifier used for URLs, etc.
cpu.name string The name of the part, e.g. E3-1270
disks array
disks[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
disks[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
disks[].name string The name of the part, e.g. E3-1270
entity object
entity.full_ip string
entity.id integer VirtlixCP-specific unique identifier used for URLs, etc.
entity.name string
group object
group.id integer VirtlixCP-specific unique identifier used for URLs, etc.
group.name string
hdd_counts array
hdd_counts[].key integer The number of the Disk type that are in the server
hdd_counts[].value string The name of the Disk type
id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi object
ipmi.admin object
ipmi.client object
ipmi.id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi.ip string
is_ipmi_ready boolean
is_pxe_ready boolean
mem object
mem.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
mem.id integer VirtlixCP-specific unique identifier used for URLs, etc.
mem.name string The name of the part, e.g. E3-1270
nickname string The hostname of the server.
notes object
notes.admin string
notes.client string
raid_soft_ready boolean
srv_id string Unique identifier typically labeled on the physical server.
status_desc string
switch object
switch.id integer VirtlixCP-specific unique identifier used for URLs, etc.
switch.name string
switch.port object
usage object
usage.id integer VirtlixCP-specific unique identifier used for URLs, etc.
usage.max integer Max Bandwidth in bits
usage.used integer Bandwidth used in bits

Edit Server

PATCH /server/{server_id}

Use the same field names as the Model fields. Clients can only change the server nickname and client notes.

Response 200: A server

Field Type Description
access object
access.client object
access.id integer VirtlixCP-specific unique identifier used for URLs, etc.
access.ipmi boolean Whether or not the Client has been granted IPMI access to the server
access.is_active boolean Whether or not the Client's access to the server has been suspended
access.pxe boolean Whether or not the Client has been granted OS Reload access to the server
access.switch boolean Whether or not the Client has been granted access to turn on/off the server's switch port
addons array
addons[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
addons[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
addons[].name string The name of the part, e.g. E3-1270
billing object
billing.date string
billing.id integer The ID of the server given to us by the billing program. Only unique to that API Integration.
billing.integration object
canEdit boolean
cpu object
cpu.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
cpu.id integer VirtlixCP-specific unique identifier used for URLs, etc.
cpu.name string The name of the part, e.g. E3-1270
disks array
disks[].billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
disks[].id integer VirtlixCP-specific unique identifier used for URLs, etc.
disks[].name string The name of the part, e.g. E3-1270
entity object
entity.full_ip string
entity.id integer VirtlixCP-specific unique identifier used for URLs, etc.
entity.name string
group object
group.id integer VirtlixCP-specific unique identifier used for URLs, etc.
group.name string
hdd_counts array
hdd_counts[].key integer The number of the Disk type that are in the server
hdd_counts[].value string The name of the Disk type
id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi object
ipmi.admin object
ipmi.client object
ipmi.id integer VirtlixCP-specific unique identifier used for URLs, etc.
ipmi.ip string
is_ipmi_ready boolean
is_pxe_ready boolean
mem object
mem.billing_id string The billing ID of the part, which is what is used by billing programs like WHMCS.
mem.id integer VirtlixCP-specific unique identifier used for URLs, etc.
mem.name string The name of the part, e.g. E3-1270
nickname string The hostname of the server.
notes object
notes.admin string
notes.client string
raid_soft_ready boolean
srv_id string Unique identifier typically labeled on the physical server.
status_desc string
switch object
switch.id integer VirtlixCP-specific unique identifier used for URLs, etc.
switch.name string
switch.port object
usage object
usage.id integer VirtlixCP-specific unique identifier used for URLs, etc.
usage.max integer Max Bandwidth in bits
usage.used integer Bandwidth used in bits