Skip to content

Mobile apps inventory: apps by platform, publisher, and publishing state.

Lists all managed mobile apps plus the categories used to organize them.

Permissions

Requires delegated permission DeviceManagementApps.Read.All.

Reference

View source

from office365.graph_client import GraphClient
from tests.settings import client_id, client_secret, tenant

client = (
    GraphClient(tenant=tenant)
    .with_client_secret(client_id, client_secret)
    .require_application_permission("DeviceManagementApps.Read.All", "DeviceManagementApps.ReadWrite.All")
)

# 1. List all mobile apps
apps = client.device_app_management.mobile_apps.get().execute_query()
print(f"Mobile apps ({len(apps)}):")
for app in apps:
    publisher = app.publisher or "?"
    state = app.publishing_state or "?"
    print(f"  {app.display_name or '(unnamed)':35s} {publisher:20s} [{state}]")

# 2. List app categories
categories = client.device_app_management.mobile_app_categories.get().execute_query()
print(f"\nCategories ({len(categories)}):")
for c in categories:
    print(f"  {c.display_name}")

← Back to Applications