Skip to content

modernendpoint/Intune-AppInstallStatus-Framework

Repository files navigation

Intune App Install Status Framework (IAIS)

A PowerShell framework for producing a more reliable view of Intune app install status (Mobile + Windows) using Microsoft Graph and Intune reporting endpoints.

Why: Intune portal status can be delayed (latency). This framework is designed to query Graph for install status and export clean reports.


Features

  • 🔐 Graph auth helper (delegated interactive)
  • 🔎 Resolve app by displayName (partial match)
  • 📊 Pull install status (ByDevice / ByUser / Summary)
  • 🧾 Export to CSV + JSON
  • 📸 Save snapshots + diff changes between runs
  • 🧯 Built-in throttling/retry wrapper for Graph requests

Prerequisites

  • PowerShell 7+ recommended
  • Microsoft Graph PowerShell SDK: Microsoft.Graph
  • Intune licensing enabled in the tenant
  • Permissions (delegated scopes):
    • DeviceManagementApps.Read.All
    • DeviceManagementManagedDevices.Read.All
    • Reports.Read.All

Note: Intune RBAC still applies; the signed-in user must have sufficient read permissions in Intune.


Quick start

  1. Install module dependency:
Install-Module Microsoft.Graph -Scope CurrentUser
  1. Import the module from the repo root:
Import-Module .\src\IntuneAppInstallStatus\IntuneAppInstallStatus.psd1 -Force
  1. Connect:
Connect-IAISGraph -TenantId "<TENANT_ID>"
  1. Find the app:
Get-IAISApps -Search "Outlook" -Type all
  1. Pull status + export:
$app = (Get-IAISApps -Search "Outlook" | Select-Object -First 1)
$data = Get-IAISInstallStatus -AppId $app.id -View ByDevice -Top 500

$stamp = Get-Date -Format "yyyyMMdd-HHmmss"
$out = Export-IAISReport -Data $data -PathBase ".\runs\exports\$($app.id)-$stamp"
$out

Runner script (one-liner)

.\tools\Run-IAIS.ps1 -TenantId "<TENANT_ID>" -AppSearch "Outlook" -View ByDevice -Top 500

How it works (high-level)

  • App discovery comes from: deviceAppManagement/mobileApps
  • Install status comes from: deviceManagement/reports/* (report name is configurable)

Important

The report endpoints may vary by tenant / Graph profile. The scaffold includes a placeholder report route that you should finalize once (see: src/IntuneAppInstallStatus/Private/Invoke-IAISReport.ps1).


Roadmap (next versions)

  • Auto-detect working report endpoints (capability probe)
  • Fallback to mobile app deviceStatuses when needed
  • App list input (CSV) + batch export
  • HTML report output
  • Service principal (app registration) auth for automation

Disclaimer

Generated by AI. Validate outputs before production use.

About

Enterprise-grade Intune application installation status reporting via Microsoft Graph.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors