Build PowerShell scripts with Microsoft Graph

This tutorial teaches you how to build a PowerShell script that uses the Microsoft Graph API to access data on behalf of a user.


To learn how to use Microsoft Graph to access data using app-only authentication, see this app-only authentication tutorial.

In this tutorial, you will:


As an alternative to following this tutorial, you can download the completed code through the quick start tool, which automates app registration and configuration. The downloaded code works without any modifications required.

You can also download or clone the GitHub repository and follow the instructions in the README to register an application and configure the project.


Before you start this tutorial, you should have PowerShell installed on your development machine. PowerShell 5.1 is the minimum requirement, but PowerShell 7 is recommended.

You should also have either a personal Microsoft account with a mailbox on, or a Microsoft work or school account. If you don't have a Microsoft account, there are a couple of options to get a free account:


This tutorial was written with PowerShell 7.2.2 and Microsoft Graph PowerShell SDK version 1.9.5. The steps in this guide may work with other versions, but that has not been tested.