Zamanlanmış Taramalar API
Hazırlayan: Aether365 Ekibi Hedef Kitle: Geliştiriciler Kapsam: Zamanlanmış tarama API endpoint'leri - tarama zamanlamalarını oluşturma ve yönetme
Zamanlanmış taramalar, tekrarlayan tarama işlerini tanımlar. Her zamanlanmış tarama, yapılandırılmış aralıkta tetiklenen tekrarlayan bir zamanlayıcı belirler.
Zamanlanmış Taramaları Listeleme
Kimlik doğrulanmış tenant için otomatik plan taraması dahil tüm zamanlanmış taramaları döndürür.
GET /tenants/me/scheduled-scansÖrnek İstek
bash
curl https://api.aether365.io/tenants/me/scheduled-scans \
-H "Authorization: Bearer <token>"Örnek Yanıt
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"
}
]
}Yanıt Alanları
| Alan | Tür | Açıklama |
|---|---|---|
id | string | Zamanlama tanımlayıcısı (otomatik plan zamanlaması için "plan") |
isPlanSchedule | boolean | Otomatik plan taramasıysa true |
name | string | Görünen ad |
frequency | string | daily, weekly veya monthly |
hour | integer | Tetikleme saati (0-23) |
minute | integer | Tetikleme dakikası (0-59) |
dayOfWeek | integer | Haftalık zamanlamalar için haftanın günü (0=Pzt, 6=Paz) |
dayOfMonth | integer | Aylık zamanlamalar için ayın günü (1-31) |
timezone | string | IANA saat dilimi dizesi |
enabled | boolean | Zamanlamanın aktif olup olmadığı |
scanType | string | compliance veya exposure |
lastTriggeredAt | string veya null | Son tetiklemenin ISO 8601 zaman damgası |
Zamanlanmış Tarama Oluşturma
Yeni bir zamanlanmış tarama oluşturur.
POST /tenants/me/scheduled-scansİstek Gövdesi
json
{
"name": "Monthly exposure scan",
"frequency": "monthly",
"hour": 3,
"minute": 0,
"dayOfMonth": 1,
"timezone": "UTC",
"scanType": "exposure",
"enabled": true
}| Alan | Tür | Gerekli | Açıklama |
|---|---|---|---|
name | string | Evet | Görünen ad |
frequency | string | Evet | daily, weekly veya monthly |
hour | integer | Evet | 0-23 |
minute | integer | Evet | 0-59 |
dayOfWeek | integer | Haftalık için | 0=Pzt, 6=Paz |
dayOfMonth | integer | Aylık için | 1-31 |
timezone | string | Evet | IANA saat dilimi (ör. UTC, Europe/Berlin) |
scanType | string | Evet | compliance veya exposure |
enabled | boolean | Hayır | Varsayılan true |
Örnek İstek
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
}'Hatalar
| Kod | HTTP | Açıklama |
|---|---|---|
SCAN_PLAN_LIMIT_REACHED | 429 | Planınız için özel zamanlama limiti aşıldı |
VALIDATION_ERROR | 400 | Eksik veya geçersiz alanlar |
Zamanlanmış Taramayı Güncelleme
Mevcut bir zamanlanmış taramayı günceller. Yalnızca gönderdiğiniz alanlar güncellenir.
PATCH /tenants/me/scheduled-scans/{scheduledScanId}Örnek: Zamanlamayı duraklatma
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}'Örnek: Saati değiştirme
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}'Zamanlanmış Taramayı Silme
Zamanlanmış taramayı ve altta yatan zamanlamayı kalıcı olarak siler.
DELETE /tenants/me/scheduled-scans/{scheduledScanId}WARNING
Otomatik plan taraması (id: "plan") API aracılığıyla silinemez.
Örnek İstek
bash
curl -X DELETE https://api.aether365.io/tenants/me/scheduled-scans/sched_abc123 \
-H "Authorization: Bearer <token>"Örnek Yanıt
json
{
"success": true,
"data": null
}