VPS.org API

ማስረጃ

የግልጽነት ደረጃ

የሂሳብ ፕሮፊል እና API ቶኬን መረጃን ማግኘት. ለየትኛው ሂሳብ እና መብቶች API ቶኬን ጋር የተያያዙ እንደሆኑ ለመለየት ጠቃሚ ነው

የመጨረሻ ነጥቦች መጨረሻ
የመሠረት መንገድ /api/v1/account
አግኝ /api/v1/account/me/

የሂሳብ መረጃ

የሂሳብ ፕሮፊል ሜታ-ዳታ እና የቶኬን ስፋት/የፈቃዶች ለ API ቶኬን በጥሪው ውስጥ የተጠቀመውን ይመልሳል. ይህ ብዙ API ቶኬኖችን ሲያስተዳድሩ እና ቶኬን የሚገባውን ሂሳብ እና ምን ዓይነት ፈቃዶች እንዳሉት ሲያረጋግጡ ጠቃሚ ነው

ማረጋገጫ

የተረጋገጠ የAPI ቶኬን ያስፈልጋል. ማንኛውም አክቲቭ ቶኬን ይህ መጨረሻ ነጥብ ያለምንም ቅድመ ሁኔታ ሊደርስ ይችላል

የምሳሌ ጥያቄ

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

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

response = requests.get(url, headers=headers)
data = response.json()

print(f"Account: {data['account']['email']}")
print(f"Token: {data['token']['name']}")
print(f"Permissions: {data['token']['permissions']}")
const response = await fetch('https://admin.vps.org/api/v1/account/me/', {
  method: 'GET',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

const data = await response.json();
console.log(`Account: ${data.account.email}`);
console.log(`Token: ${data.token.name}`);
console.log(`Permissions:`, data.token.permissions);
$ch = curl_init('https://admin.vps.org/api/v1/account/me/');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer YOUR_API_TOKEN',
    'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

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

echo "Account: " . $data['account']['email'] . "\n";
echo "Token: " . $data['token']['name'] . "\n";
echo "Permissions: " . implode(', ', $data['token']['permissions']) . "\n";

የምሳሌ ምላሽ

{
  "account": {
    "email": "john@example.com",
    "first_name": "John",
    "last_name": "Doe",
    "company_name": "Acme Inc.",
    "created_at": "2024-06-15"
  },
  "token": {
    "name": "Production Deploy Key",
    "permissions": [
      "servers:list",
      "servers:create",
      "servers:power",
      "dns:*"
    ],
    "created_at": "2025-01-10T14:30:00Z",
    "last_used_at": "2025-02-11T08:45:12Z",
    "expires_at": null,
    "is_expired": false
  }
}

የምላሽ መስኮች

account object
ፋይል አይነት መግለጫ የለም
email string Account email address
first_name string | null Account holder's first name
last_name string | null Account holder's last name
company_name string | null Company name (if set)
created_at date Account creation date (YYYY-MM-DD)
token object
ፋይል አይነት መግለጫ የለም
name string Name assigned to this API token
permissions array List of permission strings (e.g. servers:list, dns:*). See Authentication docs for permission format.
created_at datetime When the token was created (ISO 8601)
last_used_at datetime | null Last time the token was used for authentication
expires_at datetime | null Token expiration date (null if no expiration)
is_expired boolean Whether the token has expired

የምላሽ ስታተስ ኮዶች

200 Successfully retrieved account and token information
401 Unauthorized - Invalid, expired, or missing API token

የተለመዱ ሁኔታዎች

የቶኬን ባለቤትን ግለጽ

በተለያዩ ፕሮግራሞች ውስጥ ብዙ API ቶኬኖችን በሚመሩበት ጊዜ፣ ቶኬን ለየትኛው ሒሳብ እንደሚገባ ለማረጋገጥ ይህንን መጨረሻ ነጥብ ይጠቀሙ:

# Check which account this token is associated with
response = requests.get(
    "https://admin.vps.org/api/v1/account/me/",
    headers={"Authorization": f"Bearer {api_token}"}
)
account = response.json()["account"]
print(f"This token belongs to: {account['email']}")

የቶኬን መብቶች

ከAPI ጥሪዎች በፊት፣ የቅርብ ጊዜው ቶኬን ምን ዓይነት ፈቃዶች እንዳሉት ይመልከቱ:

# Check token permissions before performing an action
response = requests.get(
    "https://admin.vps.org/api/v1/account/me/",
    headers={"Authorization": f"Bearer {api_token}"}
)
permissions = response.json()["token"]["permissions"]

if "servers:create" in permissions or "servers:*" in permissions:
    # Token has permission to create servers
    create_server()
else:
    print("Token does not have servers:create permission")

የቶኬን ጊዜ ማሳያ

ቶኬንዎ ወደ መጨረሻው ሊያበቃ እንደሚችል ይመልከቱ:

from datetime import datetime

response = requests.get(
    "https://admin.vps.org/api/v1/account/me/",
    headers={"Authorization": f"Bearer {api_token}"}
)
token_info = response.json()["token"]

if token_info["expires_at"]:
    expires = datetime.fromisoformat(token_info["expires_at"])
    days_left = (expires - datetime.now()).days
    if days_left < 7:
        print(f"Warning: Token expires in {days_left} days")
else:
    print("Token has no expiration date")

የፍቃድ መረጃ

የፍቃድ መረጃ resource:action. ጥቅም resource:* ለሙሉ መሳሪያ መዳረሻ, ወይም *:* ለሙሉ API መዳረሻ

ፋይል የተገኙ ተግባራት
servers list, create, update, delete, power, backup, snapshot, resize, *
domains list, search, update, renew, *
dns list, create, update, delete, *
snapshots list, delete, *
backups list, *
ssh-keys list, create, delete, *
plans list, *
locations list, *
deployments list, create, delete, *
billing list, *
Manage your tokens: Create, edit, and revoke API tokens at admin.vps.org/account/developers/