Openclaw Intune Skill
by @mattiacirillo
Manage Microsoft Intune and Entra ID device management via the Microsoft Graph API. Use this skill whenever the user mentions Intune, MDM, managed devices, device compliance, device sync/reboot/lock/wipe/retire, Autopilot, enrollment, compliance or configuration policies, Settings Catalog, Condition
clawhub install openclaw-intune-skill📖 About This Skill
name: Intune Graph API – Complete Management description: "A comprehensive skill enabling OpenClaw agents to fully manage Microsoft Intune via the Graph API. Covers devices, apps, policies, compliance, users, groups, reporting, Autopilot, scripts, and remote actions." version: "1.0.1" author: "Mattia Cirillo" homepage: "https://kaffeeundcode.com" requires: env: - INTUNE_TENANT_ID - INTUNE_CLIENT_ID - INTUNE_CLIENT_SECRET
Microsoft Intune – Complete Management Skill
This skill gives the agent full control over Microsoft Intune via the Microsoft Graph API. It covers device management, application deployment, compliance & configuration policies, user & group management, Autopilot, PowerShell scripts, reporting, and all remote device actions.
🔑 Authentication
Before ANY Intune operation, the agent MUST obtain an OAuth 2.0 access token.
The following environment variables must be configured:
INTUNE_TENANT_ID – Microsoft 365 Tenant IDINTUNE_CLIENT_ID – Entra ID App Registration Client IDINTUNE_CLIENT_SECRET – Entra ID App Registration SecretToken Request
POSThttps://login.microsoftonline.com/{INTUNE_TENANT_ID}/oauth2/v2.0/tokenBody (x-www-form-urlencoded):
client_id={INTUNE_CLIENT_ID}
&scope=https://graph.microsoft.com/.default
&client_secret={INTUNE_CLIENT_SECRET}
&grant_type=client_credentials
Extract access_token from the JSON response. Use it as:
Authorization: Bearer
Required API Permissions (App Registration)
The Entra ID App Registration needs the following Microsoft Graph Application permissions:DeviceManagementManagedDevices.ReadWrite.AllDeviceManagementConfiguration.ReadWrite.AllDeviceManagementApps.ReadWrite.AllDeviceManagementServiceConfig.ReadWrite.AllDeviceManagementRBAC.ReadWrite.AllDirectory.Read.AllUser.Read.AllGroup.ReadWrite.AllGroupMember.ReadWrite.All🛡️ Safety Rules (CRITICAL)
1. Read operations (GET): Always safe. Execute without confirmation. 2. Sync/Restart operations: Ask for confirmation: *"Soll ich Gerät X wirklich syncen/neustarten?"* 3. Destructive operations (Wipe, Retire, Delete): ALWAYS require explicit confirmation. Say: *"⚠️ Achtung: Das löscht alle Daten auf dem Gerät. Bist du sicher?"* 4. Policy creation/modification: Confirm before applying: *"Soll ich diese Policy wirklich erstellen/ändern?"* 5. Never dump raw JSON to the user. Always format output as readable Markdown tables or summaries. 6. Error handling: If an API call returns an error, explain the error in simple German and suggest a fix.
📱 1. Device Management
1.1 List All Managed Devices
GEThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevicesUse $select to limit fields: ?$select=deviceName,operatingSystem,complianceState,lastSyncDateTime,userPrincipalName
Present results as a table: | Gerätename | OS | Compliance | Letzter Sync | Benutzer |
1.2 Search for a Specific Device
GEThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevices?$filter=deviceName eq '{deviceName}'Alternative search by user: ?$filter=userPrincipalName eq '{user@domain.com}'
1.3 Get Device Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}Show: Device name, Serial number, OS version, Compliance state, Encryption status, Last sync, Enrolled date, Primary user.
1.4 Remote Actions on a Device
#### Sync Device
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/syncDevice
#### Reboot Device
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/rebootNow
#### Lock Device (Remote Lock)
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/remoteLock
#### Reset Passcode
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/resetPasscode
#### Locate Device (Lost Mode – iOS/Android)
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/locateDevice
#### Retire Device (Remove Company Data Only)
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/retire
⚠️ SAFETY: Requires explicit user confirmation!
#### Wipe Device (Factory Reset)
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/wipe
⚠️ SAFETY: ALWAYS ask twice! This deletes ALL data!
#### Delete Device from Intune
DELETE https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}
⚠️ SAFETY: Requires explicit user confirmation!
#### Rename Device
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/setDeviceName
Body: {"deviceName": "NEW-NAME"}
#### Enable/Disable Lost Mode (iOS supervised)
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/enableLostMode
Body: {"message": "Dieses Gerät wurde als verloren gemeldet.", "phoneNumber": "+49...", "footer": "Kaffee & Code IT"}
POST https://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/disableLostMode
📋 2. Compliance Policies
2.1 List All Compliance Policies
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceCompliancePoliciesPresent as: | Policy Name | Platform | Created | Last Modified |
2.2 Get Compliance Policy Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceCompliancePolicies/{policyId}2.3 Get Compliance Policy Assignments
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceCompliancePolicies/{policyId}/assignments2.4 Get Device Compliance Status per Policy
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceCompliancePolicies/{policyId}/deviceStatuses2.5 Create a Compliance Policy
POSThttps://graph.microsoft.com/v1.0/deviceManagement/deviceCompliancePolicies
⚠️ SAFETY: Confirm before creating.2.6 Delete a Compliance Policy
DELETEhttps://graph.microsoft.com/v1.0/deviceManagement/deviceCompliancePolicies/{policyId}
⚠️ SAFETY: Requires explicit user confirmation!⚙️ 3. Configuration Policies & Profiles
3.1 List Configuration Policies (Recommended API)
GEThttps://graph.microsoft.com/v1.0/deviceManagement/configurationPoliciesThis is the modern, recommended endpoint covering Endpoint Security, Administrative Templates, and Settings Catalog.
3.2 List Legacy Device Configuration Profiles
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations3.3 Get Configuration Policy Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/configurationPolicies/{policyId}3.4 Get Policy Settings
GEThttps://graph.microsoft.com/v1.0/deviceManagement/configurationPolicies/{policyId}/settings3.5 Get Policy Assignments
GEThttps://graph.microsoft.com/v1.0/deviceManagement/configurationPolicies/{policyId}/assignments3.6 Get Device Status per Config Profile
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations/{configId}/deviceStatuses3.7 Create Configuration Policy
POSThttps://graph.microsoft.com/v1.0/deviceManagement/configurationPolicies
⚠️ SAFETY: Confirm before creating.3.8 Delete Configuration Policy
DELETEhttps://graph.microsoft.com/v1.0/deviceManagement/configurationPolicies/{policyId}
⚠️ SAFETY: Requires explicit user confirmation!📦 4. App Management
4.1 List All Apps
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/mobileAppsPresent as: | App Name | Type | Publisher | Created |
4.2 Get App Details
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/mobileApps/{appId}4.3 Get App Assignments (Who gets the app?)
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/mobileApps/{appId}/assignments4.4 List App Configuration Policies
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/managedAppPolicies4.5 List App Protection Policies (MAM)
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/managedAppRegistrations4.6 Assign App to a Group
POSThttps://graph.microsoft.com/v1.0/deviceAppManagement/mobileApps/{appId}/assignments
⚠️ SAFETY: Confirm before assigning.4.7 List Detected Apps on Devices
GEThttps://graph.microsoft.com/v1.0/deviceManagement/detectedApps4.8 Get Devices with a Specific Detected App
GEThttps://graph.microsoft.com/v1.0/deviceManagement/detectedApps/{detectedAppId}/managedDevices🔒 5. Endpoint Security
5.1 List Security Baselines
GEThttps://graph.microsoft.com/beta/deviceManagement/configurationPolicies?$filter=templateReference/templateFamily eq 'baseline'5.2 List Disk Encryption Policies (BitLocker/FileVault)
GEThttps://graph.microsoft.com/beta/deviceManagement/configurationPolicies?$filter=templateReference/templateFamily eq 'endpointSecurityDiskEncryption'5.3 List Firewall Policies
GEThttps://graph.microsoft.com/beta/deviceManagement/configurationPolicies?$filter=templateReference/templateFamily eq 'endpointSecurityFirewall'5.4 List Antivirus Policies (Defender)
GEThttps://graph.microsoft.com/beta/deviceManagement/configurationPolicies?$filter=templateReference/templateFamily eq 'endpointSecurityAntivirus'5.5 List Attack Surface Reduction Rules
GEThttps://graph.microsoft.com/beta/deviceManagement/configurationPolicies?$filter=templateReference/templateFamily eq 'endpointSecurityAttackSurfaceReduction'🚀 6. Windows Autopilot
6.1 List Autopilot Devices
GEThttps://graph.microsoft.com/v1.0/deviceManagement/windowsAutopilotDeviceIdentitiesPresent as: | Serial Number | Model | Group Tag | Enrollment State | Last Seen |
6.2 Get Autopilot Device Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/windowsAutopilotDeviceIdentities/{id}6.3 List Autopilot Deployment Profiles
GEThttps://graph.microsoft.com/v1.0/deviceManagement/windowsAutopilotDeploymentProfiles6.4 Assign Autopilot Profile
POSThttps://graph.microsoft.com/v1.0/deviceManagement/windowsAutopilotDeviceIdentities/{id}/assignUserToDevice
Body: {"userPrincipalName": "user@domain.com"}6.5 Delete Autopilot Device
DELETEhttps://graph.microsoft.com/v1.0/deviceManagement/windowsAutopilotDeviceIdentities/{id}
⚠️ SAFETY: Requires explicit user confirmation!📜 7. PowerShell Scripts & Remediation
7.1 List Device Management Scripts
GEThttps://graph.microsoft.com/beta/deviceManagement/deviceManagementScripts7.2 Get Script Details
GEThttps://graph.microsoft.com/beta/deviceManagement/deviceManagementScripts/{scriptId}7.3 Get Script Execution Status per Device
GEThttps://graph.microsoft.com/beta/deviceManagement/deviceManagementScripts/{scriptId}/deviceRunStates7.4 Create/Upload a PowerShell Script
POSThttps://graph.microsoft.com/beta/deviceManagement/deviceManagementScripts
Body must include scriptContent as Base64-encoded string.
⚠️ SAFETY: Confirm before uploading. Show the script content to the user first.7.5 List Proactive Remediations (Health Scripts)
GEThttps://graph.microsoft.com/beta/deviceManagement/deviceHealthScripts7.6 Get Remediation Script Execution Results
GEThttps://graph.microsoft.com/beta/deviceManagement/deviceHealthScripts/{scriptId}/deviceRunStates👥 8. Users & Groups
8.1 List Users
GEThttps://graph.microsoft.com/v1.0/users?$select=displayName,userPrincipalName,accountEnabled,jobTitle8.2 Search User
GEThttps://graph.microsoft.com/v1.0/users?$filter=startsWith(displayName,'{name}')8.3 Get User Details
GEThttps://graph.microsoft.com/v1.0/users/{userId}8.4 List Groups
GEThttps://graph.microsoft.com/v1.0/groups?$select=displayName,description,groupTypes,membershipRule8.5 Get Group Members
GEThttps://graph.microsoft.com/v1.0/groups/{groupId}/members8.6 Add User to Group
POSThttps://graph.microsoft.com/v1.0/groups/{groupId}/members/$ref
Body: {"@odata.id": "https://graph.microsoft.com/v1.0/directoryObjects/{userId}"}
⚠️ SAFETY: Confirm before adding.8.7 Remove User from Group
DELETEhttps://graph.microsoft.com/v1.0/groups/{groupId}/members/{userId}/$ref
⚠️ SAFETY: Confirm before removing.8.8 List Devices for a User
GEThttps://graph.microsoft.com/v1.0/users/{userId}/managedDevices📊 9. Reporting & Dashboards
9.1 Device Compliance Summary
GEThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevices?$select=complianceState
Agent should calculate: X compliant, Y non-compliant, Z in-grace-period, and present as summary + table.9.2 OS Distribution Summary
GEThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevices?$select=operatingSystem
Agent should group by OS and present: "42 Windows, 15 iOS, 8 Android, 3 macOS"9.3 Stale Devices (Not synced recently)
GEThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevices?$filter=lastSyncDateTime lt {30_days_ago}&$select=deviceName,lastSyncDateTime,userPrincipalName
Agent should calculate the date for 30 days ago automatically.9.4 Non-Compliant Devices Report
GEThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevices?$filter=complianceState eq 'noncompliant'&$select=deviceName,complianceState,userPrincipalName,operatingSystem9.5 Export Report Job
POSThttps://graph.microsoft.com/beta/deviceManagement/reports/exportJobs
Body: {"reportName": "Devices", "filter": "", "select": ["DeviceName","OS","ComplianceState"]}🏷️ 10. Device Categories & Enrollment
10.1 List Device Categories
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceCategories10.2 Create Device Category
POSThttps://graph.microsoft.com/v1.0/deviceManagement/deviceCategories
Body: {"displayName": "Kategoriename", "description": "Beschreibung"}10.3 Set Device Category on a Device
PUThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{deviceId}/deviceCategory/$ref10.4 List Enrollment Restrictions
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceEnrollmentConfigurations🔄 11. RBAC (Role-Based Access Control)
11.1 List Intune Roles
GEThttps://graph.microsoft.com/v1.0/deviceManagement/roleDefinitions11.2 List Role Assignments
GEThttps://graph.microsoft.com/v1.0/deviceManagement/roleAssignments11.3 Get Role Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/roleDefinitions/{roleId}💡 Agent Response Guidelines
When the user asks a question, follow this logic:
1. "Zeig mir alle Geräte" → Use 1.1, format as table.
2. "Ist Gerät X compliant?" → Use 1.2 to find it, then check complianceState.
3. "Sync Laptop von Max" → Use 1.2 to find managedDeviceId, then use 1.4 Sync.
4. "Wie viele Geräte hab ich?" → Use 9.2, give OS distribution + total count.
5. "Welche Geräte haben sich lange nicht gemeldet?" → Use 9.3.
6. "Erstell mir eine Compliance Policy für Windows" → Use 2.5, ask for requirements first.
7. "Welche Apps sind deployed?" → Use 4.1.
8. "Füg User Max zur Gruppe IT-Geräte hinzu" → Use 8.2 to find user, 8.4 to find group, then 8.6.
9. "Zeig mir den Status vom PowerShell Script XY" → Use 7.3.
10. "Gib mir einen Compliance Report" → Use 9.1 + 9.4.
11. "Zeig mir die Conditional Access Policies" → Use 12.1.
12. "Welche WLAN-Profile sind deployed?" → Use 13.1.
13. "Wie sind meine Windows Update Ringe konfiguriert?" → Use 14.1.
14. "Wer hat letzte Woche was in Intune geändert?" → Use 17.1.
15. "Kann Intune die Einstellung XY konfigurieren?" → Use 18.1 Settings Catalog search.
16. "Zeig mir alle Autopilot-Geräte ohne zugewiesenes Profil" → Use 6.1 + filter.
🛡️ 12. Conditional Access (Bedingter Zugriff)
12.1 List Conditional Access Policies
GEThttps://graph.microsoft.com/v1.0/identity/conditionalAccess/policiesPresent as: | Policy Name | State (enabled/disabled/report) | Conditions | Grant Controls |
12.2 Get Conditional Access Policy Details
GEThttps://graph.microsoft.com/v1.0/identity/conditionalAccess/policies/{policyId}12.3 Create Conditional Access Policy
POSThttps://graph.microsoft.com/v1.0/identity/conditionalAccess/policies
⚠️ SAFETY: Always confirm before creating. Show the user a summary of what the policy will do first.
💡 TIP: Recommend creating in "reportOnly" state first for testing.12.4 Update Conditional Access Policy
PATCHhttps://graph.microsoft.com/v1.0/identity/conditionalAccess/policies/{policyId}
⚠️ SAFETY: Confirm before modifying. Explain what will change.12.5 Delete Conditional Access Policy
DELETEhttps://graph.microsoft.com/v1.0/identity/conditionalAccess/policies/{policyId}
⚠️ SAFETY: Requires explicit user confirmation!12.6 List Named Locations (Trusted IPs / Countries)
GEThttps://graph.microsoft.com/v1.0/identity/conditionalAccess/namedLocations12.7 Create Named Location
POSThttps://graph.microsoft.com/v1.0/identity/conditionalAccess/namedLocations
Example IP-based:
{
"@odata.type": "#microsoft.graph.ipNamedLocation",
"displayName": "Büro-Netzwerk",
"isTrusted": true,
"ipRanges": [{"@odata.type": "#microsoft.graph.iPv4CidrRange", "cidrAddress": "192.168.1.0/24"}]
}
12.8 List Authentication Strengths
GEThttps://graph.microsoft.com/v1.0/identity/conditionalAccess/authenticationStrength/policies📶 13. WLAN, VPN & Zertifikate
13.1 List WLAN Profiles
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations?$filter=isof('microsoft.graph.windowsWifiConfiguration') or isof('microsoft.graph.iosWiFiConfiguration') or isof('microsoft.graph.androidWorkProfileWiFiConfiguration')Alternative (all configs, then filter by odata.type for Wi-Fi):
GET https://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations
Agent should filter results where @odata.type contains WiFi or wifi.
13.2 List VPN Profiles
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations
Agent should filter results where @odata.type contains Vpn or vpn.13.3 Get WLAN/VPN Profile Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations/{configId}13.4 Get WLAN/VPN Profile Assignment
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations/{configId}/assignments13.5 List SCEP Certificate Profiles
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations
Agent should filter results where @odata.type contains Scep or Certificate.13.6 List PKCS Certificate Profiles
Same endpoint, filter forPkcs in @odata.type.13.7 List Trusted Root Certificate Profiles
Same endpoint, filter forTrustedRootCertificate in @odata.type.🔄 14. Windows Update Management
14.1 List Windows Update Rings
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations?$filter=isof('microsoft.graph.windowsUpdateForBusinessConfiguration')Present as: | Ring Name | Deferral (Days) | Quality Updates | Feature Updates | Assigned To |
14.2 Get Update Ring Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceConfigurations/{ringId}14.3 List Feature Update Profiles
GEThttps://graph.microsoft.com/beta/deviceManagement/windowsFeatureUpdateProfiles14.4 Get Feature Update Profile Details
GEThttps://graph.microsoft.com/beta/deviceManagement/windowsFeatureUpdateProfiles/{profileId}14.5 Get Feature Update Deployment State per Device
GEThttps://graph.microsoft.com/beta/deviceManagement/windowsFeatureUpdateProfiles/{profileId}/deviceUpdateStates14.6 List Driver Update Profiles
GEThttps://graph.microsoft.com/beta/deviceManagement/windowsDriverUpdateProfiles14.7 Get Driver Update Profile Details
GEThttps://graph.microsoft.com/beta/deviceManagement/windowsDriverUpdateProfiles/{profileId}14.8 List Quality Update Profiles (Expedited Updates)
GEThttps://graph.microsoft.com/beta/deviceManagement/windowsQualityUpdateProfiles14.9 Pause/Resume an Update Ring
POSThttps://graph.microsoft.com/beta/deviceManagement/deviceConfigurations/{ringId}/windowsUpdateForBusinessConfiguration/pause
POST https://graph.microsoft.com/beta/deviceManagement/deviceConfigurations/{ringId}/windowsUpdateForBusinessConfiguration/resume
⚠️ SAFETY: Confirm before pausing/resuming.🍎 15. Apple Device Management
15.1 List Apple DEP/ADE Enrollment Profiles
GEThttps://graph.microsoft.com/beta/deviceManagement/depOnboardingSettings15.2 List Apple DEP Tokens
GEThttps://graph.microsoft.com/beta/deviceManagement/depOnboardingSettings/{depId}/enrollmentProfiles15.3 List Apple Push Notification Certificate Info
GEThttps://graph.microsoft.com/v1.0/deviceManagement/applePushNotificationCertificateShows: Expiration date, Subject, Certificate serial number. 💡 Agent should proactively warn if certificate expires within 30 days!
15.4 List VPP Tokens (Volume Purchase Program)
GEThttps://graph.microsoft.com/beta/deviceManagement/vppTokens15.5 List iOS/macOS Managed App Configurations
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/managedAppPolicies
Filter for iOS/macOS types.15.6 Activation Lock Bypass (iOS Supervised)
POSThttps://graph.microsoft.com/v1.0/deviceManagement/managedDevices/{managedDeviceId}/bypassActivationLock
⚠️ SAFETY: Requires explicit user confirmation!🤖 16. Android Enterprise Management
16.1 List Android Managed Store Apps
GEThttps://graph.microsoft.com/beta/deviceManagement/androidManagedStoreAccountEnterpriseSettings16.2 List Android Enrollment Profiles
GEThttps://graph.microsoft.com/beta/deviceManagement/androidDeviceOwnerEnrollmentProfiles16.3 Get Android Enterprise Binding Status
GEThttps://graph.microsoft.com/beta/deviceManagement/androidManagedStoreAccountEnterpriseSettingsShows if Android Enterprise (Work Profile / Fully Managed / Dedicated) is connected.
16.4 List Android App Protection Policies
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/androidManagedAppProtections📝 17. Audit Logs & Activity
17.1 List Intune Audit Events
GEThttps://graph.microsoft.com/v1.0/deviceManagement/auditEventsPresent as: | Date | Activity | Actor (who) | Target | Result |
17.2 Filter Audit Events by Date Range
GEThttps://graph.microsoft.com/v1.0/deviceManagement/auditEvents?$filter=activityDateTime gt {startDate} and activityDateTime lt {endDate}Agent should calculate the date range based on user request (e.g., "letzte Woche" → last 7 days).
17.3 Filter Audit Events by User
GEThttps://graph.microsoft.com/v1.0/deviceManagement/auditEvents?$filter=actor/userPrincipalName eq '{user@domain.com}'17.4 Get Audit Event Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/auditEvents/{auditEventId}17.5 List Directory Audit Logs (Entra ID level)
GEThttps://graph.microsoft.com/v1.0/auditLogs/directoryAudits?$filter=category eq 'Device'17.6 List Sign-In Logs
GEThttps://graph.microsoft.com/v1.0/auditLogs/signIns?$filter=appDisplayName eq 'Microsoft Intune'🏗️ 18. Settings Catalog & GPO Analytics
18.1 Search Settings Catalog
GEThttps://graph.microsoft.com/beta/deviceManagement/configurationSettings?$search="{searchTerm}"This is extremely useful when the user asks: "Can Intune configure setting X?" or "Hat Intune eine Einstellung für Bildschirmschoner?"
18.2 List Group Policy Migration Reports
GEThttps://graph.microsoft.com/beta/deviceManagement/groupPolicyMigrationReportsUse this when the user asks about migrating from on-premises GPO to Intune.
18.3 Get Migration Report Details
GEThttps://graph.microsoft.com/beta/deviceManagement/groupPolicyMigrationReports/{reportId}Shows: Which GPO settings are supported in Intune, which are not, and recommended alternatives.
18.4 List Group Policy Uploaded Definition Files
GEThttps://graph.microsoft.com/beta/deviceManagement/groupPolicyUploadedDefinitionFiles📄 19. Terms & Conditions and Notifications
19.1 List Terms & Conditions
GEThttps://graph.microsoft.com/v1.0/deviceManagement/termsAndConditions19.2 Get Terms & Conditions Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/termsAndConditions/{termsId}19.3 Get Terms Acceptance Status
GEThttps://graph.microsoft.com/v1.0/deviceManagement/termsAndConditions/{termsId}/acceptanceStatusesShows which users have accepted which version.
19.4 Create Terms & Conditions
POSThttps://graph.microsoft.com/v1.0/deviceManagement/termsAndConditions
⚠️ SAFETY: Confirm before creating.19.5 List Notification Message Templates
GEThttps://graph.microsoft.com/v1.0/deviceManagement/notificationMessageTemplates19.6 Create Notification Template (Non-Compliance Email)
POSThttps://graph.microsoft.com/v1.0/deviceManagement/notificationMessageTemplates
⚠️ SAFETY: Confirm before creating.19.7 Send Test Notification
POSThttps://graph.microsoft.com/v1.0/deviceManagement/notificationMessageTemplates/{templateId}/sendTestMessage🔐 20. App Protection Policies (MAM)
20.1 List iOS App Protection Policies
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/iosManagedAppProtections20.2 List Android App Protection Policies
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/androidManagedAppProtections20.3 List Windows Information Protection Policies
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/windowsInformationProtectionPolicies20.4 Get App Protection Policy Details
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/iosManagedAppProtections/{policyId}
or
GET https://graph.microsoft.com/v1.0/deviceAppManagement/androidManagedAppProtections/{policyId}20.5 Get App Protection Status per User
GEThttps://graph.microsoft.com/v1.0/deviceAppManagement/managedAppRegistrations?$filter=userId eq '{userId}'20.6 Create App Protection Policy
POSThttps://graph.microsoft.com/v1.0/deviceAppManagement/iosManagedAppProtections
or
POST https://graph.microsoft.com/v1.0/deviceAppManagement/androidManagedAppProtections
⚠️ SAFETY: Confirm before creating. Show policy summary first.📱 21. Enrollment Configuration
21.1 List All Enrollment Configurations
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceEnrollmentConfigurationsIncludes: Device Limit Restrictions, Platform Restrictions, Enrollment Status Page (ESP), Windows Hello for Business.
21.2 Get Enrollment Configuration Details
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceEnrollmentConfigurations/{configId}21.3 Get Enrollment Configuration Assignments
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceEnrollmentConfigurations/{configId}/assignments21.4 List Enrollment Status Page (ESP) Profiles
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceEnrollmentConfigurations?$filter=isof('microsoft.graph.windows10EnrollmentCompletionPageConfiguration')21.5 List Windows Hello for Business Configurations
GEThttps://graph.microsoft.com/v1.0/deviceManagement/deviceEnrollmentConfigurations?$filter=isof('microsoft.graph.deviceEnrollmentWindowsHelloForBusinessConfiguration')🧮 22. Filters & Scope Tags
22.1 List Assignment Filters
GEThttps://graph.microsoft.com/beta/deviceManagement/assignmentFiltersPresent as: | Filter Name | Platform | Rule | Created |
22.2 Get Filter Details
GEThttps://graph.microsoft.com/beta/deviceManagement/assignmentFilters/{filterId}22.3 Create Assignment Filter
POSThttps://graph.microsoft.com/beta/deviceManagement/assignmentFilters
⚠️ SAFETY: Confirm before creating.22.4 Test/Preview Filter Results
POSThttps://graph.microsoft.com/beta/deviceManagement/assignmentFilters/{filterId}/getState22.5 List Scope Tags
GEThttps://graph.microsoft.com/beta/deviceManagement/roleScopeTags22.6 Create Scope Tag
POSThttps://graph.microsoft.com/beta/deviceManagement/roleScopeTags
⚠️ SAFETY: Confirm before creating.