ESC
Type to search...

Reports.Read.All

Export JSON
Export CSV
Copy URL
Print
ApplicationDelegated Read All Resources

Allows an app to read all service usage reports without a signed-in user. Services that provide usage reports include Office 365 and Azure Active Directory.

Delegated Access App-Only Access

Permission Details

Application Permission

Read all usage reports

Allows an app to read all service usage reports without a signed-in user. Services that provide usage reports include Office 365 and Azure Active Directory.

Delegated Permission Admin consent required

Read all usage reports

Allows an app to read all service usage reports on behalf of the signed-in user. Services that provide usage reports include Office 365 and Azure Active Directory.

Properties

Property Type Description
id string The unique identifier for an entity. Read-only.
servicePrincipalSignInActivities microsoft.graph.servicePrincipalSignInActivity collection Represents a collection of sign-in activities of service principals.
authenticationMethods object Container for navigation properties for Microsoft Entra authentication methods resources.
partners object Represents billing details for a Microsoft direct partner.
dailyPrintUsage microsoft.graph.printUsage collection
dailyPrintUsageByUser microsoft.graph.printUsageByUser collection Retrieve a list of daily print usage summaries, grouped by user.
monthlyPrintUsageByUser microsoft.graph.printUsageByUser collection Retrieve a list of monthly print usage summaries, grouped by user.
sla object Reports that relate to tenant-level Microsoft Entra Health SLA attainment.
userCredentialUsageDetails microsoft.graph.userCredentialUsageDetails collection Represents the self-service password reset (SSPR) usage for a given tenant.
monthlyPrintUsageByPrinter microsoft.graph.printUsageByPrinter collection Retrieve a list of monthly print usage summaries, grouped by printer.
appCredentialSignInActivities microsoft.graph.appCredentialSignInActivity collection Represents a collection of sign-in activities of application credentials.
dailyPrintUsageSummariesByUser microsoft.graph.printUsageByUser collection
security object Provides the ability to launch a simulated phishing attack that organizations can learn from.
applicationSignInDetailedSummary microsoft.graph.applicationSignInDetailedSummary collection Represents a detailed summary of an application sign-in.
healthMonitoring object Reports for Microsoft Entra Health Monitoring.

Showing 15 of 22 properties. View all on Microsoft Learn →

Relationships

Relationship Type Description
dailyPrintUsageByPrinter printUsageByPrinter collection Retrieve a list of daily print usage summaries, grouped by printer.
dailyPrintUsageByUser printUsageByUser collection Retrieve a list of daily print usage summaries, grouped by user.
monthlyPrintUsageByPrinter printUsageByPrinter collection Retrieve a list of monthly print usage summaries, grouped by printer.
monthlyPrintUsageByUser printUsageByUser collection Retrieve a list of monthly print usage summaries, grouped by user.
security securityReportsRoot Provides the ability to launch a realistic simulated phishing attack that organizations can learn from.

Graph Methods

Delegated access App-only access
Methods
GET /reports
GET /reports/authenticationMethods
GET /reports/authenticationMethods/userRegistrationDetails
GET /reports/authenticationMethods/userRegistrationDetails/{userRegistrationDetails-id}
GET /reports/dailyPrintUsageByPrinter
GET /reports/dailyPrintUsageByPrinter/{id}
GET /reports/dailyPrintUsageByPrinter/{printUsageByPrinter-id}
GET /reports/dailyPrintUsageByUser
GET /reports/dailyPrintUsageByUser/{id}
GET /reports/dailyPrintUsageByUser/{printUsageByUser-id}
GET /reports/getEmailActivityCounts(period='{period_value}')
GET /reports/getEmailActivityUserCounts(period='{period_value}')
GET /reports/getEmailActivityUserDetail(date={date_value})
GET /reports/getEmailActivityUserDetail(period='{period_value}')
GET /reports/getEmailAppUsageAppsUserCounts(period='{period_value}')
GET /reports/getEmailAppUsageUserCounts(period='{period_value}')
GET /reports/getEmailAppUsageUserDetail(date={date_value})
GET /reports/getEmailAppUsageUserDetail(period='{period_value}')
GET /reports/getEmailAppUsageVersionsUserCounts(period='{period_value}')
GET /reports/getGroupArchivedPrintJobs(groupId='{groupId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /reports/getM365AppPlatformUserCounts(period='{period_value}')
GET /reports/getM365AppUserCounts(period='{period_value}')
GET /reports/getM365AppUserDetail(date='{date_value}')
GET /reports/getM365AppUserDetail(period='{period_value}')
GET /reports/getMailboxUsageDetail(period='{period_value}')
GET /reports/getMailboxUsageMailboxCounts(period='{period_value}')
GET /reports/getMailboxUsageQuotaStatusMailboxCounts(period='{period_value}')
GET /reports/getMailboxUsageStorage(period='{period_value}')
GET /reports/getOffice365ActivationCounts
GET /reports/getOffice365ActivationsUserCounts
GET /reports/getOffice365ActivationsUserDetail
GET /reports/getOffice365ActiveUserCounts(period='{period_value}')
GET /reports/getOffice365ActiveUserDetail(date={date_value})
GET /reports/getOffice365ActiveUserDetail(period='{period_value}')
GET /reports/getOffice365GroupsActivityCounts(period='{period_value}')
GET /reports/getOffice365GroupsActivityDetail(date={date_value})
GET /reports/getOffice365GroupsActivityDetail(period='{period_value}')
GET /reports/getOffice365GroupsActivityFileCounts(period='{period_value}')
GET /reports/getOffice365GroupsActivityGroupCounts(period='{period_value}')
GET /reports/getOffice365GroupsActivityStorage(period='{period_value}')
GET /reports/getOffice365ServicesUserCounts(period='{period_value}')
GET /reports/getOneDriveActivityFileCounts(period='{period_value}')
GET /reports/getOneDriveActivityUserCounts(period='{period_value}')
GET /reports/getOneDriveActivityUserDetail(date={date_value})
GET /reports/getOneDriveActivityUserDetail(period='{period_value}')
GET /reports/getOneDriveUsageAccountCounts(period='{period_value}')
GET /reports/getOneDriveUsageAccountDetail(date={date_value})
GET /reports/getOneDriveUsageAccountDetail(period='{period_value}')
GET /reports/getOneDriveUsageFileCounts(period='{period_value}')
GET /reports/getOneDriveUsageStorage(period='{period_value}')
GET /reports/getPrinterArchivedPrintJobs(printerId='{printerId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /reports/getRelyingPartyDetailedSummary(period='parameterValue')
GET /reports/getSharePointActivityFileCounts(period='{period_value}')
GET /reports/getSharePointActivityPages(period='{period_value}')
GET /reports/getSharePointActivityUserCounts(period='{period_value}')
GET /reports/getSharePointActivityUserDetail(date={date_value})
GET /reports/getSharePointActivityUserDetail(period='{period_value}')
GET /reports/getSharePointSiteUsageDetail(date={date_value})
GET /reports/getSharePointSiteUsageDetail(period='{period_value}')
GET /reports/getSharePointSiteUsageFileCounts(period='{period_value}')
GET /reports/getSharePointSiteUsagePages(period='{period_value}')
GET /reports/getSharePointSiteUsageSiteCounts(period='{period_value}')
GET /reports/getSharePointSiteUsageStorage(period='{period_value}')
GET /reports/getSkypeForBusinessActivityCounts(period='{period_value}')
GET /reports/getSkypeForBusinessActivityUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessActivityUserDetail(date={date_value})
GET /reports/getSkypeForBusinessActivityUserDetail(period='{period_value}')
GET /reports/getSkypeForBusinessDeviceUsageDistributionUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessDeviceUsageUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessDeviceUsageUserDetail(date={date_value})
GET /reports/getSkypeForBusinessDeviceUsageUserDetail(period='{period_value}')
GET /reports/getSkypeForBusinessOrganizerActivityCounts(period='{period_value}')
GET /reports/getSkypeForBusinessOrganizerActivityMinuteCounts(period='{period_value}')
GET /reports/getSkypeForBusinessOrganizerActivityUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessParticipantActivityCounts(period='{period_value}')
GET /reports/getSkypeForBusinessParticipantActivityMinuteCounts(period='{period_value}')
GET /reports/getSkypeForBusinessParticipantActivityUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessPeerToPeerActivityCounts(period='{period_value}')
GET /reports/getSkypeForBusinessPeerToPeerActivityMinuteCounts(period='{period_value}')
GET /reports/getSkypeForBusinessPeerToPeerActivityUserCounts(period='{period_value}')
GET /reports/getTeamsDeviceUsageDistributionUserCounts(period='{period_value}')
GET /reports/getTeamsDeviceUsageUserCounts(period='{period_value}')
GET /reports/getTeamsDeviceUsageUserDetail(date='{date_value}')
GET /reports/getTeamsDeviceUsageUserDetail(period='{period_value}')
GET /reports/getTeamsTeamActivityCounts(period='{period_value}')
GET /reports/getTeamsTeamActivityDetail(period='{period_value}')
GET /reports/getTeamsTeamActivityDistributionCounts(period='{period_value}')
GET /reports/getTeamsTeamCounts(period='{period_value}')
GET /reports/getTeamsUserActivityCounts(period='{period_value}')
GET /reports/getTeamsUserActivityUserCounts(period='{period_value}')
GET /reports/getTeamsUserActivityUserDetail(date={date_value})
GET /reports/getTeamsUserActivityUserDetail(period='{period_value}')
GET /reports/getUserArchivedPrintJobs(userId='{userId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /reports/getYammerActivityCounts(period='{period_value}')
GET /reports/getYammerActivityUserCounts(period='{period_value}')
GET /reports/getYammerActivityUserDetail(date={date_value})
GET /reports/getYammerActivityUserDetail(period='{period_value}')
GET /reports/getYammerDeviceUsageDistributionUserCounts(period='{period_value}')
GET /reports/getYammerDeviceUsageUserCounts(period='{period_value}')
GET /reports/getYammerDeviceUsageUserDetail(date={date_value})
GET /reports/getYammerDeviceUsageUserDetail(period='{period_value}')
GET /reports/getYammerGroupsActivityCounts(period='{period_value}')
GET /reports/getYammerGroupsActivityDetail(date={date_value})
GET /reports/getYammerGroupsActivityDetail(period='{period_value}')
GET /reports/getYammerGroupsActivityGroupCounts(period='{period_value}')
GET /reports/monthlyPrintUsageByPrinter
GET /reports/monthlyPrintUsageByPrinter/{id}
GET /reports/monthlyPrintUsageByPrinter/{printUsageByPrinter-id}
GET /reports/monthlyPrintUsageByUser
GET /reports/monthlyPrintUsageByUser/{id}
GET /reports/monthlyPrintUsageByUser/{printUsageByUser-id}
GET /reports/partners
GET /reports/partners/billing
GET /reports/partners/billing/manifests
GET /reports/partners/billing/manifests/{manifest-id}
GET /reports/partners/billing/operations
GET /reports/partners/billing/operations/{operation-id}
GET /reports/partners/billing/reconciliation
GET /reports/partners/billing/reconciliation/billed
GET /reports/partners/billing/reconciliation/unbilled
GET /reports/partners/billing/usage
GET /reports/partners/billing/usage/billed
GET /reports/partners/billing/usage/unbilled
GET /reports/security
POST /reports/authenticationMethods/userRegistrationDetails
POST /reports/dailyPrintUsageByPrinter
POST /reports/dailyPrintUsageByUser
POST /reports/monthlyPrintUsageByPrinter
POST /reports/monthlyPrintUsageByUser
POST /reports/partners/billing/manifests
POST /reports/partners/billing/operations
POST /reports/partners/billing/reconciliation/billed/microsoft.graph.partners.billing.export
POST /reports/partners/billing/reconciliation/unbilled/microsoft.graph.partners.billing.export
POST /reports/partners/billing/usage/billed/microsoft.graph.partners.billing.export
POST /reports/partners/billing/usage/unbilled/microsoft.graph.partners.billing.export
PATCH /reports
PATCH /reports/authenticationMethods
PATCH /reports/authenticationMethods/userRegistrationDetails/{userRegistrationDetails-id}
PATCH /reports/dailyPrintUsageByPrinter/{printUsageByPrinter-id}
PATCH /reports/dailyPrintUsageByUser/{printUsageByUser-id}
PATCH /reports/monthlyPrintUsageByPrinter/{printUsageByPrinter-id}
PATCH /reports/monthlyPrintUsageByUser/{printUsageByUser-id}
PATCH /reports/partners
PATCH /reports/partners/billing
PATCH /reports/partners/billing/manifests/{manifest-id}
PATCH /reports/partners/billing/operations/{operation-id}
PATCH /reports/partners/billing/reconciliation
PATCH /reports/partners/billing/reconciliation/billed
PATCH /reports/partners/billing/reconciliation/unbilled
PATCH /reports/partners/billing/usage
PATCH /reports/partners/billing/usage/billed
PATCH /reports/partners/billing/usage/unbilled
PATCH /reports/security
DELETE /reports/authenticationMethods
DELETE /reports/authenticationMethods/userRegistrationDetails/{userRegistrationDetails-id}
DELETE /reports/dailyPrintUsageByPrinter/{printUsageByPrinter-id}
DELETE /reports/dailyPrintUsageByUser/{printUsageByUser-id}
DELETE /reports/monthlyPrintUsageByPrinter/{printUsageByPrinter-id}
DELETE /reports/monthlyPrintUsageByUser/{printUsageByUser-id}
DELETE /reports/partners
DELETE /reports/partners/billing
DELETE /reports/partners/billing/manifests/{manifest-id}
DELETE /reports/partners/billing/operations/{operation-id}
DELETE /reports/partners/billing/reconciliation
DELETE /reports/partners/billing/reconciliation/billed
DELETE /reports/partners/billing/reconciliation/unbilled
DELETE /reports/partners/billing/usage
DELETE /reports/partners/billing/usage/billed
DELETE /reports/partners/billing/usage/unbilled
DELETE /reports/security
Methods
GET /print/reports/dailyPrintUsageByPrinter
GET /print/reports/dailyPrintUsageByPrinter/{id}
GET /print/reports/dailyPrintUsageByUser
GET /print/reports/dailyPrintUsageByUser/{id}
GET /print/reports/getGroupArchivedPrintJobs(groupId='{groupId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /print/reports/getPrinterArchivedPrintJobs(printerId='{printerId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /print/reports/getUserArchivedPrintJobs(userId='{userId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /print/reports/monthlyPrintUsageByPrinter
GET /print/reports/monthlyPrintUsageByPrinter/{id}
GET /print/reports/monthlyPrintUsageByUser
GET /print/reports/monthlyPrintUsageByUser/{id}
GET /reports
GET /reports/applicationSignInDetailedSummary
GET /reports/applicationSignInDetailedSummary/{id}
GET /reports/authenticationMethods
GET /reports/authenticationMethods/userEventsSummary
GET /reports/authenticationMethods/userEventsSummary/{userEventsSummary-id}
GET /reports/authenticationMethods/userPasswordResetsAndChangesSummary
GET /reports/authenticationMethods/userPasswordResetsAndChangesSummary/{userPasswordResetsAndChangesSummary-id}
GET /reports/authenticationMethods/userRegistrationDetails
GET /reports/authenticationMethods/userRegistrationDetails/{userRegistrationDetails-id}
GET /reports/credentialUserRegistrationDetails
GET /reports/credentialUserRegistrationDetails/{credentialUserRegistrationDetails-id}
GET /reports/dailyPrintUsage
GET /reports/dailyPrintUsage/{printUsage-id}
GET /reports/dailyPrintUsageByPrinter
GET /reports/dailyPrintUsageByPrinter/{id}
GET /reports/dailyPrintUsageByPrinter/{printUsageByPrinter-id}
GET /reports/dailyPrintUsageByUser
GET /reports/dailyPrintUsageByUser/{id}
GET /reports/dailyPrintUsageByUser/{printUsageByUser-id}
GET /reports/dailyPrintUsageSummariesByPrinter
GET /reports/dailyPrintUsageSummariesByPrinter/{printUsageByPrinter-id}
GET /reports/dailyPrintUsageSummariesByUser
GET /reports/dailyPrintUsageSummariesByUser/{printUsageByUser-id}
GET /reports/getApiUsage(period={period_value},serviceArea={service_area},appId={appId})
GET /reports/getBrowserDistributionUserCounts(period='{period_value}')
GET /reports/getBrowserUserCounts(period='{period_value}')
GET /reports/getBrowserUserDetail(period='{period_value}')
GET /reports/getCredentialUsageSummary(period='{periodValue}')
GET /reports/getCredentialUserRegistrationCount
GET /reports/getEmailActivityCounts(period='{period_value}')
GET /reports/getEmailActivityUserCounts(period='{period_value}')
GET /reports/getEmailActivityUserDetail(date={date_value})
GET /reports/getEmailActivityUserDetail(period='{period_value}')
GET /reports/getEmailAppUsageAppsUserCounts(period='{period_value}')
GET /reports/getEmailAppUsageUserCounts(period='{period_value}')
GET /reports/getEmailAppUsageUserDetail(date={date_value})
GET /reports/getEmailAppUsageUserDetail(period='{period_value}')
GET /reports/getEmailAppUsageVersionsUserCounts(period='{period_value}')
GET /reports/getFormsUserActivityCounts(period='{period_value}')
GET /reports/getFormsUserActivityUserDetail(period='{period_value}')
GET /reports/getGroupArchivedPrintJobs(groupId='{groupId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /reports/getM365AppPlatformUserCounts(period='{period_value}')
GET /reports/getM365AppUserCounts(period='{period_value}')
GET /reports/getM365AppUserDetail(date='{date_value}')
GET /reports/getM365AppUserDetail(period='{period_value}')
GET /reports/getMailboxUsageDetail(period='{period_value}')
GET /reports/getMailboxUsageMailboxCounts(period='{period_value}')
GET /reports/getMailboxUsageQuotaStatusMailboxCounts(period='{period_value}')
GET /reports/getMailboxUsageStorage(period='{period_value}')
GET /reports/getMicrosoft365CopilotUsageUserDetail(period='{period_value}')
GET /reports/getMicrosoft365CopilotUserCountSummary(period='{period_value}')
GET /reports/getMicrosoft365CopilotUserCountTrend(period='{period_value}')
GET /reports/getOffice365ActivationCounts
GET /reports/getOffice365ActivationsUserCounts
GET /reports/getOffice365ActivationsUserDetail
GET /reports/getOffice365ActiveUserCounts(period='{period_value}')
GET /reports/getOffice365ActiveUserDetail(date={date_value})
GET /reports/getOffice365ActiveUserDetail(period='{period_value}')
GET /reports/getOffice365GroupsActivityCounts(period='{period_value}')
GET /reports/getOffice365GroupsActivityDetail(date={date_value})
GET /reports/getOffice365GroupsActivityDetail(period='{period_value}')
GET /reports/getOffice365GroupsActivityFileCounts(period='{period_value}')
GET /reports/getOffice365GroupsActivityGroupCounts(period='{period_value}')
GET /reports/getOffice365GroupsActivityStorage(period='{period_value}')
GET /reports/getOffice365ServicesUserCounts(period='{period_value}')
GET /reports/getOneDriveActivityFileCounts(period='{period_value}')
GET /reports/getOneDriveActivityUserCounts(period='{period_value}')
GET /reports/getOneDriveActivityUserDetail(date={date_value})
GET /reports/getOneDriveActivityUserDetail(period='{period_value}')
GET /reports/getOneDriveUsageAccountCounts(period='{period_value}')
GET /reports/getOneDriveUsageAccountDetail(date={date_value})
GET /reports/getOneDriveUsageAccountDetail(period='{period_value}')
GET /reports/getOneDriveUsageFileCounts(period='{period_value}')
GET /reports/getOneDriveUsageStorage(period='{period_value}')
GET /reports/getPrinterArchivedPrintJobs(printerId='{printerId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /reports/getRelyingPartyDetailedSummary(period='parameterValue')
GET /reports/getSharePointActivityFileCounts(period='{period_value}')
GET /reports/getSharePointActivityPages(period='{period_value}')
GET /reports/getSharePointActivityUserCounts(period='{period_value}')
GET /reports/getSharePointActivityUserDetail(date={date_value})
GET /reports/getSharePointActivityUserDetail(period='{period_value}')
GET /reports/getSharePointSiteUsageDetail(date={date_value})
GET /reports/getSharePointSiteUsageDetail(period='{period_value}')
GET /reports/getSharePointSiteUsageFileCounts(period='{period_value}')
GET /reports/getSharePointSiteUsagePages(period='{period_value}')
GET /reports/getSharePointSiteUsageSiteCounts(period='{period_value}')
GET /reports/getSharePointSiteUsageStorage(period='{period_value}')
GET /reports/getSkypeForBusinessActivityCounts(period='{period_value}')
GET /reports/getSkypeForBusinessActivityUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessActivityUserDetail(date={date_value})
GET /reports/getSkypeForBusinessActivityUserDetail(period='{period_value}')
GET /reports/getSkypeForBusinessDeviceUsageDistributionUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessDeviceUsageUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessDeviceUsageUserDetail(date={date_value})
GET /reports/getSkypeForBusinessDeviceUsageUserDetail(period='{period_value}')
GET /reports/getSkypeForBusinessOrganizerActivityCounts(period='{period_value}')
GET /reports/getSkypeForBusinessOrganizerActivityMinuteCounts(period='{period_value}')
GET /reports/getSkypeForBusinessOrganizerActivityUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessParticipantActivityCounts(period='{period_value}')
GET /reports/getSkypeForBusinessParticipantActivityMinuteCounts(period='{period_value}')
GET /reports/getSkypeForBusinessParticipantActivityUserCounts(period='{period_value}')
GET /reports/getSkypeForBusinessPeerToPeerActivityCounts(period='{period_value}')
GET /reports/getSkypeForBusinessPeerToPeerActivityMinuteCounts(period='{period_value}')
GET /reports/getSkypeForBusinessPeerToPeerActivityUserCounts(period='{period_value}')
GET /reports/getTeamsDeviceUsageDistributionTotalUserCounts(period='D7')
GET /reports/getTeamsDeviceUsageDistributionUserCounts(period='D7')
GET /reports/getTeamsDeviceUsageTotalUserCounts(period='D7')
GET /reports/getTeamsDeviceUsageUserCounts(period='D7')
GET /reports/getTeamsDeviceUsageUserDetail(date='{date_value}')
GET /reports/getTeamsDeviceUsageUserDetail(period='{period_value}')
GET /reports/getTeamsTeamActivityCounts(period='{period_value}')
GET /reports/getTeamsTeamActivityDetail(period='{period_value}')
GET /reports/getTeamsTeamActivityDistributionCounts(period='{period_value}')
GET /reports/getTeamsTeamCounts(period='{period_value}')
GET /reports/getTeamsUserActivityCounts(period='D7')
GET /reports/getTeamsUserActivityDistributionTotalUserCounts(period='D7')
GET /reports/getTeamsUserActivityDistributionUserCounts(period='D7')
GET /reports/getTeamsUserActivityTotalCounts(period='D7')
GET /reports/getTeamsUserActivityTotalDistributionCounts(period='{period_value}')
GET /reports/getTeamsUserActivityTotalUserCounts(period='D7')
GET /reports/getTeamsUserActivityUserCounts(period='D7')
GET /reports/getTeamsUserActivityUserDetail(date={date_value})
GET /reports/getTeamsUserActivityUserDetail(period='{period_value}')
GET /reports/getUserArchivedPrintJobs(userId='{userId}',startDateTime='{startDateTime}',endDateTime='{endDateTime}')
GET /reports/getYammerActivityCounts(period='{period_value}')
GET /reports/getYammerActivityUserCounts(period='{period_value}')
GET /reports/getYammerActivityUserDetail(date={date_value})
GET /reports/getYammerActivityUserDetail(period='{period_value}')
GET /reports/getYammerDeviceUsageDistributionUserCounts(period='{period_value}')
GET /reports/getYammerDeviceUsageUserCounts(period='{period_value}')
GET /reports/getYammerDeviceUsageUserDetail(date={date_value})
GET /reports/getYammerDeviceUsageUserDetail(period='{period_value}')
GET /reports/getYammerGroupsActivityCounts(period='{period_value}')
GET /reports/getYammerGroupsActivityDetail(date={date_value})
GET /reports/getYammerGroupsActivityDetail(period='{period_value}')
GET /reports/getYammerGroupsActivityGroupCounts(period='{period_value}')
GET /reports/healthMonitoring
GET /reports/healthMonitoring/alertConfigurations
GET /reports/healthMonitoring/alertConfigurations/{alertConfiguration-id}
GET /reports/healthMonitoring/alerts
GET /reports/healthMonitoring/alerts/{alert-id}
GET /reports/monthlyPrintUsageByPrinter
GET /reports/monthlyPrintUsageByPrinter/{id}
GET /reports/monthlyPrintUsageByPrinter/{printUsageByPrinter-id}
GET /reports/monthlyPrintUsageByUser
GET /reports/monthlyPrintUsageByUser/{id}
GET /reports/monthlyPrintUsageByUser/{printUsageByUser-id}
GET /reports/monthlyPrintUsageSummariesByPrinter
GET /reports/monthlyPrintUsageSummariesByPrinter/{printUsageByPrinter-id}
GET /reports/monthlyPrintUsageSummariesByUser
GET /reports/monthlyPrintUsageSummariesByUser/{printUsageByUser-id}
GET /reports/partners
GET /reports/partners/billing
GET /reports/partners/billing/manifests
GET /reports/partners/billing/manifests/{manifest-id}
GET /reports/partners/billing/operations
GET /reports/partners/billing/operations/{operation-id}
GET /reports/partners/billing/reconciliation
GET /reports/partners/billing/reconciliation/billed
GET /reports/partners/billing/reconciliation/unbilled
GET /reports/partners/billing/usage
GET /reports/partners/billing/usage/billed
GET /reports/partners/billing/usage/unbilled
GET /reports/security
GET /reports/serviceActivity
GET /reports/serviceActivity/getMetricsForConditionalAccessBlockedSignIn(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForConditionalAccessCompliantDevicesSignInSuccess
GET /reports/serviceActivity/getMetricsForConditionalAccessManagedDevicesSignInSuccess
GET /reports/serviceActivity/getMetricsForMfaSignInFailure
GET /reports/serviceActivity/getMetricsForMfaSignInSuccess
GET /reports/serviceActivity/getMetricsForNetworkAccessInternetAppPolicyAllowedApps(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessInternetAppPolicyAllowedUsers(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessInternetAppPolicyBlockedApps(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessInternetAppPolicyBlockedUsers(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessPrivateAppsAllowedByConnector(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessPrivateAppsBlockedByConnector(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessPrivateAppUsersAllowedByConnector(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessPrivateAppUsersBlockedByConnector(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessRemoteNetworkBranchesAlive(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessRemoteNetworkBranchesBGPConnected(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessRemoteNetworkBranchesBGPDisconnected(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessRemoteNetworkBranchesTunnelConnected(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForNetworkAccessRemoteNetworkBranchesTunnelDisconnected(inclusiveIntervalStartDateTime={inclusiveIntervalStartDateTime},exclusiveIntervalEndDateTime={exclusiveIntervalEndDateTime})
GET /reports/serviceActivity/getMetricsForSamlSignInSuccess
GET /reports/sla
GET /reports/sla/azureADAuthentication
GET /reports/userCredentialUsageDetails
GET /reports/userCredentialUsageDetails/{userCredentialUsageDetails-id}
GET /tenantRelationships/managedTenants/credentialUserRegistrationsSummaries
GET /tenantRelationships/managedTenants/credentialUserRegistrationsSummaries/{credentialUserRegistrationsSummaryId}
GET reports/getAzureADApplicationSignInSummary(period='{period}')
POST /reports/authenticationMethods/userEventsSummary
POST /reports/authenticationMethods/userEventsSummary/{userEventsSummary-id}
POST /reports/authenticationMethods/userPasswordResetsAndChangesSummary
POST /reports/authenticationMethods/userRegistrationDetails
POST /reports/credentialUserRegistrationDetails
POST /reports/dailyPrintUsage
POST /reports/dailyPrintUsageByPrinter
POST /reports/dailyPrintUsageByUser
POST /reports/dailyPrintUsageSummariesByPrinter
POST /reports/dailyPrintUsageSummariesByUser
POST /reports/healthMonitoring/alertConfigurations
POST /reports/healthMonitoring/alerts
POST /reports/monthlyPrintUsageByPrinter
POST /reports/monthlyPrintUsageByUser
POST /reports/monthlyPrintUsageSummariesByPrinter
POST /reports/monthlyPrintUsageSummariesByUser
POST /reports/partners/billing/manifests
POST /reports/partners/billing/operations
POST /reports/partners/billing/reconciliation/billed/microsoft.graph.partners.billing.export
POST /reports/partners/billing/reconciliation/unbilled/microsoft.graph.partners.billing.export
POST /reports/partners/billing/usage/billed/microsoft.graph.partners.billing.export
POST /reports/partners/billing/usage/unbilled/microsoft.graph.partners.billing.export
POST /reports/userCredentialUsageDetails
PATCH /reports
PATCH /reports/authenticationMethods
PATCH /reports/authenticationMethods/userEventsSummary/{userEventsSummary-id}
PATCH /reports/authenticationMethods/userPasswordResetsAndChangesSummary/{userPasswordResetsAndChangesSummary-id}
PATCH /reports/authenticationMethods/userRegistrationDetails/{userRegistrationDetails-id}
PATCH /reports/credentialUserRegistrationDetails/{credentialUserRegistrationDetails-id}
PATCH /reports/dailyPrintUsage/{printUsage-id}
PATCH /reports/dailyPrintUsageByPrinter/{printUsageByPrinter-id}
PATCH /reports/dailyPrintUsageByUser/{printUsageByUser-id}
PATCH /reports/dailyPrintUsageSummariesByPrinter/{printUsageByPrinter-id}
PATCH /reports/dailyPrintUsageSummariesByUser/{printUsageByUser-id}
PATCH /reports/healthMonitoring
PATCH /reports/healthMonitoring/alertConfigurations/{alertConfiguration-id}
PATCH /reports/healthMonitoring/alerts/{alert-id}
PATCH /reports/monthlyPrintUsageByPrinter/{printUsageByPrinter-id}
PATCH /reports/monthlyPrintUsageByUser/{printUsageByUser-id}
PATCH /reports/monthlyPrintUsageSummariesByPrinter/{printUsageByPrinter-id}
PATCH /reports/monthlyPrintUsageSummariesByUser/{printUsageByUser-id}
PATCH /reports/partners
PATCH /reports/partners/billing
PATCH /reports/partners/billing/manifests/{manifest-id}
PATCH /reports/partners/billing/operations/{operation-id}
PATCH /reports/partners/billing/reconciliation
PATCH /reports/partners/billing/reconciliation/billed
PATCH /reports/partners/billing/reconciliation/unbilled
PATCH /reports/partners/billing/usage
PATCH /reports/partners/billing/usage/billed
PATCH /reports/partners/billing/usage/unbilled
PATCH /reports/security
PATCH /reports/serviceActivity
PATCH /reports/sla
PATCH /reports/sla/azureADAuthentication
PATCH /reports/userCredentialUsageDetails/{userCredentialUsageDetails-id}
DELETE /reports/authenticationMethods
DELETE /reports/authenticationMethods/userEventsSummary/{userEventsSummary-id}
DELETE /reports/authenticationMethods/userPasswordResetsAndChangesSummary/{userPasswordResetsAndChangesSummary-id}
DELETE /reports/authenticationMethods/userRegistrationDetails/{userRegistrationDetails-id}
DELETE /reports/credentialUserRegistrationDetails/{credentialUserRegistrationDetails-id}
DELETE /reports/dailyPrintUsage/{printUsage-id}
DELETE /reports/dailyPrintUsageByPrinter/{printUsageByPrinter-id}
DELETE /reports/dailyPrintUsageByUser/{printUsageByUser-id}
DELETE /reports/dailyPrintUsageSummariesByPrinter/{printUsageByPrinter-id}
DELETE /reports/dailyPrintUsageSummariesByUser/{printUsageByUser-id}
DELETE /reports/healthMonitoring
DELETE /reports/healthMonitoring/alertConfigurations/{alertConfiguration-id}
DELETE /reports/healthMonitoring/alerts/{alert-id}
DELETE /reports/monthlyPrintUsageByPrinter/{printUsageByPrinter-id}
DELETE /reports/monthlyPrintUsageByUser/{printUsageByUser-id}
DELETE /reports/monthlyPrintUsageSummariesByPrinter/{printUsageByPrinter-id}
DELETE /reports/monthlyPrintUsageSummariesByUser/{printUsageByUser-id}
DELETE /reports/partners
DELETE /reports/partners/billing
DELETE /reports/partners/billing/manifests/{manifest-id}
DELETE /reports/partners/billing/operations/{operation-id}
DELETE /reports/partners/billing/reconciliation
DELETE /reports/partners/billing/reconciliation/billed
DELETE /reports/partners/billing/reconciliation/unbilled
DELETE /reports/partners/billing/usage
DELETE /reports/partners/billing/usage/billed
DELETE /reports/partners/billing/usage/unbilled
DELETE /reports/security
DELETE /reports/serviceActivity
DELETE /reports/sla
DELETE /reports/sla/azureADAuthentication
DELETE /reports/userCredentialUsageDetails/{userCredentialUsageDetails-id}
Commands
Get-MgBetaReportTeamCount
Get-MgReportDailyPrintUsageByPrinter
Get-MgReportDailyPrintUsageByUser
Get-MgReportEmailActivityCount
Get-MgReportEmailActivityUserCount
Get-MgReportEmailActivityUserDetail
Get-MgReportEmailAppUsageAppUserCount
Get-MgReportEmailAppUsageUserCount
Get-MgReportEmailAppUsageUserDetail
Get-MgReportEmailAppUsageVersionUserCount
Get-MgReportGroupArchivedPrintJob
Get-MgReportM365AppPlatformUserCount
Get-MgReportM365AppUserCount
Get-MgReportMailboxUsageDetail
Get-MgReportMailboxUsageMailboxCount
Get-MgReportMailboxUsageQuotaStatusMailboxCount
Get-MgReportMailboxUsageStorage
Get-MgReportMonthlyPrintUsageByPrinter
Get-MgReportMonthlyPrintUsageByUser
Get-MgReportOffice365ActivationCount
Get-MgReportOffice365ActivationUserCount
Get-MgReportOffice365ActivationUserDetail
Get-MgReportOffice365ActiveUserCount
Get-MgReportOffice365ActiveUserDetail
Get-MgReportOffice365GroupActivityCount
Get-MgReportOffice365GroupActivityDetail
Get-MgReportOffice365GroupActivityFileCount
Get-MgReportOffice365GroupActivityGroupCount
Get-MgReportOffice365GroupActivityStorage
Get-MgReportOffice365ServiceUserCount
Get-MgReportOneDriveActivityFileCount
Get-MgReportOneDriveActivityUserCount
Get-MgReportOneDriveActivityUserDetail
Get-MgReportOneDriveUsageAccountCount
Get-MgReportOneDriveUsageAccountDetail
Get-MgReportOneDriveUsageFileCount
Get-MgReportOneDriveUsageStorage
Get-MgReportPrinterArchivedPrintJob
Get-MgReportRelyingPartyDetailedSummary
Get-MgReportSharePointActivityFileCount
Get-MgReportSharePointActivityPage
Get-MgReportSharePointActivityUserCount
Get-MgReportSharePointActivityUserDetail
Get-MgReportSharePointSiteUsageDetail
Get-MgReportSharePointSiteUsageFileCount
Get-MgReportSharePointSiteUsagePage
Get-MgReportSharePointSiteUsageSiteCount
Get-MgReportSharePointSiteUsageStorage
Get-MgReportSkypeForBusinessActivityCount
Get-MgReportSkypeForBusinessActivityUserCount
Get-MgReportSkypeForBusinessActivityUserDetail
Get-MgReportSkypeForBusinessDeviceUsageDistributionUserCount
Get-MgReportSkypeForBusinessDeviceUsageUserCount
Get-MgReportSkypeForBusinessDeviceUsageUserDetail
Get-MgReportSkypeForBusinessOrganizerActivityCount
Get-MgReportSkypeForBusinessOrganizerActivityMinuteCount
Get-MgReportSkypeForBusinessOrganizerActivityUserCount
Get-MgReportSkypeForBusinessParticipantActivityCount
Get-MgReportSkypeForBusinessParticipantActivityMinuteCount
Get-MgReportSkypeForBusinessParticipantActivityUserCount
Get-MgReportSkypeForBusinessPeerToPeerActivityCount
Get-MgReportSkypeForBusinessPeerToPeerActivityMinuteCount
Get-MgReportSkypeForBusinessPeerToPeerActivityUserCount
Get-MgReportTeamActivityCount
Get-MgReportTeamActivityDistributionCount
Get-MgReportTeamDeviceUsageDistributionUserCount
Get-MgReportTeamDeviceUsageUserCount
Get-MgReportTeamUserActivityCount
Get-MgReportTeamUserActivityUserCount
Get-MgReportTeamUserActivityUserDetail
Get-MgReportUserArchivedPrintJob
Get-MgReportYammerActivityCount
Get-MgReportYammerActivityUserCount
Get-MgReportYammerActivityUserDetail
Get-MgReportYammerDeviceUsageDistributionUserCount
Get-MgReportYammerDeviceUsageUserCount
Get-MgReportYammerDeviceUsageUserDetail
Get-MgReportYammerGroupActivityCount
Get-MgReportYammerGroupActivityDetail
Get-MgReportYammerGroupActivityGroupCount
Commands
Get-MgBetaReportApplicationSignInDetailedSummary
Get-MgBetaReportAzureAdApplicationSignInSummary
Get-MgBetaReportBrowserDistributionUserCount
Get-MgBetaReportBrowserUserCount
Get-MgBetaReportBrowserUserDetail
Get-MgBetaReportCredentialUsageSummary
Get-MgBetaReportCredentialUserRegistrationCount
Get-MgBetaReportCredentialUserRegistrationDetail
Get-MgBetaReportDailyPrintUsageByPrinter
Get-MgBetaReportDailyPrintUsageByUser
Get-MgBetaReportEmailActivityCount
Get-MgBetaReportEmailActivityUserCount
Get-MgBetaReportEmailActivityUserDetail
Get-MgBetaReportEmailAppUsageAppUserCount
Get-MgBetaReportEmailAppUsageUserCount
Get-MgBetaReportEmailAppUsageUserDetail
Get-MgBetaReportEmailAppUsageVersionUserCount
Get-MgBetaReportFormUserActivityCount
Get-MgBetaReportGroupArchivedPrintJob
Get-MgBetaReportM365AppPlatformUserCount
Get-MgBetaReportM365AppUserCount
Get-MgBetaReportMailboxUsageDetail
Get-MgBetaReportMailboxUsageMailboxCount
Get-MgBetaReportMailboxUsageQuotaStatusMailboxCount
Get-MgBetaReportMailboxUsageStorage
Get-MgBetaReportMicrosoft365CopilotUsageUserDetail
Get-MgBetaReportMicrosoft365CopilotUserCountSummary
Get-MgBetaReportMicrosoft365CopilotUserCountTrend
Get-MgBetaReportMonthlyPrintUsageByPrinter
Get-MgBetaReportMonthlyPrintUsageByUser
Get-MgBetaReportOffice365ActivationCount
Get-MgBetaReportOffice365ActivationUserCount
Get-MgBetaReportOffice365ActivationUserDetail
Get-MgBetaReportOffice365ActiveUserCount
Get-MgBetaReportOffice365ActiveUserDetail
Get-MgBetaReportOffice365GroupActivityCount
Get-MgBetaReportOffice365GroupActivityDetail
Get-MgBetaReportOffice365GroupActivityFileCount
Get-MgBetaReportOffice365GroupActivityGroupCount
Get-MgBetaReportOffice365GroupActivityStorage
Get-MgBetaReportOffice365ServiceUserCount
Get-MgBetaReportOneDriveActivityFileCount
Get-MgBetaReportOneDriveActivityUserCount
Get-MgBetaReportOneDriveActivityUserDetail
Get-MgBetaReportOneDriveUsageAccountCount
Get-MgBetaReportOneDriveUsageAccountDetail
Get-MgBetaReportOneDriveUsageFileCount
Get-MgBetaReportOneDriveUsageStorage
Get-MgBetaReportPrinterArchivedPrintJob
Get-MgBetaReportRelyingPartyDetailedSummary
Get-MgBetaReportServiceActivityMetricForConditionalAccessBlockedSignIn
Get-MgBetaReportServiceActivityMetricForConditionalAccessCompliantDeviceSignInSuccess
Get-MgBetaReportServiceActivityMetricForConditionalAccessManagedDeviceSignInSuccess
Get-MgBetaReportServiceActivityMetricForMfaSignInFailure
Get-MgBetaReportServiceActivityMetricForMfaSignInSuccess
Get-MgBetaReportServiceActivityMetricForSamlSignInSuccess
Get-MgBetaReportSharePointActivityFileCount
Get-MgBetaReportSharePointActivityPage
Get-MgBetaReportSharePointActivityUserCount
Get-MgBetaReportSharePointActivityUserDetail
Get-MgBetaReportSharePointSiteUsageDetail
Get-MgBetaReportSharePointSiteUsageFileCount
Get-MgBetaReportSharePointSiteUsagePage
Get-MgBetaReportSharePointSiteUsageSiteCount
Get-MgBetaReportSharePointSiteUsageStorage
Get-MgBetaReportSkypeForBusinessActivityCount
Get-MgBetaReportSkypeForBusinessActivityUserCount
Get-MgBetaReportSkypeForBusinessActivityUserDetail
Get-MgBetaReportSkypeForBusinessDeviceUsageDistributionUserCount
Get-MgBetaReportSkypeForBusinessDeviceUsageUserCount
Get-MgBetaReportSkypeForBusinessDeviceUsageUserDetail
Get-MgBetaReportSkypeForBusinessOrganizerActivityCount
Get-MgBetaReportSkypeForBusinessOrganizerActivityMinuteCount
Get-MgBetaReportSkypeForBusinessOrganizerActivityUserCount
Get-MgBetaReportSkypeForBusinessParticipantActivityCount
Get-MgBetaReportSkypeForBusinessParticipantActivityMinuteCount
Get-MgBetaReportSkypeForBusinessParticipantActivityUserCount
Get-MgBetaReportSkypeForBusinessPeerToPeerActivityCount
Get-MgBetaReportSkypeForBusinessPeerToPeerActivityMinuteCount
Get-MgBetaReportSkypeForBusinessPeerToPeerActivityUserCount
Get-MgBetaReportSlaAzureAdAuthentication
Get-MgBetaReportTeamActivityCount
Get-MgBetaReportTeamActivityDistributionCount
Get-MgBetaReportTeamCount
Get-MgBetaReportTeamUserActivityTotalDistributionCount
Get-MgBetaReportTeamUserActivityUserDetail
Get-MgBetaReportUserArchivedPrintJob
Get-MgBetaReportUserCredentialUsageDetail
Get-MgBetaReportYammerActivityCount
Get-MgBetaReportYammerActivityUserCount
Get-MgBetaReportYammerActivityUserDetail
Get-MgBetaReportYammerDeviceUsageDistributionUserCount
Get-MgBetaReportYammerDeviceUsageUserCount
Get-MgBetaReportYammerDeviceUsageUserDetail
Get-MgBetaReportYammerGroupActivityCount
Get-MgBetaReportYammerGroupActivityDetail
Get-MgBetaReportYammerGroupActivityGroupCount
Get-MgBetaTenantRelationshipManagedTenantCredentialUserRegistrationSummary

Code Examples

C# / .NET SDK
// Install: dotnet add package Microsoft.Graph
// Install: dotnet add package Azure.Identity
using Microsoft.Graph;
using Azure.Identity;

// Delegated permissions - interactive user sign-in
var scopes = new[] { "Reports.Read.All" };
var options = new InteractiveBrowserCredentialOptions
{
    ClientId = "YOUR_CLIENT_ID",
    TenantId = "YOUR_TENANT_ID",
    RedirectUri = new Uri("http://localhost")
};
var credential = new InteractiveBrowserCredential(options);
var graphClient = new GraphServiceClient(credential, scopes);

// Example: GET /me
var result = await graphClient.Me.GetAsync();
Console.WriteLine($"User: {result?.DisplayName}");

// Application permissions - daemon/service app
var tenantId = "YOUR_TENANT_ID";
var clientId = "YOUR_CLIENT_ID";
var clientSecret = "YOUR_CLIENT_SECRET";

var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var graphClient = new GraphServiceClient(credential);

// Example: GET /users/{user-id}
var users = await graphClient.Users.GetAsync();
foreach (var user in users?.Value ?? [])
{
    Console.WriteLine($"User: {user.DisplayName}");
}
JavaScript / TypeScript
// npm install @azure/msal-browser @microsoft/microsoft-graph-client
import { PublicClientApplication } from "@azure/msal-browser";
import { Client } from "@microsoft/microsoft-graph-client";
import { AuthCodeMSALBrowserAuthenticationProvider } from 
    "@microsoft/microsoft-graph-client/authProviders/authCodeMsalBrowser";

const msalConfig = {
    auth: {
        clientId: "YOUR_CLIENT_ID",
        authority: "https://login.microsoftonline.com/YOUR_TENANT_ID"
    }
};

const pca = new PublicClientApplication(msalConfig);
await pca.initialize();

// Delegated: Login with required scope
const loginResponse = await pca.loginPopup({
    scopes: ["Reports.Read.All"]
});

const authProvider = new AuthCodeMSALBrowserAuthenticationProvider(pca, {
    account: loginResponse.account,
    scopes: ["Reports.Read.All"],
    interactionType: "popup"
});

const graphClient = Client.initWithMiddleware({ authProvider });

// Example: GET /me
const result = await graphClient.api("/me").get();
console.log(result);

// Application: Use client credentials (Node.js backend only)
// npm install @azure/identity @microsoft/microsoft-graph-client
import { ClientSecretCredential } from "@azure/identity";
import { TokenCredentialAuthenticationProvider } from 
    "@microsoft/microsoft-graph-client/authProviders/azureTokenCredentials";

const credential = new ClientSecretCredential(
    "YOUR_TENANT_ID",
    "YOUR_CLIENT_ID", 
    "YOUR_CLIENT_SECRET"
);

const authProvider = new TokenCredentialAuthenticationProvider(credential, {
    scopes: ["https://graph.microsoft.com/.default"]
});

const graphClient = Client.initWithMiddleware({ authProvider });
const result = await graphClient.api("/users").get();
console.log(result);
PowerShell
# Install Microsoft Graph PowerShell module
Install-Module Microsoft.Graph -Scope CurrentUser

# Delegated access - interactive sign-in
Connect-MgGraph -Scopes "Reports.Read.All"

# Verify connection
Get-MgContext | Select-Object Account, TenantId, Scopes

# Example: GET /me
$result = Invoke-MgGraphRequest -Method GET -Uri "https://graph.microsoft.com/v1.0/me"
$result | ConvertTo-Json -Depth 5

# Application access with certificate
$params = @{
    ClientId = "YOUR_CLIENT_ID"
    TenantId = "YOUR_TENANT_ID"
    CertificateThumbprint = "YOUR_CERT_THUMBPRINT"
}
Connect-MgGraph @params

# Or with client secret (not recommended for production)
# Connect-MgGraph -ClientSecretCredential $credential

# Example: GET /users
$result = Invoke-MgGraphRequest -Method GET -Uri "https://graph.microsoft.com/v1.0/users"
$result | ConvertTo-Json -Depth 5

# Always disconnect when done
Disconnect-MgGraph
Python
# pip install msgraph-sdk azure-identity
from azure.identity import InteractiveBrowserCredential, ClientSecretCredential
from msgraph import GraphServiceClient
import asyncio

# Delegated permissions - interactive browser sign-in
credential = InteractiveBrowserCredential(
    client_id="YOUR_CLIENT_ID",
    tenant_id="YOUR_TENANT_ID"
)
scopes = ["Reports.Read.All"]
client = GraphServiceClient(credential, scopes)

async def get_data():
    # Example: GET /me
    result = await client.me.get()
    print(f"User: {result.display_name}")
    return result

asyncio.run(get_data())

# Application permissions - client credentials
credential = ClientSecretCredential(
    tenant_id="YOUR_TENANT_ID",
    client_id="YOUR_CLIENT_ID",
    client_secret="YOUR_CLIENT_SECRET"
)
scopes = ["https://graph.microsoft.com/.default"]
client = GraphServiceClient(credential, scopes)

async def get_users():
    # Example: GET /users
    result = await client.users.get()
    for user in result.value:
        print(f"User: {user.display_name}")
    return result

asyncio.run(get_users())

App Registration

1

Navigate to Azure Portal

Go to App registrations in Microsoft Entra admin center

2

Add API Permission

Select your app → API permissions → Add a permission → Microsoft Graph

3

Select Permission Type

Choose Application permissions or Delegated permissions and search for Reports.Read.All

4

Grant Admin Consent

Application permissions always require admin consent. Click "Grant admin consent" in the Azure portal.