Skip to content

AI Pilot API

Hazırlayan: Aether365 Ekibi Hedef Kitle: Geliştiriciler Kapsam: AI Pilot remediation endpoint'leri - otomatik düzeltmeleri üret, incele ve uygula

AI Pilot, Compliance ve Exposure taramalarınızdaki başarısız bulguları otomatik düzeltmelere dönüştürür. API üzerinden bir tarama için remediation planı üretebilir, önerilen değişiklikleri inceleyebilir ve onayladıklarınızı uygulayabilirsiniz. Bir düzeltmeyi uygulamak her zaman sizin açıkça yaptığınız bir çağrıdır: siz istemeden hiçbir şey değiştirilmez.

Gereksinimler

AI Pilot endpoint'leri AI Pilot hakkını (Pro veya Enterprise) ve AI Pilot (yazma onayı) modunda bağlanmış bir Microsoft 365 bağlantısını gerektirir. Salt okunur bir bağlantı plan üretip okuyabilir ancak düzeltme uygulayamaz. Hak eksikse çağrılar 403 AUTH_INSUFFICIENT_SCOPE döndürür.

Otomatik Düzeltilebilir Kontrolleri Listele

AI Pilot'un otomatik olarak nasıl düzelteceğini bildiği kontrol ID'lerini döndürür. Her bulgu için otomatik bir düzeltmenin mevcut olup olmadığına karar vermek üzere kullanın.

GET /tenants/me/remediation/capabilities

Örnek Yanıt

json
{
  "success": true,
  "data": { "autoRemediableTestIds": ["AE.1068", "CIS.M365.5.1.2.3", "AE.1102"] }
}

Remediation Planı Üret

Tamamlanmış bir tarama için remediation planı oluşturur: düzeltilebilir her başarısız bulgu için bir öğe, her biri mevcut değer, önerilen güvenli değer ve hedeflediği ayarla birlikte. Mevcut değerin okunması AI Pilot bağlantısının okuma kapsamını kullanır; hiçbir değişiklik yazılmaz.

POST /tenants/me/scans/{scanId}/remediation-plan

Örnek İstek

bash
curl -X POST https://api.aether365.io/tenants/me/scans/scan_abc123/remediation-plan \
  -H "Authorization: Bearer ak_live_..."

Örnek Yanıt

json
{
  "success": true,
  "data": {
    "id": "plan_abc123",
    "scanId": "scan_abc123",
    "msTenantId": "00000000-0000-0000-0000-000000000000",
    "status": "pending",
    "createdAt": "2026-06-17T09:00:00Z",
    "items": [
      {
        "id": "item_1",
        "testId": "AE.1068",
        "coveredTestIds": ["AE.1068", "CIS.M365.5.1.2.3"],
        "actionKey": "require_mfa_admins",
        "title": "Require MFA for administrator roles",
        "settingKey": "conditionalAccess.requireMfaAdmins",
        "currentValue": false,
        "proposedValue": true,
        "status": "pending",
        "appliedBy": null,
        "appliedAt": null,
        "error": null
      }
    ]
  }
}

Remediation Planlarını Listele

Tenant'ın remediation planlarını, en yenisi başta olmak üzere döndürür; her biri öğeleri ve toplulaştırılmış durumuyla birlikte gelir.

GET /tenants/me/remediation-plans

Plan durum değerleri

DurumAnlamı
pendingÜretildi, henüz hiçbir şey uygulanmadı
completedTüm öğeler uygulandı ve doğrulandı
partially_appliedBazı öğeler uygulandı, bazıları başarısız ya da beklemede
failedHiçbir öğe uygulanamadı

Bir Remediation Planını Getir

GET /tenants/me/remediation-plans/{planId}

Tenant'ınıza özel tek bir planı (öğeleriyle birlikte) döndürür. Başka bir tenant'a ait bir plan 404 NOT_FOUND döndürür.


Bir Remediation Planını Uygula

Seçilen öğeleri AI Pilot bağlantısı üzerinden uygular: her ayar Microsoft Graph üzerinden yazılır ve ardından değişikliğin etkili olduğunu doğrulamak için yeniden okunur. Listelemediğiniz öğelere dokunulmaz ve zaten doğrulanmış bir öğe asla yeniden uygulanmaz.

POST /tenants/me/remediation-plans/{planId}/apply

İstek Gövdesi

AlanTürAçıklama
itemIdsstring[]Uygulanacak plan öğelerinin ID'leri

Örnek İstek

bash
curl -X POST https://api.aether365.io/tenants/me/remediation-plans/plan_abc123/apply \
  -H "Authorization: Bearer ak_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "itemIds": ["item_1", "item_2"] }'

Örnek Yanıt

Tam plan, her öğenin güncellenmiş status değeriyle ve başarısızlık durumunda nedenini açıklayan bir error ile birlikte döndürülür.

json
{
  "success": true,
  "data": {
    "id": "plan_abc123",
    "status": "partially_applied",
    "items": [
      {
        "id": "item_1",
        "title": "Require MFA for administrator roles",
        "status": "verified",
        "appliedAt": "2026-06-17T09:05:00Z",
        "error": null
      },
      {
        "id": "item_2",
        "title": "Disable legacy authentication",
        "status": "failed",
        "error": "Write consent is missing or has expired"
      }
    ]
  }
}

Öğe durum değerleri

DurumAnlamı
verifiedUygulandı ve yeniden okuma ile doğrulandı
appliedUygulandı; Microsoft yayılımı henüz onaylamadı (daha sonra yeniden kontrol edilir)
failedUygulanamadı - bkz. error (örneğin yazma onayı eksik)
pendingBu çağrıda uygulanmadı

İnsan onayı korunur

"Hepsini uygula" kısayolu yoktur. Planı ve uygulanacak tam öğeleri siz seçersiniz; böylece otomatik bir iş akışı bile bir insanı (ya da bilinçli bir kararı) döngüde tutar.

Bu sayfa işinize yaradı mı?