AI Pilot API
Vzdržuje: ekipa Aether365 Občinstvo: razvijalci Obseg: končne točke AI Pilot za odpravljanje napak - ustvarjanje, pregled in uveljavljanje samodejnih popravkov
AI Pilot neuspešne ugotovitve iz vaših skeniranj Compliance in Exposure spremeni v samodejne popravke. Prek API lahko ustvarite načrt odprave napak za skeniranje, pregledate predlagane spremembe in uveljavite tiste, ki jih odobrite. Uveljavitev popravka je vedno izrecni klic, ki ga sprožite sami: nič se ne spremeni, dokler tega ne zahtevate.
Zahteve
Končne točke AI Pilot zahtevajo pravico AI Pilot (Pro ali Enterprise) in povezavo Microsoft 365, vzpostavljeno v načinu AI Pilot (write-consent). Povezava samo za branje lahko ustvari in bere načrte, ne more pa uveljaviti popravkov. Klici vrnejo 403 AUTH_INSUFFICIENT_SCOPE, kadar pravica manjka.
Seznam samodejno odpravljivih preverjanj
Vrne identifikatorje preverjanj, ki jih AI Pilot zna samodejno popraviti. Uporabite ga, da za vsako ugotovitev presodite, ali je na voljo samodejni popravek.
GET /tenants/me/remediation/capabilitiesPrimer odgovora
json
{
"success": true,
"data": { "autoRemediableTestIds": ["AE.1068", "CIS.M365.5.1.2.3", "AE.1102"] }
}Ustvarjanje načrta odprave napak
Sestavi načrt odprave napak za zaključeno skeniranje: po eno postavko za vsako odpravljivo neuspešno ugotovitev, vsaka s trenutno vrednostjo, predlagano varno vrednostjo in nastavitvijo, na katero se nanaša. Branje trenutne vrednosti uporablja obseg branja povezave AI Pilot; nobena sprememba se ne zapiše.
POST /tenants/me/scans/{scanId}/remediation-planPrimer zahteve
bash
curl -X POST https://api.aether365.io/tenants/me/scans/scan_abc123/remediation-plan \
-H "Authorization: Bearer ak_live_..."Primer odgovora
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
}
]
}
}Seznam načrtov odprave napak
Vrne načrte odprave napak najemnika, najnovejše najprej, vsakega z njegovimi postavkami in zbirnim statusom.
GET /tenants/me/remediation-plansVrednosti statusa načrta
| Status | Pomen |
|---|---|
pending | Ustvarjen, nič še ni uveljavljeno |
completed | Vse postavke uveljavljene in potrjene |
partially_applied | Nekatere postavke uveljavljene, nekatere neuspele ali še čakajo |
failed | Nobene postavke ni bilo mogoče uveljaviti |
Pridobitev načrta odprave napak
GET /tenants/me/remediation-plans/{planId}Vrne posamezen načrt (z njegovimi postavkami), omejen na vašega najemnika. Načrt, ki pripada drugemu najemniku, vrne 404 NOT_FOUND.
Uveljavitev načrta odprave napak
Uveljavi izbrane postavke prek povezave AI Pilot: vsaka nastavitev se zapiše prek Microsoft Graph in nato znova prebere, da se potrdi učinkovanje spremembe. Postavke, ki jih ne navedete, ostanejo nedotaknjene, že potrjena postavka pa se nikoli znova ne uveljavi.
POST /tenants/me/remediation-plans/{planId}/applyTelo zahteve
| Polje | Tip | Opis |
|---|---|---|
itemIds | string[] | Identifikatorji postavk načrta za uveljavitev |
Primer zahteve
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"] }'Primer odgovora
Vrne se celoten načrt s posodobljenim status vsake postavke in ob neuspehu z error, ki pojasnjuje razlog.
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"
}
]
}
}Vrednosti statusa postavke
| Status | Pomen |
|---|---|
verified | Uveljavljeno in potrjeno s ponovnim branjem |
applied | Uveljavljeno; Microsoft propagacije še ni potrdil (preverjeno pozneje) |
failed | Ni bilo mogoče uveljaviti - glejte error (npr. manjka soglasje za pisanje) |
pending | V tem klicu ni bilo uveljavljeno |
Človeška odobritev je ohranjena
Bližnjice za "uveljavi vse" ni. Sami izberete načrt in natančne postavke za uveljavitev, tako da samodejni potek dela še vedno ohranja človeka (ali premišljeno odločitev) v zanki.