Открой cpanel → API ключи → выбери нужные scopes.
Один API для Core и твоих проектов.
Проверяй лицензии, получай список продуктов, активируй AegisCore и раздавай подписанные обновления через единый защищённый API.
GET /v1/health
{
"ok": true,
"service": "AegisLab Core API",
"version": "v1"
}TLS · Ed25519 runtime tokens · SHA-256 key storageБыстрый старт
Для собственных backend-проектов создай API ключ в панели. Секрет показывается один раз и хранится на сервере проекта, а не в браузере или клиентском JavaScript.
Например, в переменной окружения AEGIS_API_KEY.
Передавай ключ в Authorization: Bearer.
curl https://api.core.aegislab.top/v1/health
Авторизация
Developer endpoints используют ключи вида aegis_live_.... Ключи хранятся в базе только как SHA-256 hash. Для каждого ключа задаются отдельные права.
| SCOPE | НАЗНАЧЕНИЕ |
|---|---|
licenses.verify | Проверка лицензии конкретного AegisLab-продукта. |
projects.read | Чтение списка активных проектов/продуктов. |
Проверка лицензии
/v1/licenses/verifyscope: licenses.verifyПроверяет ключ лицензии и доступ к конкретному продукту.
- licenseKey — ключ AEGIS-...
- product — slug продукта, например aegis-core
- HTTP 200 возвращается и для valid=false — это результат проверки, а не ошибка API.
curl -X POST https://api.core.aegislab.top/v1/licenses/verify \
-H "Authorization: Bearer aegis_live_xxxxx" \
-H "Content-Type: application/json" \
-d '{
"licenseKey": "AEGIS-XXXX-XXXX-XXXX-XXXX",
"product": "aegis-core"
}'
{
"valid": true,
"reason": "active",
"license": {
"id": "lic_...",
"status": "active",
"product": "aegis-core",
"expiresAt": null
}
}Каталог проектов
/v1/projectsscope: projects.readВозвращает активные продукты из панели AegisLab. Slug из этого ответа используется в проверке лицензий.
curl https://api.core.aegislab.top/v1/projects \ -H "Authorization: Bearer aegis_live_xxxxx"
AegisCore endpoints
Эти методы используются самим Minecraft-плагином. Developer API key для них не нужен: активация идёт по licenseKey + server identity, после чего API выдаёт короткоживущий подписанный runtime token.
/v1/activateAegisCoreПервая активация привязывает mode к fingerprint сервера. Последующие вызовы работают как heartbeat и обновляют онлайн, версии и список установленных Aegis-модулей.
curl -X POST https://api.core.aegislab.top/v1/activate \
-H "Content-Type: application/json" \
-d '{
"licenseKey": "AEGIS-...",
"serverName": "Grief-1",
"publicKey": "...",
"minecraftVersion": "1.16.5",
"coreVersion": "0.1.1",
"channel": "stable",
"serverPort": 25565,
"onlinePlayers": 42,
"maxPlayers": 250,
"aegisModules": []
}'/v1/manifest/{channel}stable · beta · devВозвращает список опубликованных релизов и Ed25519-подписанный manifest token.
curl https://api.core.aegislab.top/v1/manifest/stable
/v1/releases/{id}/downloadruntime Bearer tokenСкачивает только опубликованный JAR, который входит в products текущей лицензии.
curl https://api.core.aegislab.top/v1/releases/rel_xxx/download \ -H "Authorization: Bearer eyJ..." \ -o AegisPlugin.jar
Коды ошибок
| HTTP | КОГДА |
|---|---|
400 | Неверный JSON или обязательные поля. |
401 | API key / runtime token отсутствует или недействителен. |
403 | Нет scope, лицензия отклонена или продукт недоступен. |
404 | Endpoint, релиз или объект не найден. |
409 | AegisCore пытается активировать лицензию с другим server fingerprint. |