VPS.org API

REST API Documentation

Operating Systems API

Retrieve information about available operating systems and distributions for your VPS servers.

Endpoints 2 endpoints
Base Path /api/v1/operating-systems
GET /api/v1/operating-systems/

List All Operating Systems

Retrieve a list of all available operating systems that can be installed on VPS servers.

Query Parameters

Parameter Type Required Description
os_type string No Filter by OS type: linux, windows
featured boolean No Show only featured operating systems

Example Request

cURL
Python
JavaScript
PHP
curl -X GET "https://admin.vps.org/api/v1/operating-systems/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://admin.vps.org/api/v1/operating-systems/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch('https://admin.vps.org/api/v1/operating-systems/', {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

const os = await response.json();
console.log(os);
$ch = curl_init('https://admin.vps.org/api/v1/operating-systems/');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer YOUR_API_TOKEN',
    'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
$operating_systems = json_decode($response, true);
curl_close($ch);

Example Response

{
  "count": 12,
  "results": [
    {
      "id": 1,
      "name": "Ubuntu 22.04 LTS",
      "slug": "ubuntu-22-04",
      "version": "22.04",
      "os_type": "linux",
      "distribution": "Ubuntu",
      "architecture": "x86_64",
      "featured": true,
      "available": true,
      "min_disk_gb": 10,
      "description": "Ubuntu 22.04 LTS (Jammy Jellyfish) - Long Term Support until 2027",
      "icon_url": "https://cdn.vps.org/os-icons/ubuntu.svg"
    },
    {
      "id": 2,
      "name": "Debian 12",
      "slug": "debian-12",
      "version": "12",
      "os_type": "linux",
      "distribution": "Debian",
      "architecture": "x86_64",
      "featured": true,
      "available": true,
      "min_disk_gb": 10,
      "description": "Debian 12 (Bookworm) - Stable release",
      "icon_url": "https://cdn.vps.org/os-icons/debian.svg"
    },
    {
      "id": 3,
      "name": "CentOS Stream 9",
      "slug": "centos-stream-9",
      "version": "9",
      "os_type": "linux",
      "distribution": "CentOS",
      "architecture": "x86_64",
      "featured": false,
      "available": true,
      "min_disk_gb": 10,
      "description": "CentOS Stream 9 - Rolling release tracking RHEL development",
      "icon_url": "https://cdn.vps.org/os-icons/centos.svg"
    },
    {
      "id": 4,
      "name": "Fedora 39",
      "slug": "fedora-39",
      "version": "39",
      "os_type": "linux",
      "distribution": "Fedora",
      "architecture": "x86_64",
      "featured": false,
      "available": true,
      "min_disk_gb": 15,
      "description": "Fedora 39 - Cutting-edge Linux distribution",
      "icon_url": "https://cdn.vps.org/os-icons/fedora.svg"
    },
    {
      "id": 5,
      "name": "Rocky Linux 9",
      "slug": "rocky-linux-9",
      "version": "9",
      "os_type": "linux",
      "distribution": "Rocky Linux",
      "architecture": "x86_64",
      "featured": true,
      "available": true,
      "min_disk_gb": 10,
      "description": "Rocky Linux 9 - Enterprise-grade Linux, RHEL compatible",
      "icon_url": "https://cdn.vps.org/os-icons/rocky.svg"
    }
  ]
}

Response Fields

Field Type Description
id integer Unique operating system identifier
name string Full operating system name with version
slug string URL-friendly OS identifier
version string OS version number
os_type string Operating system type: linux or windows
distribution string Distribution name (Ubuntu, Debian, CentOS, etc.)
architecture string CPU architecture (x86_64, arm64, etc.)
featured boolean Whether OS is featured/recommended
available boolean Whether OS is currently available for installation
min_disk_gb integer Minimum disk space required in gigabytes
description string Brief description of the operating system
icon_url string URL to OS icon/logo image

Response Status Codes

200 Successfully retrieved operating systems list
401 Unauthorized - Invalid or missing authentication token
GET /api/v1/operating-systems/{os_id}/

Get Operating System Details

Retrieve detailed information about a specific operating system.

Path Parameters

Parameter Type Required Description
os_id integer Yes Unique operating system ID

Example Request

cURL
Python
JavaScript
curl -X GET "https://admin.vps.org/api/v1/operating-systems/1/" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"
import requests

os_id = 1
url = f"https://admin.vps.org/api/v1/operating-systems/{os_id}/"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
print(response.json())
const osId = 1;
const response = await fetch(`https://admin.vps.org/api/v1/operating-systems/${osId}/`, {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

const os = await response.json();
console.log(os);

Example Response

{
  "id": 1,
  "name": "Ubuntu 22.04 LTS",
  "slug": "ubuntu-22-04",
  "version": "22.04",
  "os_type": "linux",
  "distribution": "Ubuntu",
  "architecture": "x86_64",
  "featured": true,
  "available": true,
  "min_disk_gb": 10,
  "description": "Ubuntu 22.04 LTS (Jammy Jellyfish) - Long Term Support until 2027",
  "icon_url": "https://cdn.vps.org/os-icons/ubuntu.svg",
  "release_date": "2022-04-21",
  "support_end_date": "2027-04-21",
  "default_user": "root",
  "package_manager": "apt",
  "init_system": "systemd",
  "kernel_version": "5.15",
  "features": [
    "Long Term Support (LTS) until 2027",
    "5 years of free security updates",
    "Extended Security Maintenance available",
    "Large community support",
    "Extensive package repository",
    "Cloud-optimized kernel",
    "Regular point releases"
  ],
  "recommended_for": [
    "Web servers (Apache, Nginx)",
    "Application servers",
    "Database servers (MySQL, PostgreSQL)",
    "Docker containers",
    "Kubernetes nodes",
    "Development environments",
    "Production workloads"
  ],
  "installation_notes": [
    "Requires minimum 10GB disk space",
    "SSH enabled by default on port 22",
    "UFW firewall available but not enabled by default",
    "Automatic security updates can be configured",
    "Cloud-init supported for automated setup"
  ]
}

Response Status Codes

200 Successfully retrieved operating system details
401 Unauthorized - Invalid or missing authentication token
404 Not Found - Operating system does not exist

Featured Operating Systems

VPS.org recommends the following operating systems for most use cases:

Ubuntu 22.04 LTS
  • Best for: General purpose servers, web hosting
  • Support: Until April 2027
  • Package Manager: APT
  • Why choose: Most popular, extensive documentation, large community
Debian 12
  • Best for: Stability-focused production servers
  • Support: ~5 years
  • Package Manager: APT
  • Why choose: Rock-solid stability, security-focused
Rocky Linux 9
  • Best for: Enterprise applications, RHEL workloads
  • Support: ~10 years
  • Package Manager: DNF/YUM
  • Why choose: RHEL compatible, enterprise-grade
AlmaLinux 9
  • Best for: Enterprise servers, cPanel hosting
  • Support: ~10 years
  • Package Manager: DNF/YUM
  • Why choose: RHEL compatible, backed by CloudLinux

Choosing the Right OS

By Use Case

Use Case Recommended OS Reason
Web Hosting Ubuntu 22.04 LTS, Debian 12 Excellent LAMP/LEMP stack support, large community
Docker/Containers Ubuntu 22.04 LTS, Debian 12 Native Docker support, optimized kernels
Enterprise Apps Rocky Linux 9, AlmaLinux 9 RHEL compatibility, long support cycles
Development Ubuntu 22.04 LTS, Fedora 39 Latest packages, developer-friendly tools
Database Servers Debian 12, Rocky Linux 9 Stability, performance, long-term support
cPanel Hosting AlmaLinux 9, Rocky Linux 9 Official cPanel support

By Experience Level

Need help choosing? Contact our support team at support@vps.org for personalized OS recommendations based on your specific requirements.

Installation & Setup

What Happens During OS Installation

  1. Image Selection: OS template is selected from our repository
  2. Disk Partitioning: Automatic partitioning based on plan size
  3. Base Install: Core OS packages are installed (5-10 minutes)
  4. Network Setup: IP address, DNS, and gateway configured
  5. SSH Setup: SSH server enabled on port 22
  6. Root Access: Root password sent via email
  7. Cloud-Init: Initial configuration applied (if supported)

Post-Installation Steps

Default Credentials

Important: Root credentials are sent to your registered email address immediately after server creation. Change the default password on first login for security.

Support & Documentation

For OS-specific setup guides, visit our documentation center: