CrownPanel API Overview

CrownPanel's API allows you to manage your VPS programmatically - including actions like power control, hostname changes, snapshot management, and more.

You can use the API with:

  • PHP scripts
  • CLI tools like curl
  • Monitoring systems
  • Custom control panels or dashboards

Ideal for automation, integration into management panels, or performing bulk operations across multiple VPS instances.


🌐 Change VPS NIC Driver

Use this API call to change the network interface card (NIC) driver for your VPS.

Available options:

  • e1000
  • virtio

🔐 Key(s) and variable(s) required for this call,

Key Variable Description Required
API_KEY YOUR_API_KEY Replace YOUR_API_KEY with your actual API key provided in "Account Settings", under the API section ✅ Yes
QUERY change_nic_driver Fixed value: must be "change_nic_driver" ✅ Yes
NIC_DRIVER NEW-NIC-DRIVER Set the new NIC driver (e1000 or virtio) ✅ Yes
VMID YOUR_VMID Replace YOUR_VMID with your VPS VMID provided by "List All VPS" API Query ✅ Yes

Response examples

✅ If YOUR_API_KEY, QUERY & YOUR_VMID parameters are valid, you would get the following output,

Success Output

{"query_status":"Success","query":"hostname","query_result":"OK"}

❌ If YOUR_API_KEY or QUERY or YOUR_VMID are invalid, you would get the following output,

Error Output

'{"query_status":"Error","query":"verify","query_result":""}'


CURL Example

curl -d "API_KEY=API-KEY-HERE&QUERY=change_nic_driver&VMID=YOUR_VMID&NIC_DRIVER=new-nic-driver" -X POST https://api.crownpanel.com

🌐 Other Language Examples

If you prefer to use another language or environment, here are examples for PHP, Python and Node.js:

PHP Example
<?php
$url = "https://api.crownpanel.com";

$post = [
'API_KEY'    => 'YOUR_API_KEY',
'QUERY'      => 'change_nic_driver',
'NIC_DRIVER' => 'NEW-NIC-DRIVER',
'VMID'       => 'YOUR_VMID',
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
$response = curl_exec($ch);
var_export($response);
?>
Python Example

âš™ī¸ Install (only once): Required to install necessary libraries before running the code.

pip install requests
import requests

url = "https://api.crownpanel.com"
data = {
    "API_KEY": "YOUR_API_KEY",
    "QUERY": "change_nic_driver",
    "NIC_DRIVER": "NEW-NIC-DRIVER",  # Replace with either 'e1000' or 'virtio'
    "VMID": "YOUR_VMID"
}

response = requests.post(url, data=data)
print(response.text)
Node.js Example

âš™ī¸ Install (only once): Required to install necessary libraries before running the code.

npm install axios
const axios = require('axios');
const qs = require('qs');

const data = qs.stringify({
  API_KEY: 'YOUR_API_KEY',
  QUERY: 'change_nic_driver',
  NIC_DRIVER: 'NEW-NIC-DRIVER', // Replace with either 'e1000' or 'virtio'
  VMID: 'YOUR_VMID'
});

axios.post('https://api.crownpanel.com', data)
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.error('Error:', error);
  });

Need help? Visit our Support Portal or use our live chat.