Ga naar inhoud

eq.php

Equipment Management Module (eq.php): API for server deployment, power management, IPMI, backups, searching, and retrieving detailed hardware configuration information.

API Methods

Method Action Description
abort_reinstall abort_reinstall Stops the server reinstallation process, removes associated tags (reinstall_start, autodeploy_start, etc.) and restores VLAN settings.
add_ipmi_admin add_ipmi_admin Creates a user with administrator privileges for IPMI management. If the user already exists, returns their data.
add_ipmi_user add_ipmi_user Creates a new IPMI administrator for the server. If the user already exists, returns existing user data.
announceip announceip Requests IP address or subnet announcement for the server. Supports ASN restriction checks and sub-account permission verification.
backup_get_schedule backup_get_schedule Returns a list of scheduled backup tasks for the specified server.
backup_list backup_list Returns a list of available backups for the specified equipment (server).
backup_save_schedule backup_save_schedule Saves the configured backup schedule for the specified server.
boot_dev boot_dev Request to boot the server from a specific media (PXE or disk) depending on the selected mode.
check_backup_lock check_backup_lock Checks for an active lock on backup operations for the specified equipment.
clear_pxe clear_pxe Clears the current PXE configuration for the specified host. If the hostname parameter is not provided, the server ID is used.
create_backup create_backup Initiates the backup creation process for the specified server. The operation is performed asynchronously.
create_pxe create_pxe Initiates the PXE configuration preparation process for OS reinstallation on the server. Supports OS selection, SSH key configuration, and post-install scripts.
delete_backup delete_backup Deletes the specified server backup. Requires access permissions to the server.
deploy deploy Starts the deployment process of an existing or new server by ID or preset. Supports various deployment modes, including OpenStack and Bare Metal.
get_ipmi get_ipmi Returns a list of available IPMI interfaces for the server, including IP address and vendor model.
get_traffic get_traffic Returns IPv4 traffic usage data for the specified server.
getserversforannounce getserversforannounce Returns a list of available servers (Server) in rent or power_off status that have passed the IP announcement limit check.
groups groups Returns the list of groups for a specific server.
hard_off hard_off Sends a request for a forced (hard) shutdown of the server via IPMI/BMC.
history history Returns the server event history.
list list Returns a list of available equipment with filtering by various parameters (group, location, status, IP, email, etc.).
off off Shuts down the server.
on on Powers on the server.
order_instance order_instance Starts the deployment process of a new instance by preset or performs a reinstallation (reinstall) of an existing server with OS and additional software selection.
reboot reboot Sends a request to reboot the specified equipment via IPMI or system tools.
reinstall reinstall Starts the server reinstallation preparation process, creates an operation key, and notifies the client.
remove_ipmi_user remove_ipmi_user Deletes extra IPMI user accounts for the specified server.
request_backup_link request_backup_link Requests a temporary link to download a server backup. The operation is asynchronous and returns a callback to track status.
restore_backup restore_backup Starts the process of restoring the server from an existing backup. The method is asynchronous and returns a task tracking key.
search search Returns a list of available servers and equipment based on various filtering criteria (group, location, status, IP, MAC, type, etc.).
sensors sensors Returns sensor status data for the specified server.
show show Returns detailed information about the server, including hardware configuration, operating system, IP addresses, and interfaces.
status status Returns the current equipment status (power_off, rent, etc.) and related server data.
suspend suspend Requests suspension or unsuspension of a VPS/server. If the action is suspend, the server will be locked.
unified_server_search unified_server_search Unified search for servers by query.
unit_reset unit_reset Requests an IPMI controller reset for the specified server. If the operation is asynchronous, a callback is returned.
unsuspend unsuspend Request to unsuspend a server. If the server was locked by an administrator, this action initiates the unlocking process.
update_servers update_servers Updates the user's active server list, synchronizing data with WHMCS and considering payment status (prebill). Returns current server IDs, deploy keys, and debt information.

eq/abort_reinstall

Stops the server reinstallation process, removes associated tags (reinstall_start, autodeploy_start, etc.) and restores VLAN settings.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: abort_reinstall
token string Authorization token
id integer Server ID

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=abort_reinstall" \
--data "token=HOSTKEY_TOKEN" \
--data "id=123"
Example of a successful response
{
"result": "OK",
"action": "abort_reinstall",
"id": 123
}
Failure response

``` { "code": -1, "message": "\(module/\)action: invalid server id" }

```

eq/add_ipmi_admin

Creates a user with administrator privileges for IPMI management. If the user already exists, returns their data.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: add_ipmi_admin
token string Authorization token
id integer Equipment ID
admin_user string Administrator name (if not specified, generated automatically)
admin_pass string Administrator password (if not specified, generated automatically)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=add_ipmi_admin" \
--data "token=HOSTKEY_TOKEN" \
--data "id=12345" \
--data "admin_user=my_admin" \
--data "admin_pass=MySecretPass!"
Example of a successful response
{
"result": "OK",
"action": "add_ipmi_admin",
"user": "uabcde",
"password": "SecurePassword123!"
}
Failure response

``` { "code": -1, "message": "Add IPMI user request failed" }

```

eq/add_ipmi_user

Creates a new IPMI administrator for the server. If the user already exists, returns existing user data.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: add_ipmi_user
token string Authorization token
id integer Server ID
admin_user string Administrator name (for admin access)
admin_pass string Administrator password

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=add_ipmi_user" \
--data "token=HOSTKEY_TOKEN" \
--data "id=12345" \
--data "admin_user=my_admin" \
--data "admin_pass=secret_password"
Example of a successful response
{
"result": "OK",
"action": "add_ipmi_user",
"callback": "example_callback_key"
}
Failure response

``` { "code": -1, "message": "Add IPMI user request failed" }

```

eq/announceip

Requests IP address or subnet announcement for the server. Supports ASN restriction checks and sub-account permission verification.

HTTP-method: POST|GET

Parameters:

Parameter Required Type Description
action string Method identifier: announceip
token string API authentication token
id integer Server ID
subnet string Subnet for announcement
server string Server name
subnetaddr string Address in subnet
subnetaddrmask string Subnet address mask
asn string|boolean ASN (can specify 'own')
ownasn string|boolean Use own ASN
annonce string|boolean Announcement flag
return string|boolean Return result
route string|boolean Route
cmnt string Comment
checkboxes boolean Terms confirmation (ASRegistered, RKPIValid, SubNetNotSpamhaus, DataIsCorrect)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=announceip" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE" \
--data "checkboxes=VALUE"
Example of a successful response
{
"result": "OK",
"action": "announceip"
}
Failure response

``` { "code": -2, "message": "Authentication required" }

```

eq/backup_get_schedule

Returns a list of scheduled backup tasks for the specified server.

HTTP-method: GET

Parameters:

Parameter Required Type Description
action string Method identifier: backup_get_schedule
token string Authorization token
id int Equipment ID (server)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X GET \
--data "action=backup_get_schedule" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "backup_get_schedule",
"days": [0, 0, 0, 0, 0, 0, 0],
"time": "",
"timezone": ""
}
Failure response

``` { "code": -2, "message": "EQ: action required" }

```

eq/backup_list

Returns a list of available backups for the specified equipment (server).

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: backup_list
token string Authentication token
id integer Server ID

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=backup_list" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"module": "eq",
"action": "backup_list",
"data": [
{
"bucket_name": "example-bucket",
"files": []
}
]
}
Failure response

``` { "code": -1, "message": "EQ/backup_list: invalid server id" }

```

eq/backup_save_schedule

Saves the configured backup schedule for the specified server.

HTTP-method: POST|GET

Parameters:

Parameter Required Type Description
action string Method identifier: backup_save_schedule
token string Authorization token
id integer Equipment ID (server)
backup_schedule array Array with backup schedule settings (days, time, timezone)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=backup_save_schedule" \
--data "token=HOSTKEY_TOKEN" \
--data "id=123" \
--data "backup_schedule[0][days]=mon,wed,fri" \
--data "backup_schedule[0][time]=03:00" \
--data "backup_schedule[0][timezone]=UTC"
Example of a successful response
{
"result": "OK",
"module": "eq",
"action": "backup_save_schedule"
}
Failure response

``` { "code": -1, "message": "Request execution error" }

```

eq/boot_dev

Request to boot the server from a specific media (PXE or disk) depending on the selected mode.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: boot_dev
token string Authorization token
id int Server ID
media string Media type (e.g., iso)
boot_mode string Boot mode (auto, uefi or legacy). If auto, it is determined automatically based on hardware configuration.

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=boot_dev" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE" \
--data "media=VALUE"
Example of a successful response
{
"result": "OK",
"action": "boot_dev",
"callback": "string"
}
Failure response

``` { "code": -1, "message": "Bootable media change request failed" }

```

eq/check_backup_lock

Checks for an active lock on backup operations for the specified equipment.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: check_backup_lock
id integer Server/equipment ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=check_backup_lock" \
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "check_backup_lock",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "EQ/check_backup_lock: invalid server id" }

```

eq/check_pin

Checks the PIN code for operations.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: check_pin
token string Authorization token
pin string PIN code for verification

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=check_pin" \
--data "token=HOSTKEY_TOKEN" \
--data "pin=VALUE"
Example of a successful response
{
"result": "OK",
"action": "check_pin",
"callback": "pin_disabled"
}
Failure response
{
"code": -1,
"message": "PIN validation failed"
}

eq/clear_pxe

Clears the current PXE configuration for the specified host. If the hostname parameter is not provided, the server ID is used.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: clear_pxe
token string Authorization token
id integer Equipment ID
hostname string Host name for configuration clearing

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=clear_pxe" \
--data "token=HOSTKEY_TOKEN"
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "clear_pxe",
"callback": "string"
}
Failure response

``` { "code": -1, "message": "Failed to submit clear PXE config request" }

```

eq/console

Requests the launch of the server management console via IPMI/NoVNC.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: console
token string Authorization token
id integer Server ID

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=console" \
--data "id=12345"
Example of a successful response
{
"result": "OK",
"action": "console",
"callback": "string"
}
Failure response

``` { "code": -1, "message": "Console request failed" }

```

eq/create_backup

Initiates the backup creation process for the specified server. The operation is performed asynchronously.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: create_backup
token string Authorization token
id integer Server ID

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=create_backup" \
--data "token=HOSTKEY_TOKEN"
--data "id=12345"
Example of a successful response
{
"result": "OK",
"module": "eq",
"action": "create_backup",
"callback": "uuid-string",
"traceKey": "uuid-string"
}
Failure response

``` { "code": -1, "message": "Operation execution error" }

```

eq/create_pxe

Initiates the PXE configuration preparation process for OS reinstallation on the server. Supports OS selection, SSH key configuration, and post-install scripts.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: create_pxe
token string Authorization token
id int Server ID
root_pass string Root password
os_id int Operating system ID
hostname string Host name
ssh_key string SSH public key
post_install_script string Post-installation script
post_install_callback string URL for callback notification
os_name string Operating system alias
disk_mirror int Disk mirroring (0 or 1)
activate_windows int Windows activation (0/1)
uefi int UEFI boot mode (0/-1/1)
root_size int Root partition size in GB
custom_domain string Custom domain
ignore_duplicated_install int Ignore duplicate installations (-1 or value)
deploy_ticket string Deploy ticket ID (for admins)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=create_pxe" \
--data "token=HOSTKEY_TOKEN" \
--data "id=VALUE" \
--data "root_pass=VALUE" \
--data "os_id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "create_pxe",
"callback": "string"
}
Failure response

``` { "code": -1, "message": "Create PXE config request failed: error_details" }

```

eq/delete_backup

Deletes the specified server backup. Requires access permissions to the server.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: delete_backup
token string Authorization token
id integer Equipment ID (server)
name string Backup name to delete

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=delete_backup" \
--data "token=HOSTKEY_TOKEN" \
--data "id=123" \
--data "name=backup_name"
Example of a successful response
{
"result": "OK",
"module": "eq",
"action": "delete_backup",
"callback": "string"
}
Failure response

``` { "code": -1, "message": "Error during backup deletion" }

```

eq/deploy

Starts the deployment process of an existing or new server by ID or preset. Supports various deployment modes, including OpenStack and Bare Metal.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: deploy
token string Authorization token
id integer Server ID for deployment
preset string Preset name for deployment
location integer Location ID (datacenter)
hostname string Host name for the server
root_pass string Root password
os_id integer Operating system ID
ssh_key string SSH key
post_install_script string Post-installation script
post_install_callback string URL for callback notification
deploy_data string Billing data (invoice ID or email)
deploy_options string Deployment options (e.g., WHMCS location)
deploy_period string Payment period (hourly, quarterly, semi-annually, annually)
deploy_price integer Deployment price
deploy_notify integer Notify upon completion (0/1)
deploy_comment string Deployment comment
imitate_error integer Error simulation
imitate_deploy integer Dry run mode (dry run)
own_os integer Use own OS (0/1)
activate_windows integer Windows activation (0/1)
activation_code string OS activation code
uefi integer UEFI boot mode (0/1)
attendedInstall integer Automated installation (0/1)
jenkins_task integer Jenkins task ID
jenkins_tests integer Number of Jenkins tests
traffic_plan integer Traffic plan ID
disk_mirror string Disk mirroring (0/1)
custom_domain string Custom domain
ipv4_amount integer Number of IPv4 addresses
no_lvm integer Disable LVM (0/1)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=deploy" \
--data "token=YOUR_TOKEN" \
--data "root_pass=YourStrongPassword123!" \
--data "deploy_data=INV-12345" \
--data "deploy_options=location:DC1"
Example of a successful response
{
"result": "OK",
"action": "deploy",
"callback": "string",
"ticket": "string"
}
Failure response

``` { "code": -1, "message": "Deploy init for server $id failed: error message" }

```

eq/get_ipmi

Returns a list of available IPMI interfaces for the server, including IP address and vendor model.

HTTP-method: POST|GET

Parameters:

Parameter Required Type Description
action string Method identifier: get_ipmi
id integer Server ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=get_ipmi" \
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"ipmi": [
{
"IP": "192.168.1.100",
"MAC": "00:1A:4C:00:11:22",
"vendor": "Supermicro"
}
]
}
Failure response

``` { "code": -1, "message": "No IPMI interfaces found" }

```

eq/get_traffic

Returns IPv4 traffic usage data for the specified server.

HTTP-method: GET

Parameters:

Parameter Required Type Description
action string Method identifier: get_traffic
token string Authentication token
id integer Server ID

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X GET \
--data "action=get_traffic" \
--data "token=HOSTKEY_TOKEN"
--data "id=123"
Example of a successful response
{
"result": "OK",
"module": "eq",
"action": "get_traffic",
"id": 123,
"traffic": [
{
"ip": "1.2.3.4",
"volume": 50.5,
"updated": "2023-10-01",
"billed": 1,
"direction": "out"
}
]
}
Failure response

``` { "code": -1, "message": "EQ/get_traffic: invalid server id" }

```

eq/get_upgrade_key

Returns an upgrade key linked to a specific invoice via equipment tags.

HTTP-method: POST|GET

Parameters:

Parameter Required Type Description
action string Method identifier: get_upgrade_key
invoice_id int Invoice ID to find the upgrade key
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=get_upgrade_key" \
--data "invoice_id=VALUE"
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"action": "get_upgrade_key",
"key": ""
}
Failure response

``` { "code": -1, "message": "Request error or key not found" }

```

eq/getserversforannounce

Returns a list of available servers (Server) in rent or power_off status that have passed the IP announcement limit check.

HTTP-method: POST|GET

Parameters:

Parameter Required Type Description
action string Method identifier: getserversforannounce
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=getserversforannounce" \
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"module": "eq",
"action": "getserversforannounce",
"servers": [
{
"id": 123,
"location": "NL",
"mask_23": "255.255.255.224",
"mask_24": "255.255.255.0"
}
]
}
Failure response

``` { "code": -2, "message": "Authentication required" }

```

eq/groups

Returns the list of groups for a specific server.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: groups
token string Authorization token
id int Equipment ID

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=groups" \
--data "token=HOSTKEY_TOKEN"
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"groups": []
}
Failure response

``` { "code": -1, "message": "EQ/groups: invalid server id" }

```

eq/hard_off

Sends a request for a forced (hard) shutdown of the server via IPMI/BMC.

HTTP-method: POST

Parameters:

Parameter Required Type Description
token string Authorization token
id integer Server ID

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "token=HOSTKEY_TOKEN"
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "hard_off",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "Stop request failed" }

```

eq/history

Returns the server event history.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: history
id int Server ID
token string Authorization token
type array<string> Filter by event types
date_from string Start date (YYYY-MM-DD)
date_to string End date (YYYY-MM-DD)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=history" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN" \
--data "type[]=ACTION" \
--data "type[]=ERROR" \
--data "date_from=2023-10-01" \
--data "date_to=2023-10-31"
Example of a successful response
{
"result": "OK",
"module": "eq",
"action": "history",
"id": 12345,
"history": [
{
"id": 1,
"date": "2023-10-01 12:00:00",
"message": "Server rebooted",
"type": "ACTION"
}
]
}
Failure response
{
"code": 400,
"message": "Invalid server id"
}

eq/list

Returns a list of available equipment with filtering by various parameters (group, location, status, IP, email, etc.).

HTTP-method: GET

Parameters:

Parameter Required Type Description
action string Method identifier: list
token string Authorization token
group array Filter by groups (e.g., 1CPU, 2CPU)
dc string Datacenter ID
location array Filter by locations (e.g., EU-Central, US-East)
rack string Filter by rack_id
status array Filter by statuses (rented, power_off, etc.)
owner string Filter by owner (Hostkey, colo)
component array Filter by equipment component ID
type string Equipment type (server, switch, etc.)
ip array Filter by IP address
mac string Filter by MAC address
account_id array Filter by billing account ID
billing array Billing region (en/ru)
email array Filter by client email
name_client string Filter by client name
full boolean Return full data (for administrators)
kvm string Filter by KVM
serialNumber string Filter by serial number
id array Filter by server IDs

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X GET \
--data "action=list" \
--data "group[]=1CPU" \
--data "group[]=2CPU" \
--data "location[]=EU-Central" \
--data "location[]=US-East" \
--data "status[]=rent" \
--data "ip[]=192.168.1.1" \
--data "account_id[]=100" \
--data "billing[]=en" \
--data "email[][email protected]" \
--data "id[]=123" \
--data "id[]=456"
Example of a successful response
{
"result": "OK",
"servers": [
{
"id": 123,
"status": "rent",
"hostname": "server-01.hostkey.com",
"ip": [],
"is_prebill": true,
"mounted_iso": "",
"project_ids": []
}
]
}
Failure response

``` { "code": -2, "message": "EQ: action required" }

```

eq/off

Shuts down the server.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: off
id int Server ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=off" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"action": "off",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response
{
"code": -1,
"message": "EQ/off: invalid server id"
}

eq/on

Powers on the server.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: on
id int Server ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=on" \
--data "id=VALUE"
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"action": "on",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response
{
"code": -1,
"message": "EQ/on: invalid server id"
}

eq/order_instance

Starts the deployment process of a new instance by preset or performs a reinstallation (reinstall) of an existing server with OS and additional software selection.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: order_instance
token string Authorization token
id integer Existing server ID (for reinstallation)
preset string Preset ID or name for new instance order
root_pass string Root password (must not contain @ or #)
os_template string OS template for deployment from a template
soft_id integer Additional software ID
ssh_key string SSH public key
post_install_script string Post-installation script
post_install_callback string URL for callback notification
hostname string Host name
reinstall_key string Reinstallation key
email string User email
deploy_data string Deployment data (e.g., email or invoice ID)
deploy_options string Deployment options (WHMCS location)
deploy_period string Payment period (hourly, quarterly, semi-annually, annually)
deploy_notify integer Notify upon deployment (0/1)
os_name string OS name (alias)
deploy_ticket string Kayako ticket ID to link to deployment
imitate_error integer Error simulation (0/1)
imitate_deploy integer Dry run mode (0/1)
own_os integer Use own OS (0/1)
jenkins_task integer Jenkins task ID
jenkins_tests integer Number of tests (default -1)
traffic_plan integer Traffic plan ID
disk_mirror string Disk mirroring (0/1)
deploy_comment string Deployment comment
soft_name string Software name
uefi integer UEFI mode (0/1)
private_ip string Private IP address
root_size integer Root partition size (GB)
private_vlan string Private VLAN ID
no_lvm integer Without LVM (0/1)
ipv4_amount integer Number of IPv4 addresses
prebill integer Prebill mode (0/1)
custom_domain string Custom domain

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=order_instance" \
--data "token=HOSTKEY_TOKEN" \
--data "root_pass=YourStrongPass123!" \
--data "preset=standard_ubuntu"
Example of a successful response
{
"result": "OK",
"action": "order_instance",
"callback": "7bc29eb23fb1b879b21fce509597f07c",
"deploy_status": "install",
"id": 123,
"os_name": "Ubuntu 22.04 LTS",
"soft_name": "Plesk Obsidian"
}
Failure response

``` { "code": -3, "message": "eq_reinstall_overdue" }

```

eq/ovirt_novnc

Requests the launch of a NoVNC console for a server running on an oVirt hypervisor. Returns a callback key to manage the session.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: ovirt_novnc
id integer Server ID
token string Authorization token
white_ip string Public IP for console access

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=ovirt_novnc" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"action": "ovirt_novnc",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "oVirt noVNC console request failed" }

```

eq/reboot

Sends a request to reboot the specified equipment via IPMI or system tools.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Action name (reboot)
token string Authorization token
id integer Equipment ID

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=reboot" \
--data "token=YOUR_TOKEN"
--data "id=123"
Example of a successful response
{
"result": "OK",
"action": "reboot",
"callback": "string"
}
Failure response

``` { "code": -1, "message": "Reboot request failed" }

```

eq/reinstall

Starts the server reinstallation preparation process, creates an operation key, and notifies the client.

HTTP-method: POST

Parameters:

Parameter Required Type Description
token string Authorization token
id int Server ID for reinstallation

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "token=HOSTKEY_TOKEN"
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "reinstall",
"stage": "create_pxe",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "EQ/reinstall: invalid server id" }

```

eq/remove_ipmi_user

Deletes extra IPMI user accounts for the specified server.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: remove_ipmi_user
id integer Server ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=remove_ipmi_user" \
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "remove_ipmi_user",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "action: error message" }

```

Requests a temporary link to download a server backup. The operation is asynchronous and returns a callback to track status.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: request_backup_link
token string Authorization token
id integer Server ID
name string Backup name for link request

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=request_backup_link" \
--data "token=HOSTKEY_TOKEN"
--data "id=VALUE"
--data "name=VALUE"
Example of a successful response
{
"result": "OK",
"action": "request_backup_link",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "Request failed: error_details" }

```

eq/restore_backup

Starts the process of restoring a server from an existing backup. The method is asynchronous and returns a task tracking key.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: restore_backup
id int Server ID
name string Backup name for restoration

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=restore_backup" \
--data "id=VALUE"
--data "name=VALUE"
Example of a successful response
{
"result": "OK",
"action": "restore_backup",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "Request failed: error_details" }

```

eq/search

Returns a list of available servers and equipment based on various filtering criteria (group, location, status, IP, MAC, type, etc.).

HTTP-method: POST|GET

Parameters:

Parameter Required Type Description
group array<string> Equipment groups (comma-separated)
dc array<int> Datacenter ID
location array<string> Location code (EU-Central, US-East, etc.)
rack array<int> Rack ID
status array<string> Equipment status (rented, prepare_full, etc.)
owner array<string> Owner (Hostkey, colo)
component array<int> Hardware component ID
type array<string> Equipment type (server, switch)
ip array<string> Search by IP address
mac array<string> Search by MAC address
account_id array<int> Billing account ID
billing array<string> Billing region (en/ru)
email array<string> Search by client email
id array<int> Equipment ID
serialNumber string Serial number
token string API authentication token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=search" \
--data "token=HOSTKEY_TOKEN" \
--data "location[]=EU-Central" \
--data "location[]=US-East" \
--data "status[]=sale" \
--data "type[]=server"
Example of a successful response
{
"result": "OK",
"servers": [
{
"id": 123,
"status": "sale",
"location": "NL",
"hostname": "srv-01.hostkey.com",
"ip": [
"192.168.1.1"
],
"is_prebill": false,
"mounted_iso": "",
"project_ids": []
}
]
}
Failure response

``` { "code": -2, "message": "EQ: action required" }

```

eq/sensors

Returns sensor status data for the specified server.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: sensors
id int Equipment ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=sensors" \
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "sensors",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "EQ/sensors: invalid server id" }

```

eq/set_pin

Sets a PIN code for operations.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: set_pin
token string Authorization token
new_pin string New PIN code (4-10 characters)
old_pin string Old PIN code
no_pin_req string Skip PIN check flag (true/false)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=set_pin" \
--data "token=HOSTKEY_TOKEN"
--data "new_pin=VALUE"
Example of a successful response
{
"result": "OK",
"action": "set_pin",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response
{
"code": -1,
"message": "invalid PIN length"
}

eq/show

Returns detailed information about the server, including hardware configuration, operating system, IP addresses, and interfaces.

HTTP-method: POST|GET

Parameters:

Parameter Required Type Description
id int Server ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "id=123" \
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"server_data": {
"id": 123,
"status": "rent",
"type": "Server",
"hostname": "srv-01.hostkey.com",
"owner": "[email protected]",
"Condition_Component": "rent",
"ip": [
{
"IP": "192.168.1.1",
"type": "IPv4"
}
],
"os": {
"id": 5,
"name": "Ubuntu 22.04 LTS"
},
"location": {
"dc_location": 1,
"rack_id": 10,
"rack_position": 5,
"rack_name": "Rack-A",
"dc_name": "Amsterdam"
}
},
"hardware": {
"cpu": "Intel Xeon E5-2680",
"ram": 64,
"hdd": 1000
},
"groups": [
{
"tag": "group_name",
"value": "premium"
}
],
"licenses": [],
"reinstall": "",
"IP": [],
"interfaces": [],
"IPMI": {
"model": "none",
"interfaces": []
},
"tags": [
{
"tag": "server_name",
"value": "my-server"
}
],
"preset": "",
"commitment": ""
}
Failure response

``` { "code": -1, "message": "Nothing found for 123" }

```

eq/status

Returns the current equipment status (power_off, rent, etc.) and related server data.

HTTP-method: POST|GET

Parameters:

Parameter Required Type Description
action string Method identifier: status
id int Equipment ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=status" \
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "status",
"callback": "string"
}
Failure response

``` { "code": -1, "message": "EQ/status: invalid server id" }

```

eq/status_check

Returns the current state and status of equipment (availability, stock availability, etc.).

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: status_check
token string Authorization token (example: abc123def456)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=status_check" \
--data "token=abc123def456"
Example of a successful response
{
"result": "OK",
"action": "status_check",
"data": [
"User @admin changed [Hostkey POWER_OFF VPS US] 's status `POWER_OFF` -> `RESERVE` for [ticket-123](https://...) 5 days ago: manual change"
]
}
Failure response

``` { "code": -2, "message": "Authentication required" }

```

eq/suspend

Requests suspension or unsuspension of a VPS/server. If the action is suspend, the server will be locked.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: suspend
id int Server ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=suspend" \
--data "id=VALUE"
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"action": "suspend",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "Suspend request failed" }

```

eq/traffic_add

Increases the outbound traffic limit for the server and creates a corresponding invoice in WHMCS. If the server already has an active unpaid traffic invoice, the old one will be canceled.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: traffic_add
id int Server ID
new_limit int New traffic limit in TB
token string API authentication token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=traffic_add" \
--data "id=VALUE"
--data "new_limit=VALUE"
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"action": "traffic_add",
"invoice": 12345,
"status": "Unpaid"
}
Failure response

``` { "code": -1, "message": "EQ/traffic_add: invalid new_limit" }

```

Unified search for servers by query.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: unified_server_search
token string Authorization token
query string Search query (string or numeric ID)

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=unified_server_search" \
--data "token=HOSTKEY_TOKEN"
--data "query=VALUE"
Example of a successful response
{
"result": "OK",
"results": {
"servers": [
{
"id": 123,
"name": "Server 1",
"owner": "[email protected]",
"status": "rent",
"billing": "en",
"type": "server"
}
]
},
"limited": {
"servers": false
},
"category": "servers"
}
Failure response
{
"code": -2,
"message": "Authentication required"
}

eq/unit_reset

Requests an IPMI controller reset for the specified server. If the operation is asynchronous, a callback is returned.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: unit_reset
id int Equipment ID (server)
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=unit_reset" \
--data "id=VALUE"
Example of a successful response
{
"result": "OK",
"action": "unit_reset",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "IPMI unit reset request failed: error_details" }

```

eq/unsuspend

Request to unsuspend a server. If the server was locked by an administrator, this action initiates the unlocking process.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: unsuspend
id int Server ID
token string Authorization token

Example Request

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=unsuspend" \
--data "id=VALUE"
--data "token=HOSTKEY_TOKEN"
Example of a successful response
{
"result": "OK",
"action": "unsuspend",
"callback": "7bc29eb23fb1b879b21fce509597f07c"
}
Failure response

``` { "code": -1, "message": "Unsuspend request failed" }

```

eq/update_servers

Updates the user's active server list, synchronizing data with WHMCS and considering payment status (prebill). Returns current server IDs, deploy keys, and debt information.

HTTP-method: POST

Parameters:

Parameter Required Type Description
action string Method identifier: `update_
question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×