VPS.org API

وثائق REST API

واجهة برمجة تطبيقات المواقع

Retrieve information about available datacenter locations for VPS deployment.

نقاط النهاية 1 endpoint
المسار الأساسي /api/v1/locations
يحصل /api/v1/locations/

عرض جميع المواقع

استعادة قائمة بجميع مواقع مراكز البيانات المتاحة حيث يمكنك نشر الخوادم VPS.

معلمات الاستعلام

البارامترات يكتب مطلوب وصف المشروع
region string لا Filter by region: north-america, europe, asia, oceania
available boolean لا Show only locations currently accepting new servers

مثال على الطلب

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);

مثال على الاستجابة

{
  "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
      }
    }
  ]
}

حقول الاستجابة

الميدان يكتب وصف المشروع
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

رموز حالة الاستجابة

200 تم استرداد قائمة المواقع بنجاح
401 غير مصرح به - رمز مصادقة غير صالح أو مفقود

Choosing the Right Location

حسب الجمهور المستهدف

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

بحسب متطلبات الامتثال

أداء الشبكة

أقل فترة تأخير إلى الأسواق الرئيسية
  • أمريكا الشمالية: نيويورك (2 ميسلين إلى شرق الولايات المتحدة)، سان فرانسيسكو (2 ميسلين إلى غرب الولايات المتحدة)
  • أوروبا: فرانكفورت (3 ثواني)، لندن (5 ثواني)
  • آسيا: سنغافورة (5 ثواني)، طوكيو (8 ثواني)
  • أوقيانوسيا: سيدني (الخيار الوحيد)
أفضل للتوزيع العالمي
  1. الابتدائي: نيويورك أو سان فرانسيسكو (أكبر قاعدة للمستعملين)
  2. ثانوي: لندن أو فرانكفورت (تغطية أوروبا)
  3. التعليم العالي: سنغافورة أو طوكيو (تغطية آسيا)
نصيحة: وبالنسبة للتطبيقات الحيوية، يمكن نشرها في مواقع متعددة مع إمكانية الانتقال الآلي إلى الوضع الاحتياطي لتحقيق أقصى قدر من الوقت التشغيلي والاحتياطي الجغرافي.

الهياكل الأساسية لمركز البيانات

الخصائص القياسية (جميع المواقع)

  • ✓ مراكز البيانات من المستوى الثالث أو ما فوقه
  • ✓ 100 في المائة من مدة التشغيل
  • ✓ الطاقة الزائدة (N+1 أو 2N)
  • ✓ التبريد الزائد
  • ✓ الأمن المادي على مدار الساعة
  • ✓ مراقبة الدخول باستخدام الاستدلال البيولوجي
  • ✓ حماية من هجمات الحرمان الموزعة (تخفيف حدة الهجمات بمعدل يصل إلى 10 تيرابايت في الثانية)
  • ✓ دعم بروتوكول الإنترنت IPv4 و IPv6
  • ✓ شبكة خاصة (VLAN)
  • ✓ شبكة أساسية بسرعة 10 غيغابايت/ثانية
  • ✓ مقدمو خدمات متعددون في المراحل الأولى
  • ✓ اتصال BGP مع الشبكات الرئيسية

مقدمو خدمات الشبكة

الموقع مقدم الخدمة الرتبة حواشي
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

التنقل بين المواقع

يمكنك نقل خادمك الافتراضي إلى موقع مختلف باستخدام لقطات:

  1. إنشاء لقطة من VPS الحالية
  2. إنشاء خادم افتراضي جديد في الموقع المستهدف
  3. استعادة الصورة إلى الخادم الافتراضي الجديد
  4. تحديث سجلات DNS للإشارة إلى IP الجديد
  5. حذف الخادم القديم لنظام التشغيل المفتوح بمجرد التحقق من النقل
ملاحظة: وسيؤدي الانتقال إلى موقع جديد إلى إنشاء عنوان جديد لبروتوكول الإنترنت.() وينبغي التخطيط لفترة نشر نظام أسماء النطاقات (عادة ما تتراوح بين 24 و48 ساعة للنشر العالمي الكامل).

النشر في مواقع متعددة

ولتحقيق درجة عالية من التوافر والتغطية العالمية، يرجى النظر في نشر النظام في مواقع متعددة:

حالات الاستخدام
  • تقديم المحتوى على الصعيد العالمي
  • موازنة الحمل الجغرافي
  • استعادة القدرة على العمل بعد الكوارث
  • الامتثال لقوانين إقامة البيانات
  • تخفيض فترة التأخير بالنسبة للمستعملين الدوليين
باء - التنفيذ
  • موازنة الحمل القائمة على نظام أسماء النطاقات (GeoDNS)
  • إدماج شبكة توزيع المحتوى (Cloudflare، إلخ)
  • استنساخ قاعدة البيانات عبر المناطق
  • حلول التخزين المشتركة
  • الانتقال إلى الوضع الاحتياطي على مستوى التطبيقات
Need help with multi-region deployment? Contact our solutions team at solutions@vps.org for architecture consulting.