Permanent Deletion for Outlook Tasks Hits Public Preview: What Entra Admins Must Know

WHAT JUST CHANGED
Microsoft released the permanentDelete method for the Outlook Task and Outlook Task Folder resources in the Microsoft Graph beta endpoint. This change is live as of May 2024 and is currently in Public Preview for all Microsoft Entra tenants with eligible Microsoft 365 workloads.
The new methods allow administrators and applications to permanently delete Outlook tasks and folders (not just soft-delete or move to Deleted Items), bypassing the recoverable item retention model. This affects any user or service principal with permissions to interact with tasks via Graph API.
This feature is tenant-wide: any tenant using Exchange Online, Microsoft 365, and Entra ID with tasks enabled in user mailboxes is affected. No additional licensing is required beyond baseline Microsoft 365 subscriptions.
WHAT’S NEXT ON THE ROADMAP
- General Availability: Permanent deletion APIs are expected to hit GA in late 2024. Monitor Microsoft Graph changelog and Entra admin center announcements.
- Expanded Resource Deletion: Microsoft is rolling out similar permanent deletion endpoints for other mailbox and calendar entities (e.g., calendar events, contact folders), enabling tighter lifecycle control.
- Identity Governance Integration: Upcoming features will allow tasks and mailbox content to be included in user lifecycle policies (e.g., access reviews, offboarding automation).
- Audit Logging Improvements: New mailbox item action logs in Entra ID and Purview will track permanent deletions for compliance and forensic evidence.
- Graph API Permissions Hardening: Expect delegated and app permissions for mailbox items to be further granularized, supporting least privilege and consent reviews.
WHY THIS DIRECTION IS BETTER
Previously, deleting tasks and folders via Graph API only moved them to the Deleted Items folder or triggered soft-deletion, leaving them recoverable within retention windows. This created compliance risks:
- Incomplete Deletion: Users and apps couldn’t guarantee purging of sensitive, regulated, or obsolete task data.
- Retention Policy Conflicts: Soft-deleted items could persist in the mailbox for months, complicating legal holds or GDPR requests.
- Operational Complexity: Administrators needed to script PowerShell or use legacy Exchange Online APIs to permanently remove tasks, leading to inconsistent automation.
With permanentDelete, Graph API provides parity with competing IdP solutions (e.g., Google Workspace, Okta-integrated mailboxes) and aligns with Microsoft Purview requirements. It enables:
- Instant and irreversible deletion for security and privacy workflows
- Cleaner mailbox state for lifecycle automation
- Better control over user and guest task data during offboarding or access reviews
- Simplified scripting and automation via modern Graph modules (no legacy PowerShell)
ADJACENT ENTRA ID CHANGES TO KNOW
- Identity Governance Updates: Entra ID lifecycle management now supports mailbox and task clean-up as part of user disablement or guest expiration.
- Conditional Access for Mailbox Actions: Conditional Access policies can now target mailbox API actions, including task deletion, for risk-adaptive enforcement.
- Entra Admin Center Navigation: Task and mailbox management are now surfaced under Identity > Users > Mailbox > Tasks, streamlining access for delegated admins.
- Microsoft.Graph PowerShell v2+ Enhancements: Task management cmdlets support dry-run, audit, and pagination, reducing accidental bulk deletions.
WHAT TO DO: ADMIN ACTIONS
- Review any automation or scripts that interact with Outlook tasks via Graph API. Identify where permanent deletion may be required for compliance or operational cleanup.
- Update service principal permissions to ensure only trusted apps can invoke permanentDelete on task resources.
- Train delegated admins on the irreversible nature of permanent deletion; update internal SOPs.
- Audit mailbox tasks for regulated users to confirm soft-deleted items are being purged as required.
- Test the new endpoint in a sandbox tenant before enabling in production workflows. Use dry-run and explicit confirmation in scripts.
CHECK IT YOURSELF: POWERSHELL AUDIT EXAMPLES
Use Microsoft.Graph PowerShell (v2.0 or later) to audit Outlook tasks, deleted tasks, and verify permissions for permanent deletion. These scripts are read-only and support pagination and error handling.
List all tasks in a user’s mailbox (paginated):
Import-Module Microsoft.Graph.Tasks
$UserId = "[email protected]"
$PageSize = 50
$NextLink = $null
$TaskResults = @()
do {
try {
$Response = Get-MgUserOutlookTask -UserId $UserId -Top $PageSize -SkipToken $NextLink
$TaskResults += $Response
$NextLink = $Response.ODataNextLink
} catch {
Write-Warning "Failed to fetch tasks: $_"
break
}
} while ($NextLink)
Write-Output "Total tasks found: $($TaskResults.Count)"
List tasks in Deleted Items for audit:
Import-Module Microsoft.Graph.Tasks
$UserId = "[email protected]"
$DeletedFolderId = (Get-MgUserOutlookTaskFolder -UserId $UserId | Where-Object { $_.DisplayName -eq "Deleted Items" }).Id
if ($DeletedFolderId) {
try {
$DeletedTasks = Get-MgUserOutlookTask -UserId $UserId -OutlookTaskFolderId $DeletedFolderId
Write-Output "Deleted tasks: $($DeletedTasks.Count)"
} catch {
Write-Warning "Error fetching deleted tasks: $_"
}
} else {
Write-Warning "Deleted Items folder not found for user $UserId."
}
Check which apps have permission to delete Outlook tasks:
Import-Module Microsoft.Graph.Applications
$PermApps = Get-MgServicePrincipal | Where-Object {
$_.AppRoles -like '*Tasks.Delete*' -or
$_.AppRoles -like '*Tasks.ReadWrite*' -or
$_.AppRoles -like '*Tasks.ReadWrite.All*'
}
foreach ($app in $PermApps) {
Write-Output "App $($app.DisplayName) can delete Outlook tasks."
}
PORTAL PATH
- Entra Admin Center: Navigate to Identity > Users > [Select User] > Mailbox > Tasks to view and manage task folders and items.
- Microsoft Graph Explorer: Use Graph Explorer to test
permanentDeleteon/beta/users/{id}/outlook/tasks/{task-id}/permanentDelete. - Audit Logs: Review Identity > Monitoring > Audit logs for mailbox item actions, including permanent deletion.
BOTTOM LINE
- Priority: Review and restrict Graph API permissions for task deletion in your tenant. Prepare for GA rollout by updating automation and compliance workflows.
- Recommendation: Test permanent deletion endpoints in a safe environment. Document irreversible actions in admin SOPs.
- Stay Updated: Monitor Microsoft Graph and Entra announcements for related mailbox lifecycle and task management enhancements.