docs: Gateway API — списки сервисов, DDoS-Guard заголовки, метод Виталия

This commit is contained in:
“Naeel”
2026-07-16 13:52:27 +04:00
parent ec1d933221
commit ce92ccb7de
4 changed files with 51 additions and 39 deletions
+27 -16
View File
@@ -13,31 +13,42 @@
**Токены НЕ ПРОТУХАЮТ до декабря 2026.** Они в `secrets/{dev,test,prod}.token`.
Проверить дату: `python3 -c "import json,base64; t=open('secrets/test.token').read().split('.'); d=json.loads(base64.urlsafe_b64decode(t[1]+'==')); from datetime import datetime,timezone; print(datetime.fromtimestamp(d['exp'],tz=timezone.utc))"`
**Старый API (index.cfm) — DDoS-Guard требует 3 заголовка, иначе 403:**
### ⛔ DDoS-Guard: ВСЕГДА нужны 3 заголовка (и старый, и новый API!)
**Без них — 403 Forbidden. Это НЕ протухший токен.**
```bash
-H "Authorization: Bearer $TOKEN"
-H "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36"
-H "Referer: https://deck-{stand}.ngcloud.ru/"
```
### Актуальный API (Gateway) — только его использовать:
| Стенд | Gateway URL | Referer |
|-------|-------------|---------|
| test | `https://lk-api-gateway-test.ngcloud.ru/api/v1/svc` | `https://deck-test.ngcloud.ru/` |
| dev | `https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc` | `https://deck-dev.ngcloud.ru/` |
| prod | `https://lk-api-gateway.ngcloud.ru/api/v1/svc` | `https://deck.ngcloud.ru/` |
### Получить список ВСЕХ сервисов стенда:
```bash
curl -s --max-time 10 \
-H "Authorization: Bearer $(cat secrets/test.token)" \
-H "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36" \
-H "Referer: https://deck-test.ngcloud.ru/" \
"https://deck-api-test.ngcloud.ru/api/v1/index.cfm?endpoint=/services/90"
```
**Referer должен совпадать со стендом!** Без Referer — 403. Без User-Agent — 403.
**Новый Gateway (lk-api-gateway) — только Authorization:**
```bash
curl -s --max-time 10 \
-H "Authorization: Bearer $(cat secrets/test.token)" \
"https://lk-api-gateway-test.ngcloud.ru/api/v1/svc/services/90"
"https://lk-api-gateway-test.ngcloud.ru/api/v1/svc/services" | jq '.results[] | {svcId, svcShort, svc}'
```
| Стенд | Старый API | Новый Gateway | Referer |
|-------|-----------|---------------|---------|
| test | `deck-api-test.ngcloud.ru/api/v1/index.cfm` | `lk-api-gateway-test.ngcloud.ru/api/v1/svc` | `https://deck-test.ngcloud.ru/` |
| dev | `deck-api-dev.ngcloud.ru/api/v1/index.cfm` | `lk-api-gateway-dev.ngcloud.ru/api/v1/svc` | `https://deck-dev.ngcloud.ru/` |
| prod | `deck-api.ngcloud.ru/api/v1/index.cfm` | `lk-api-gateway.ngcloud.ru/api/v1/svc` | `https://deck.ngcloud.ru/` |
Списки сохраняются в `TOOLS/config/{stand}/services_list.txt`.
### ⛔ Старый API (index.cfm) — ЗАКРЫВАЕТСЯ, НЕ ИСПОЛЬЗОВАТЬ
Историческая справка в `apis.txt`. Все упоминания в коде помечены `LEGACY`.
## API и схемы
- Алгоритмы API-дискавери: [docs/70_api/api-discovery-algorithms.md](70_api/api-discovery-algorithms.md)
- **Метод Виталия (получение параметров):** [docs/70_api/api-discovery-algorithms.md](70_api/api-discovery-algorithms.md)
- Полный API-дамп: [docs/70_api/api_analysis/API_DOCUMENTATION_SUMMARY.md](70_api/api_analysis/API_DOCUMENTATION_SUMMARY.md)
## Discovery (полевая информация)