HOSTKEY provides several basic services:

  • custom build servers - single and dual CPU servers built according to customer's specifications from the last generation hardware
  • standard configurations (instances): compute (VM), bare-metal, gpu bare-metals, and vGPU servers (VM with PCIe-passthrough GPU). Those configurations are stocked up and deployed automatically in 10-20 minutes. 
  • stock servers - bare metals from old generations, non-standard configurations, servers without remote control modules.
  • Ryzen/i9/i10 servers - high-speed single-CPU servers built around the latest Ryzen9 or i9/i10 CPUs, usually without a remote control.

You may order instant servers via this API. All payments for instant servers go from the billing's credit account. You should have the necessary funds on account to place an order.

Order instant servers actions:

presets.phplist Get a list of available instances for a region
os.phplist Get OS list for a specific instance
traffic_plans.phplist Get appropriate traffic plans for specific instance
eq.phporder_instance Order a specific instance

The following abbreviations can be used in the response in the name of the instances:

  • BM - this is bare-metal server;
  • VM - this is virtual instance (VM);
  • Compute - this instance belongs to compute group. Compute group is general use KVM-based virtual servers (VPS);
  • Gpu - this is GPU server;
  • Vgpu - this is vGPU server.


locations are currently RU, NL, and the US. Using this call you could check availability and retrieve a fresh list of available instances with all basic pricing. No access token is required.

HTTP Method - POST

ParameterRequiredType Value/defaultDescription
action    *        stringlist Main action - Get a list of available instances for a region
location     *        string               Instances location

curl -s "" -X POST \
--data "action=list" \
--data "location=" \

In order to place an order, we should retrieve the appropriate OS and post-install tasks list.


Basically, you could safely ignore all the tags with this request. The call will return only suitable OS for the specific instance. All Windows license prices are already calculated.

Please note, all prices are provided only to create proper UI - it will be calculated again in the backend during order.

HTTP Method - POST

ParameterRequiredType Value/defaultDescription
action    *        stringlist Main action - Get OS list for a specific instance
location     *        string               Instances location
instance_id     *        int          id specific instance

curl -s "" -X POST \
--data "action=list" \
--data "instance_id=" \


HTTP Method - POST

ParameterRequiredType Value/defaultDescription
action    *        stringlist Main action - Get appropriate traffic plans for specific instance
location     *        string               Instances location
instance_id     *        int          Id specific instance

curl -s "" -X POST \
--data "action=list" \
--data "location=" \
--data "instance=" \


HTTP Method - POST

ParameterRequiredType Value/defaultDescription
action    *        stringorder_instance Main action - Order a specific instance
token         *    string                         Your session token
deploy_period      *    string                         Monthly, quarterly, semi-annualy, annually. Discounts for server is 3, 6 and 12%, not including traffic plans and licenses
deploy_notify *  string                         Notify customer by email about successful deployment
pin     *    int                          Your security PIN
id *  int                          Server id is not known yet
os_id     *    int                          OS id from the os/list
root_pass  string                         Default root password
hostname           string                         Default hostname
ssh_key      string                         Public ssh key to root user
post_install_callback  string                         URL to call after successful deployment
post_install_script    string                         Сode to run after successful deployment
os_name   string                         OS name in readable format
own_os         string                         If set into 1, instance will be delivered without reinstall. Usefull if you would like interactively reinstall it later
jenkins_task  string                         Jenkins task id to run after deployment, -1 if you don't need it
traffic_plan  *   string                         Selected traffic plan ID
preset *    string                         Instance code to be deployed
location_name *  string                         NL/RU/US 

curl -s "" -X POST \
--data "action=order_instance" \
--data "token=" \
--data "deploy_period=" \
--data "deploy_notify=" \
--data "email=" \
--data "pin=" \
--data "id=-" \
--data "os_id=" \
--data "root_pass=" \
--data "hostname=" \
--data "ssh_key=" \
--data "post_install_callback=" \
--data "post_install_script=" \
--data "reinstall_key=" \
--data "os_name=" \
--data "imitate_deploy=" \
--data "imitate_error=" \
--data "own_os=0" \
--data "jenkins_task=" \
--data "traffic_plan=" \
--data "invoice_relid=" \
--data "preset=" \
--data "location_name=" \

After receiving the request, INVAPI will select/create an appropriate server in a specific location and proceed with its deployment. Before any install, it will check funds availability on a credit account. If install will be successful, a new server will be linked to the customer's account. Customer will be notified by email if requested. All paid licenses will be added as order addons.

This action has an asynchronous response

This action has asynchronous response

After "result" OK you could start using this server. If there will be any failure, you will be notified. Please note what deployment could take up to 20 minutes, usually 5-10 minutes.