API запланованих сканувань
Заплановане сканування визначає повторюване завдання. Кожне заплановане сканування створює перiодичний тригер, який спрацьовує з налаштованим iнтервалом.
Список запланованих сканувань
Повертає всi заплановані сканування для автентифiкованого tenant'у, включаючи автоматичне сканування плану.
GET /tenants/me/scheduled-scansПриклад запиту
bash
curl https://api.aether365.io/tenants/me/scheduled-scans \
-H "Authorization: Bearer <token>"Приклад вiдповiдi
json
{
"success": true,
"data": [
{
"id": "plan",
"isPlanSchedule": true,
"name": "Automatic plan scan",
"frequency": "weekly",
"hour": 0,
"minute": 0,
"dayOfWeek": 0,
"dayOfMonth": 1,
"timezone": "UTC",
"enabled": true,
"scanType": "compliance",
"lastTriggeredAt": "2026-04-07T00:00:00Z"
},
{
"id": "sched_abc123",
"isPlanSchedule": false,
"name": "Weekly exposure scan",
"frequency": "weekly",
"hour": 6,
"minute": 0,
"dayOfWeek": 3,
"dayOfMonth": null,
"timezone": "Europe/London",
"enabled": true,
"scanType": "exposure",
"lastTriggeredAt": "2026-04-09T06:00:00Z"
}
]
}Поля вiдповiдi
| Поле | Тип | Опис |
|---|---|---|
id | string | Iдентифiкатор розкладу ("plan" для автоматичного сканування) |
isPlanSchedule | boolean | true, якщо це автоматичне сканування плану |
name | string | Назва для вiдображення |
frequency | string | daily, weekly або monthly |
hour | integer | Година запуску (0-23) |
minute | integer | Хвилина запуску (0-59) |
dayOfWeek | integer | День тижня для щотижневих розкладiв (0=Пн, 6=Нд) |
dayOfMonth | integer | День мiсяця для щомiсячних розкладiв (1-31) |
timezone | string | Часовий пояс IANA |
enabled | boolean | Чи активний розклад |
scanType | string | compliance або exposure |
lastTriggeredAt | string або null | Часова мiтка ISO 8601 останнього запуску |
Створення запланованого сканування
Створює нове заплановане сканування.
POST /tenants/me/scheduled-scansТiло запиту
json
{
"name": "Monthly exposure scan",
"frequency": "monthly",
"hour": 3,
"minute": 0,
"dayOfMonth": 1,
"timezone": "UTC",
"scanType": "exposure",
"enabled": true
}| Поле | Тип | Обов'язкове | Опис |
|---|---|---|---|
name | string | Так | Назва для вiдображення |
frequency | string | Так | daily, weekly або monthly |
hour | integer | Так | 0-23 |
minute | integer | Так | 0-59 |
dayOfWeek | integer | Для weekly | 0=Пн, 6=Нд |
dayOfMonth | integer | Для monthly | 1-31 |
timezone | string | Так | Часовий пояс IANA (наприклад, UTC, Europe/Berlin) |
scanType | string | Так | compliance або exposure |
enabled | boolean | Нi | За замовчуванням true |
Приклад запиту
bash
curl -X POST https://api.aether365.io/tenants/me/scheduled-scans \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Monthly exposure scan",
"frequency": "monthly",
"hour": 3,
"minute": 0,
"dayOfMonth": 1,
"timezone": "UTC",
"scanType": "exposure",
"enabled": true
}'Помилки
| Код | HTTP | Опис |
|---|---|---|
SCAN_PLAN_LIMIT_REACHED | 429 | Досягнуто лiмiту власних розкладiв для плану |
VALIDATION_ERROR | 400 | Вiдсутнi або невалiднi поля |
Оновлення запланованого сканування
Оновлює iснуюче заплановане сканування. Змiнюються лише включенi поля.
PATCH /tenants/me/scheduled-scans/{scheduledScanId}Приклад: Призупинення розкладу
bash
curl -X PATCH https://api.aether365.io/tenants/me/scheduled-scans/sched_abc123 \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"enabled": false}'Приклад: Змiна години
bash
curl -X PATCH https://api.aether365.io/tenants/me/scheduled-scans/sched_abc123 \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"hour": 8}'Видалення запланованого сканування
Остаточно видаляє заплановане сканування та його базовий розклад.
DELETE /tenants/me/scheduled-scans/{scheduledScanId}WARNING
Автоматичне сканування плану (id: "plan") неможливо видалити через API.
Приклад запиту
bash
curl -X DELETE https://api.aether365.io/tenants/me/scheduled-scans/sched_abc123 \
-H "Authorization: Bearer <token>"Приклад вiдповiдi
json
{
"success": true,
"data": null
}