Skip to content

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/capabilities

Eksempel 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-plan

Eksempel 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-plans

Planstatusværdier

StatusBetydning
pendingGenereret, intet anvendt endnu
completedAlle elementer anvendt og verificeret
partially_appliedNogle elementer anvendt, nogle fejlede eller afventer
failedIntet 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}/apply

Forespørgselsindhold

FeltTypeBeskrivelse
itemIdsstring[]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

StatusBetydning
verifiedAnvendt og bekræftet ved fornyet læsning
appliedAnvendt; Microsoft har endnu ikke bekræftet udbredelsen (tjekkes igen senere)
failedKunne ikke anvendes - se error (f.eks. manglende write consent)
pendingIkke 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.

Var denne side nyttig?