VPS.org API

REST API Documentation

Locations API

Retrieve information about available datacenter locations for VPS deployment.

Endpoints 1 endpoint
Base Path /api/v1/locations
GET /api/v1/locations/

List All Locations

Retrieve a list of all available datacenter locations where you can deploy VPS servers.

Query Parameters

Parameter Type Required Description
region string No Filter by region: north-america, europe, asia, oceania
available boolean No Show only locations currently accepting new servers

Example Request

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

url = "https://admin.vps.org/api/v1/locations/"
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/locations/', {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

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

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

Example Response

{
  "count": 8,
  "results": [
    {
      "id": 1,
      "name": "New York",
      "slug": "ny-usa",
      "country": "United States",
      "country_code": "US",
      "city": "New York",
      "region": "north-america",
      "continent": "North America",
      "available": true,
      "latitude": 40.7128,
      "longitude": -74.0060,
      "network_provider": "Digital Realty",
      "features": [
        "100% Uptime SLA",
        "DDoS Protection",
        "IPv6 Support",
        "Private Networking",
        "Low Latency to US East Coast"
      ],
      "average_latency_ms": {
        "us-east": 2,
        "us-west": 75,
        "europe": 85,
        "asia": 220
      }
    },
    {
      "id": 2,
      "name": "San Francisco",
      "slug": "sf-usa",
      "country": "United States",
      "country_code": "US",
      "city": "San Francisco",
      "region": "north-america",
      "continent": "North America",
      "available": true,
      "latitude": 37.7749,
      "longitude": -122.4194,
      "network_provider": "Equinix",
      "features": [
        "100% Uptime SLA",
        "DDoS Protection",
        "IPv6 Support",
        "Private Networking",
        "Low Latency to US West Coast & Asia"
      ],
      "average_latency_ms": {
        "us-east": 75,
        "us-west": 2,
        "europe": 150,
        "asia": 120
      }
    },
    {
      "id": 3,
      "name": "London",
      "slug": "lon-uk",
      "country": "United Kingdom",
      "country_code": "GB",
      "city": "London",
      "region": "europe",
      "continent": "Europe",
      "available": true,
      "latitude": 51.5074,
      "longitude": -0.1278,
      "network_provider": "Telehouse",
      "features": [
        "100% Uptime SLA",
        "DDoS Protection",
        "IPv6 Support",
        "Private Networking",
        "GDPR Compliant",
        "Low Latency to Europe"
      ],
      "average_latency_ms": {
        "us-east": 85,
        "us-west": 150,
        "europe": 5,
        "asia": 180
      }
    },
    {
      "id": 4,
      "name": "Frankfurt",
      "slug": "fra-de",
      "country": "Germany",
      "country_code": "DE",
      "city": "Frankfurt",
      "region": "europe",
      "continent": "Europe",
      "available": true,
      "latitude": 50.1109,
      "longitude": 8.6821,
      "network_provider": "Interxion",
      "features": [
        "100% Uptime SLA",
        "DDoS Protection",
        "IPv6 Support",
        "Private Networking",
        "GDPR Compliant",
        "Central European Location"
      ],
      "average_latency_ms": {
        "us-east": 95,
        "us-west": 160,
        "europe": 3,
        "asia": 200
      }
    },
    {
      "id": 5,
      "name": "Singapore",
      "slug": "sgp-sg",
      "country": "Singapore",
      "country_code": "SG",
      "city": "Singapore",
      "region": "asia",
      "continent": "Asia",
      "available": true,
      "latitude": 1.3521,
      "longitude": 103.8198,
      "network_provider": "Equinix",
      "features": [
        "100% Uptime SLA",
        "DDoS Protection",
        "IPv6 Support",
        "Private Networking",
        "Low Latency to Asia Pacific"
      ],
      "average_latency_ms": {
        "us-east": 250,
        "us-west": 180,
        "europe": 170,
        "asia": 5
      }
    },
    {
      "id": 6,
      "name": "Tokyo",
      "slug": "tok-jp",
      "country": "Japan",
      "country_code": "JP",
      "city": "Tokyo",
      "region": "asia",
      "continent": "Asia",
      "available": true,
      "latitude": 35.6762,
      "longitude": 139.6503,
      "network_provider": "Equinix",
      "features": [
        "100% Uptime SLA",
        "DDoS Protection",
        "IPv6 Support",
        "Private Networking",
        "Low Latency to East Asia"
      ],
      "average_latency_ms": {
        "us-east": 180,
        "us-west": 120,
        "europe": 240,
        "asia": 8
      }
    },
    {
      "id": 7,
      "name": "Sydney",
      "slug": "syd-au",
      "country": "Australia",
      "country_code": "AU",
      "city": "Sydney",
      "region": "oceania",
      "continent": "Oceania",
      "available": true,
      "latitude": -33.8688,
      "longitude": 151.2093,
      "network_provider": "NextDC",
      "features": [
        "100% Uptime SLA",
        "DDoS Protection",
        "IPv6 Support",
        "Private Networking",
        "Low Latency to Australia & New Zealand"
      ],
      "average_latency_ms": {
        "us-east": 210,
        "us-west": 140,
        "europe": 280,
        "asia": 120
      }
    },
    {
      "id": 8,
      "name": "Toronto",
      "slug": "tor-ca",
      "country": "Canada",
      "country_code": "CA",
      "city": "Toronto",
      "region": "north-america",
      "continent": "North America",
      "available": true,
      "latitude": 43.6532,
      "longitude": -79.3832,
      "network_provider": "Cologix",
      "features": [
        "100% Uptime SLA",
        "DDoS Protection",
        "IPv6 Support",
        "Private Networking",
        "Data Sovereignty (Canada)"
      ],
      "average_latency_ms": {
        "us-east": 20,
        "us-west": 65,
        "europe": 90,
        "asia": 210
      }
    }
  ]
}

Response Fields

Field Type Description
id integer Unique location identifier
name string Human-readable location name
slug string URL-friendly location identifier
country string Country name
country_code string ISO 3166-1 alpha-2 country code
city string City name
region string Geographic region (north-america, europe, asia, oceania)
continent string Continent name
available boolean Whether location is accepting new servers
latitude decimal Geographic latitude
longitude decimal Geographic longitude
network_provider string Datacenter/network provider name
features array List of location-specific features
average_latency_ms object Average latency in milliseconds to major regions

Response Status Codes

200 Successfully retrieved locations list
401 Unauthorized - Invalid or missing authentication token

Choosing the Right Location

By Target Audience

Target Audience Recommended Locations Why
US East Coast Users New York, Toronto Lowest latency (2-20ms), close proximity
US West Coast Users San Francisco Lowest latency (2ms), silicon valley connectivity
European Users London, Frankfurt GDPR compliant, low latency (3-5ms) across Europe
Asian Users Singapore, Tokyo Best connectivity to Asia Pacific region (5-8ms)
Australian/NZ Users Sydney Only Oceania location, lowest latency to Australia
Global Audience Multiple locations with load balancing Deploy in 2-3 regions for global coverage

By Compliance Requirements

Network Performance

Lowest Latency to Major Markets
  • North America: New York (2ms to US East), San Francisco (2ms to US West)
  • Europe: Frankfurt (3ms), London (5ms)
  • Asia: Singapore (5ms), Tokyo (8ms)
  • Oceania: Sydney (only option)
Best for Global Distribution
  1. Primary: New York or San Francisco (largest user base)
  2. Secondary: London or Frankfurt (Europe coverage)
  3. Tertiary: Singapore or Tokyo (Asia coverage)
Pro Tip: For mission-critical applications, deploy to multiple locations with automatic failover for maximum uptime and geographic redundancy.

Datacenter Infrastructure

Standard Features (All Locations)

  • ✓ Tier III or higher datacenters
  • ✓ 100% uptime SLA
  • ✓ Redundant power (N+1 or 2N)
  • ✓ Redundant cooling
  • ✓ 24/7 physical security
  • ✓ Biometric access controls
  • ✓ DDoS protection (up to 10 Tbps mitigation)
  • ✓ IPv4 and IPv6 support
  • ✓ Private networking (VLAN)
  • ✓ 10 Gbps+ network backbone
  • ✓ Multiple upstream providers
  • ✓ BGP peering with major networks

Network Providers

Location Provider Tier Notes
New York Digital Realty Tier III Major internet exchange point
San Francisco Equinix Tier III Silicon Valley connectivity hub
London Telehouse Tier III LINX (London Internet Exchange)
Frankfurt Interxion Tier III DE-CIX (world's largest IXP)
Singapore Equinix Tier III Asia Pacific connectivity hub
Tokyo Equinix Tier III JPIX and JPNAP peering
Sydney NextDC Tier III Oceania's largest datacenter
Toronto Cologix Tier III Canadian data sovereignty

Location Migration & Multi-Region Deployment

Moving Between Locations

You can migrate your VPS to a different location using snapshots:

  1. Create a snapshot of your existing VPS
  2. Create a new VPS in the target location
  3. Restore the snapshot to the new VPS
  4. Update DNS records to point to new IP
  5. Delete old VPS once migration is verified
Note: Migrating to a new location will result in a new IP address. Plan for DNS propagation time (typically 24-48 hours for full global propagation).

Multi-Location Deployment

For high availability and global reach, consider deploying in multiple locations:

Use Cases
  • Global content delivery
  • Geographic load balancing
  • Disaster recovery
  • Compliance with data residency laws
  • Reduced latency for international users
Implementation
  • DNS-based load balancing (GeoDNS)
  • CDN integration (Cloudflare, etc.)
  • Database replication across regions
  • Shared storage solutions
  • Application-level failover
Need help with multi-region deployment? Contact our solutions team at solutions@vps.org for architecture consulting.