AI Pilot API
Vedligeholdes af: Aether365 Team Målgruppe: Udviklere Omfang: AI Pilot-endpoints til afhjælpning - generér, gennemgå og anvend automatiske rettelser
AI Pilot omsætter fejlede fund fra dine Compliance- og Exposure-scanninger til automatiske rettelser. Via API'et kan du generere en afhjælpningsplan for en scanning, gennemgå de foreslåede ændringer og anvende dem, du godkender. At anvende en rettelse er altid et eksplicit kald, du foretager: intet ændres, før du beder om det.
Krav
AI Pilot-endpoints kræver AI Pilot-rettigheden (Pro eller Enterprise) og en Microsoft 365-forbindelse, der er tilknyttet i AI Pilot (write-consent)-tilstand. En skrivebeskyttet forbindelse kan generere og læse planer, men kan ikke anvende rettelser. Kald returnerer 403 AUTH_INSUFFICIENT_SCOPE, når rettigheden mangler.
Vis automatisk afhjælpelige tjek
Returnerer de tjek-ID'er, AI Pilot ved, hvordan den retter automatisk. Brug det til, pr. fund, at afgøre om en automatisk rettelse er tilgængelig.
GET /tenants/me/remediation/capabilitiesEksempel på svar
json
{
"success": true,
"data": { "autoRemediableTestIds": ["AE.1068", "CIS.M365.5.1.2.3", "AE.1102"] }
}Generér en afhjælpningsplan
Bygger en afhjælpningsplan for en gennemført scanning: ét element pr. fejlet fund, der kan rettes, hvert med den aktuelle værdi, den foreslåede sikre værdi og den indstilling, det retter sig mod. Læsning af den aktuelle værdi bruger AI Pilot-forbindelsens læseadgang; ingen ændring skrives.
POST /tenants/me/scans/{scanId}/remediation-planEksempel på forespørgsel
bash
curl -X POST https://api.aether365.io/tenants/me/scans/scan_abc123/remediation-plan \
-H "Authorization: Bearer ak_live_..."Eksempel på svar
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
}
]
}
}Vis afhjælpningsplaner
Returnerer tenantens afhjælpningsplaner, nyeste først, hver med sine elementer og samlet status.
GET /tenants/me/remediation-plansPlanstatusværdier
| Status | Betydning |
|---|---|
pending | Genereret, intet anvendt endnu |
completed | Alle elementer anvendt og verificeret |
partially_applied | Nogle elementer anvendt, nogle fejlede eller afventer |
failed | Intet element kunne anvendes |
Hent en afhjælpningsplan
GET /tenants/me/remediation-plans/{planId}Returnerer en enkelt plan (med dens elementer) afgrænset til din tenant. En plan, der tilhører en anden tenant, returnerer 404 NOT_FOUND.
Anvend en afhjælpningsplan
Anvender de valgte elementer via AI Pilot-forbindelsen: hver indstilling skrives gennem Microsoft Graph og læses derefter igen for at bekræfte, at ændringen trådte i kraft. Elementer, du ikke angiver, forbliver urørte, og et allerede verificeret element anvendes aldrig igen.
POST /tenants/me/remediation-plans/{planId}/applyForespørgselsindhold
| Felt | Type | Beskrivelse |
|---|---|---|
itemIds | string[] | ID'er på de planelementer, der skal anvendes |
Eksempel på forespørgsel
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"] }'Eksempel på svar
Den fulde plan returneres med hvert elements opdaterede status og, ved fejl, en error, der forklarer hvorfor.
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"
}
]
}
}Elementstatusværdier
| Status | Betydning |
|---|---|
verified | Anvendt og bekræftet ved fornyet læsning |
applied | Anvendt; Microsoft har endnu ikke bekræftet udbredelsen (tjekkes igen senere) |
failed | Kunne ikke anvendes - se error (f.eks. manglende write consent) |
pending | Ikke anvendt i dette kald |
Menneskelig godkendelse bevares
Der findes ingen genvej til at "anvende alt". Du vælger planen og præcis de elementer, der skal anvendes, så et automatiseret arbejdsforløb stadig holder et menneske (eller en bevidst beslutning) i loopet.