Hesab profili və API token məlumatını əldə et. Hesab və API token ilə əlaqəli icazələrin müəyyən edilməsi üçün faydalıdır.
İstəyişin API tokeni üçün hesab profilinin metamə'lumatlarını və token çərçivələrini/hüquqlarını geri qaytarır. Birdən çox API tokenini idarə etdiyiniz və tokenin hansı hesaba aid olduğunu və hansı hüquqlara sahib olduğunu müəyyən etməli olduğunuz zaman bu faydalıdır.
Müvafiq API token'i tələb edir. Hər hansı aktiv token, icazə sahəsindən asılı olmayaraq bu son nöqtəyə çıxış əldə edə bilər.
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| Sahə | Növü | İzahat |
|---|---|---|
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| Sahə | Növü | İzahat |
|---|---|---|
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 |
Bir çox API tokenini müxtəlif tətbiqetmələrdə idarə edərkən, tokenin hansı hesaba aid olduğunu yoxlamaq üçün bu son nöqtəni istifadə edin:
# 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 zəngləri etməzdən əvvəl, hazırkı tokenin nə icazələri olduğunu yoxlayın:
# 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")
Tokeninizin vaxtı bitməyə yaxın olub olmadığını yoxlayın:
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")
İmkanlar formata uyğun olmalıdır resource:action. İstifadə et resource:* resursa tam çıxış üçün, ya da *:* tam API girişi üçün.
| Mənbə | Mövcud Əmrlər |
|---|---|
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, * |