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": "Custom compliance scan",
"frequency": "weekly",
"hour": 6,
"minute": 0,
"dayOfWeek": 3,
"dayOfMonth": null,
"timezone": "Europe/London",
"enabled": true,
"scanType": "compliance",
"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 |
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": "Custom compliance scan",
"frequency": "monthly",
"hour": 3,
"minute": 0,
"dayOfMonth": 1,
"timezone": "UTC",
"scanType": "compliance",
"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 |
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": "Custom compliance scan",
"frequency": "monthly",
"hour": 3,
"minute": 0,
"dayOfMonth": 1,
"timezone": "UTC",
"scanType": "compliance",
"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
}