YourControl API
Детальная документация API
YourControl API
Полная документация по Developer API для интеграции с серверами игровой панели (Pterodactyl + кастомные YourControl, например query)
Содержание
- Введение
- Аутентификация
- Query API
- Webhook Tokens API
- Public Webhook API
- Discord Webhooks API
- Rate Limiting & Caching
- Примеры кода
- Коды ответов
Введение
Developer API предоставляет возможность получать информацию о состоянии игровых серверов, управлять webhook токенами и настраивать Discord уведомления.
Base URL: https://gcp.pterohost.com/api
Доступ к API:
- Перейдите в Панель управления → Аккаунт → Разработчикам
- Создайте API ключ во вкладке “API Ключи”
- Используйте готовые примеры кода во вкладке “Query API”
Аутентификация
API Key (Authorization)
Для авторизованных запросов используйте ваш API ключ в заголовке:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Получение API ключа:
- Зайдите в /account/api
- Вкладка “API Ключи”
- Создайте новый ключ с описанием
Webhook Token (Public Access)
Для публичного доступа без авторизации используйте Webhook Token:
GET /api/public/server/{token}/query
Получение Webhook Token:
- Зайдите в /account/api
- Вкладка “Query API”
- Выберите сервер
- Создайте Webhook Token
Query API
GET /api/client/servers/{server}/developer/query
Получить текущий онлайн игроков и информацию о сервере.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
{
"success": true,
"data": {
"info": {
"hostname": "My Minecraft Server",
"map": "world",
"players": 15,
"maxplayers": 100,
"version": "1.20.1",
"dedicated": true,
"password": false
},
"players": [
{
"id": "uuid-here",
"name": "Player1"
}
],
"online_players": 15,
"max_players": 100
}
}
Кэширование: 30 секунд Rate Limit: 300 запросов в час
GET /api/client/servers/{server}/developer/query/history
Получить историю онлайна за период.
Параметры пути:
server(string, required) - UUID сервера
Query параметры:
period(string, optional) - Период:day,week,month(по умолчанию:week)
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Пример запроса:
GET /api/client/servers/{server}/developer/query/history?period=week
Ответ:
{
"data": [
{
"recorded_at": "2025-12-16T01:30:00+03:00",
"online_players": 45,
"max_players": 100,
"map": "de_dust2",
"hostname": "My Server",
"extra_data": null
},
{
"recorded_at": "2025-12-16T01:25:00+03:00",
"online_players": 42,
"max_players": 100,
"map": "de_dust2",
"hostname": "My Server",
"extra_data": null
}
]
}
Частота записи: каждые 5 минут Хранение: 30 дней Rate Limit: 300 запросов в час
GET /api/client/servers/{server}/developer/query/players
Получить детальную информацию об игроках онлайн.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
{
"success": true,
"data": {
"info": {
"hostname": "My Server",
"map": "de_dust2",
"players": 10,
"maxplayers": 32
},
"players": [
{
"id": 0,
"name": "Player1",
"score": 150,
"time": 3600,
"ping": 25
}
],
"online_players": 10,
"max_players": 32
}
}
Кэширование: 30 секунд Rate Limit: 300 запросов в час
GET /api/client/servers/{server}/developer/stats
Получить метрики сервера (CPU, RAM, Disk, Network).
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
{
"success": true,
"data": {
"cpu": 45.5,
"memory": {
"current": 2147483648,
"limit": 4294967296
},
"disk": {
"current": 5368709120,
"limit": 10737418240
},
"network": {
"rx_bytes": 1073741824,
"tx_bytes": 536870912
},
"uptime": 86400,
"state": "running"
}
}
Описание полей:
cpu- Использование CPU в процентахmemory.current- Использованная RAM в байтахmemory.limit- Лимит RAM в байтахdisk.current- Использованное место на диске в байтахdisk.limit- Лимит диска в байтахnetwork.rx_bytes- Получено байтnetwork.tx_bytes- Отправлено байтuptime- Время работы в секундахstate- Состояние:running,offline,starting,stopping
Кэширование: 30 секунд Rate Limit: 300 запросов в час
Webhook Tokens API
GET /api/client/servers/{server}/developer/tokens
Получить все webhook токены для сервера.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
{
"data": [
{
"id": 1,
"token": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"webhook_url": "https://gcp.pterohost.com/api/public/server/a1b2c3d4-e5f6-7890-abcd-ef1234567890/query",
"created_at": "2025-12-16T01:00:00+03:00",
"updated_at": "2025-12-16T01:00:00+03:00"
}
]
}
POST /api/client/servers/{server}/developer/tokens
Создать новый webhook токен.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Тело запроса: Не требуется
Ответ:
{
"data": {
"id": 2,
"token": "new-uuid-token-here",
"webhook_url": "https://gcp.pterohost.com/api/public/server/new-uuid-token-here/query",
"created_at": "2025-12-16T02:00:00+03:00",
"updated_at": "2025-12-16T02:00:00+03:00"
}
}
POST /api/client/servers/{server}/developer/tokens/{tokenId}/regenerate
Регенерировать существующий webhook токен.
Параметры пути:
server(string, required) - UUID сервераtokenId(integer, required) - ID токена
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Тело запроса: Не требуется
Ответ:
{
"data": {
"id": 2,
"token": "regenerated-uuid-token",
"webhook_url": "https://gcp.pterohost.com/api/public/server/regenerated-uuid-token/query",
"created_at": "2025-12-16T02:00:00+03:00",
"updated_at": "2025-12-16T02:30:00+03:00"
}
}
⚠️ Предупреждение: Старый токен станет невалидным после регенерации.
DELETE /api/client/servers/{server}/developer/tokens/
Удалить webhook токен.
Параметры пути:
server(string, required) - UUID сервераtokenId(integer, required) - ID токена
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
HTTP/1.1 204 No Content
Public Webhook API
GET /api/public/server-query/{serverUuid}/query
Получить данные query БЕЗ токена (ограничен по IP).
Параметры пути:
serverUuid(string, required) - UUID сервера
Заголовки:
Accept: application/json
⚠️ Авторизация НЕ требуется ⚠️ Rate Limit: 10 запросов в час на IP адрес
Ответ: Аналогично /developer/query
GET /api/public/server/{token}/query
Получить данные query с webhook токеном (рекомендуется).
Параметры пути:
token(string, required) - Webhook токен (UUID)
Заголовки:
Accept: application/json
⚠️ Авторизация НЕ требуется ✅ Rate Limit: 150 запросов в час на токен (выше чем без токена)
Ответ:
{
"success": true,
"data": {
"info": {
"hostname": "My Server",
"map": "world",
"players": 20,
"maxplayers": 100,
"version": "1.20.1"
},
"players": [...],
"online_players": 20,
"max_players": 100
}
}
Кэширование: 30 секунд Rate Limit: 150 запросов в час на токен
GET /api/public/server/{token}/query/history
Получить историю онлайна без авторизации.
Параметры пути:
token(string, required) - Webhook токен (UUID)
Query параметры:
period(string, optional) -day,week,month
Заголовки:
Accept: application/json
Пример запроса:
GET /api/public/server/a1b2c3d4-e5f6-7890-abcd-ef1234567890/query/history?period=week
Ответ:
{
"success": true,
"data": [
{
"recorded_at": "2025-12-16T01:30:00+03:00",
"online_players": 45,
"max_players": 100,
"map": "de_dust2",
"hostname": "My Server",
"extra_data": null
}
]
}
Rate Limit: 150 запросов в час на токен
Discord Webhooks API
GET /api/client/servers/{server}/discord-webhooks
Получить все Discord webhooks для сервера.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
{
"data": [
{
"id": 1,
"server_id": 123,
"webhook_url": "https://discord.com/api/webhooks/****/****",
"webhook_url_full": "https://discord.com/api/webhooks/123456789/abcdefg",
"name": "Главный канал",
"is_enabled": true,
"cooldown_seconds": 60,
"failed_attempts": 0,
"last_failed_at": null,
"created_at": "2025-12-16T01:00:00+03:00",
"updated_at": "2025-12-16T01:00:00+03:00"
}
]
}
POST /api/client/servers/{server}/discord-webhooks
Создать новый Discord webhook.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Content-Type: application/json
Тело запроса:
{
"webhook_url": "https://discord.com/api/webhooks/123456789/abcdefg",
"name": "Уведомления сервера",
"is_enabled": true,
"cooldown_seconds": 60
}
Поля:
webhook_url(string, required) - Discord webhook URLname(string, required) - Название webhook (макс. 100 символов)is_enabled(boolean, optional) - Включен ли webhook (по умолчанию: true)cooldown_seconds(integer, optional) - Минимальный интервал между отправками в секундах (0-3600, по умолчанию: 60)
Ответ: Объект созданного webhook
PATCH /api/client/servers/{server}/discord-webhooks/
Обновить Discord webhook.
Параметры пути:
server(string, required) - UUID сервераwebhookId(integer, required) - ID webhook
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Content-Type: application/json
Тело запроса:
{
"webhook_url": "https://discord.com/api/webhooks/new-url",
"name": "Новое название",
"is_enabled": false,
"cooldown_seconds": 120
}
Все поля опциональны
Ответ: Объект обновленного webhook
DELETE /api/client/servers/{server}/discord-webhooks/
Удалить Discord webhook.
Параметры пути:
server(string, required) - UUID сервераwebhookId(integer, required) - ID webhook
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
HTTP/1.1 204 No Content
POST /api/client/servers/{server}/discord-webhooks/{webhookId}/test
Отправить тестовое сообщение в Discord.
Параметры пути:
server(string, required) - UUID сервераwebhookId(integer, required) - ID webhook
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
{
"success": true,
"data": {
"message": "Test message sent successfully"
}
}
GET /api/client/servers/{server}/discord-webhooks/settings
Получить настройки уведомлений Discord.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
{
"data": [
{
"id": 1,
"server_id": 123,
"notification_type": "server_status",
"is_enabled": true,
"config": {
"notify_start": true,
"notify_stop": true
},
"created_at": "2025-12-16T01:00:00+03:00",
"updated_at": "2025-12-16T01:00:00+03:00"
}
]
}
Типы уведомлений:
server_status- Уведомления о старте/остановке сервераonline_report- Периодические отчеты об онлайнеplayer_event- События игроков (join, leave, ban, op)custom_trigger- Кастомные триггеры
PATCH /api/client/servers/{server}/discord-webhooks/settings
Обновить настройку уведомлений.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Content-Type: application/json
Тело запроса:
{
"notification_type": "online_report",
"is_enabled": true,
"config": {
"interval_minutes": 10,
"webhook_id": 1
}
}
Поля:
notification_type(string, required) - Тип уведомленияis_enabled(boolean, required) - Включено/выключеноconfig(object, optional) - Конфигурация для типа
Ответ: Объект обновленной настройки
GET /api/client/servers/{server}/discord-webhooks/triggers
Получить все кастомные триггеры.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
{
"data": [
{
"id": 1,
"server_id": 123,
"name": "High Online Alert",
"description": "Уведомление при большом онлайне",
"trigger_type": "online_players",
"condition_operator": ">",
"threshold_value": 50,
"duration_seconds": 0,
"cooldown_minutes": 10,
"last_triggered_at": null,
"webhook_id": 1,
"is_enabled": true,
"created_at": "2025-12-16T01:00:00+03:00",
"updated_at": "2025-12-16T01:00:00+03:00"
}
]
}
Типы триггеров:
online_players- Количество игроков онлайнtps- TPS сервера (в разработке)cpu_usage- Использование CPU в процентахmemory- Использование RAM в процентахdisk- Использование диска в процентах
Операторы условий:
>- Больше<- Меньше==- Равно>=- Больше или равно<=- Меньше или равно
POST /api/client/servers/{server}/discord-webhooks/triggers
Создать новый триггер.
Параметры пути:
server(string, required) - UUID сервера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Content-Type: application/json
Тело запроса:
{
"name": "CPU Alert",
"description": "Уведомление при высокой нагрузке CPU",
"trigger_type": "cpu_usage",
"condition_operator": ">",
"threshold_value": 80,
"duration_seconds": 60,
"cooldown_minutes": 15,
"webhook_id": 1,
"is_enabled": true
}
Поля:
name(string, required) - Название триггера (макс. 100 символов)description(string, optional) - Описание (макс. 500 символов)trigger_type(string, required) - Тип метрикиcondition_operator(string, required) - Оператор сравненияthreshold_value(integer, required) - Пороговое значение (>=0)duration_seconds(integer, optional) - Длительность условия в секундах (0-600, по умолчанию: 0)cooldown_minutes(integer, required) - Cooldown между срабатываниями (1-1440 минут)webhook_id(integer, required) - ID webhook для отправкиis_enabled(boolean, optional) - Включен ли триггер (по умолчанию: true)
Ответ: Объект созданного триггера
PATCH /api/client/servers/{server}/discord-webhooks/triggers/
Обновить триггер.
Параметры пути:
server(string, required) - UUID сервераtriggerId(integer, required) - ID триггера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Content-Type: application/json
Тело запроса: Все поля опциональны, аналогично созданию
Ответ: Объект обновленного триггера
DELETE /api/client/servers/{server}/discord-webhooks/triggers/
Удалить триггер.
Параметры пути:
server(string, required) - UUID сервераtriggerId(integer, required) - ID триггера
Заголовки:
Authorization: Bearer YOUR_API_KEY
Accept: application/json
Ответ:
HTTP/1.1 204 No Content
Rate Limiting & Caching
Rate Limiting
Авторизованные запросы (с API ключом):
- Лимит: 300 запросов в час
- Ключ: Привязан к пользователю + серверу
- Заголовок:
X-RateLimit-Limit,X-RateLimit-Remaining
Публичные webhook запросы:
- Лимит: 150 запросов в час на токен
- Ключ: Привязан к webhook токену
- Превышение: HTTP 429 Too Many Requests
При превышении лимита:
{
"errors": [
{
"code": "TooManyRequestsException",
"status": "429",
"detail": "Too many requests. Please try again later."
}
]
}
Caching
Все read-only endpoints кэшируются на 30 секунд:
/developer/query- 30 сек/developer/query/players- 30 сек/developer/stats- 30 сек/public/server/{token}/query- 30 сек
История НЕ кэшируется (быстрые запросы к БД)
Примеры кода
JavaScript / TypeScript
// Получить онлайн игроков
const response = await fetch('https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/developer/query', {
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'application/json'
}
});
const data = await response.json();
console.log('Online players:', data.data.online_players);
// Получить историю онлайна за неделю
const history = await fetch('https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/developer/query/history?period=week', {
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'application/json'
}
});
const historyData = await history.json();
console.log('History:', historyData.data);
// Использование Webhook Token (без API ключа)
const publicQuery = await fetch('https://gcp.pterohost.com/api/public/server/YOUR_WEBHOOK_TOKEN/query', {
headers: {
'Accept': 'application/json'
}
});
const publicData = await publicQuery.json();
PHP (cURL)
<?php
// Получить онлайн игроков
$ch = curl_init('https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/developer/query');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$data = json_decode($response, true);
echo 'Online players: ' . $data['data']['online_players'];
// Получить статистику сервера
$ch = curl_init('https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/developer/stats');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer YOUR_API_KEY',
'Accept: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$stats = json_decode($response, true);
// Использование Webhook Token (без API ключа)
$ch = curl_init('https://gcp.pterohost.com/api/public/server/YOUR_WEBHOOK_TOKEN/query');
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Accept: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$publicData = json_decode($response, true);
?>
Python (requests)
import requests
# Настройка
headers = {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'application/json'
}
server_uuid = 'YOUR_SERVER_UUID'
# Получить онлайн игроков
response = requests.get(
f'https://gcp.pterohost.com/api/client/servers/{server_uuid}/developer/query',
headers=headers
)
data = response.json()
print(f"Online players: {data['data']['online_players']}")
# Получить историю онлайна
history_response = requests.get(
f'https://gcp.pterohost.com/api/client/servers/{server_uuid}/developer/query/history',
headers=headers,
params={'period': 'week'}
)
history = history_response.json()
# Использование Webhook Token (без API ключа)
webhook_token = 'YOUR_WEBHOOK_TOKEN'
public_response = requests.get(
f'https://gcp.pterohost.com/api/public/server/{webhook_token}/query',
headers={'Accept': 'application/json'}
)
public_data = public_response.json()
cURL (Command Line)
# Получить онлайн игроков (с API ключом)
curl -X GET "https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/developer/query" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
# Получить онлайн БЕЗ токена (10 req/hour по IP)
curl -X GET "https://gcp.pterohost.com/api/public/server-query/YOUR_SERVER_UUID/query" \
-H "Accept: application/json"
# Получить историю онлайна за неделю
curl -X GET "https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/developer/query/history?period=week" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
# Получить статистику сервера
curl -X GET "https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/developer/stats" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
# Использование Webhook Token (без API ключа)
curl -X GET "https://gcp.pterohost.com/api/public/server/YOUR_WEBHOOK_TOKEN/query" \
-H "Accept: application/json"
# Создать Discord webhook
curl -X POST "https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/discord-webhooks" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"webhook_url": "https://discord.com/api/webhooks/123456789/abcdefg",
"name": "Главный канал"
}'
# Тестировать Discord webhook
curl -X POST "https://gcp.pterohost.com/api/client/servers/YOUR_SERVER_UUID/discord-webhooks/1/test" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json"
Коды ответов
Успешные ответы
| Код | Описание |
|---|---|
| 200 | OK - Запрос выполнен успешно |
| 201 | Created - Ресурс создан |
| 204 | No Content - Запрос выполнен, тело ответа пустое |
Ошибки клиента
| Код | Описание |
|---|---|
| 400 | Bad Request - Некорректные данные запроса |
| 401 | Unauthorized - Отсутствует или невалидный API ключ |
| 403 | Forbidden - Нет прав доступа к ресурсу |
| 404 | Not Found - Ресурс не найден |
| 422 | Unprocessable Entity - Ошибка валидации |
| 429 | Too Many Requests - Превышен rate limit |
Ошибки сервера
| Код | Описание |
|---|---|
| 500 | Internal Server Error - Внутренняя ошибка сервера |
| 503 | Service Unavailable - Сервис временно недоступен |
Формат ошибок
{
"errors": [
{
"code": "ValidationException",
"status": "422",
"detail": "The webhook url field is required."
}
]
}
Scheduler Tasks
Автоматические задачи выполняются в фоновом режиме:
Сохранение истории онлайна
- Частота: каждые 5 минут
- Действие: Сохранение снимка онлайна в БД
- Хранение: 30 дней
Периодические отчеты в Discord
- Частота: каждые 10 минут (настраиваемо)
- Условие: Включена настройка
online_report - Формат: Discord embed с онлайном, картой, hostname
Проверка триггеров
- Частота: каждые 2 минуты
- Действие: Оценка всех активных триггеров
- Cooldown: Учитывается cooldown каждого триггера
Очистка старых данных
- Частота: ежедневно
- Действие: Удаление записей старше 30 дней
- Таблицы:
server_query_history,discord_webhook_logs
Поддерживаемые игры (Query)
Query API поддерживает автоматическое определение протокола для:
Minecraft (eggs: 1, 2, 3, 4, 5, 17, 55, 56, 62, 63)
- Minecraft Java Edition
- Minecraft Bedrock Edition
- PaperMC, Spigot, Bukkit
- BungeeCord, Velocity
Source Engine (eggs: 6, 7, 8, 9, 10, 11, 16, 64)
- Counter-Strike: GO
- Counter-Strike: Source
- Garry’s Mod
- Team Fortress 2
- Half-Life 2: Deathmatch
Rust (egg: 76)
- Rust (через RCON)
Другие игры
- TeamSpeak 3 (egg: 13)
- GTA V FiveM (egg: 18)
- ARK Survival Evolved (egg: 19)
- И другие (через GameQ library)
Безопасность
API Ключи
- ✅ Храните API ключи в безопасности
- ✅ Не передавайте ключи третьим лицам
- ✅ Удаляйте неиспользуемые ключи
- ✅ Используйте HTTPS для всех запросов
Webhook Токены
- ✅ Read-only доступ (безопасно для публичного использования)
- ✅ Можно регенерировать при компрометации
- ✅ Привязаны к конкретному серверу
- ✅ Rate limiting предотвращает злоупотребление
Discord Webhooks
- ✅ Webhook URL маскируется в API ответах
- ✅ Cooldown предотвращает спам
- ✅ Логирование всех отправок
- ✅ Автоматическое отключение при неудачах
FAQ
Как получить UUID сервера?
UUID сервера можно найти:
- В панели управления → Консоль сервера → URL:
/server/{UUID} - Через API:
GET /api/client→ получить список серверов
Как работает кэширование?
Query endpoints кэшируются на 30 секунд. Повторные запросы в течение этого времени вернут кэшированные данные без обращения к игровому серверу.
Что делать при превышении rate limit?
Подождите указанное время в заголовке Retry-After или используйте webhook токены для публичного доступа (отдельный лимит).
Как настроить Discord уведомления?
- Создайте Discord webhook в настройках канала
- Добавьте webhook URL в панели:
/account/api→ Discord Webhooks - Протестируйте отправку
- Настройте триггеры и типы уведомлений
Поддерживается ли мой тип игры?
Проверьте список поддерживаемых egg ID в разделе “Поддерживаемые игры”. Если вашего типа нет - напишите в поддержку.
Поддержка
Техническая поддержка:
- Discord: @pterohost
- Документация с вставкой UUID: https://gcp.pterohost.com/account/api
Обновления API:
- История изменений публикуется в Discord
- Breaking changes анонсируются заранее
- Версионирование API планируется в будущем
Последнее обновление: 16 декабря 2025 Версия API: 1.0.0