Introduction

Microsoft Graph API is a unified REST API endpoint that allows you to access and interact with data across Microsoft 365 services such as Outlook, OneDrive, Teams, SharePoint, and Azure Active Directory. It provides a single interface for retrieving, creating, updating, and deleting data stored in Microsoft 365.

In PowerApps, the Microsoft Graph API can extend your app's capabilities beyond what built-in connectors provide. While PowerApps has connectors such as Office 365 Users, SharePoint, and Office 365 Groups, these connectors cover only common scenarios. Using Graph API allows you to access more advanced or custom data and perform actions that are not natively supported in PowerApps.

Why Use Graph API in PowerApps?

How It Works in PowerApps

1️⃣ Get My Profile Using Graph API

Call Microsoft Graph directly from Power Apps to retrieve the current user’s profile. There are a couple of approaches. I’ll give you a reliable way using a Custom Connector, since the built-in Office 365 Groups aren't reliable.HttpRequest won’t work for /me reliably.

TinyTake09-02-2026-05-59-24

Button Name: Get Profile

On Select:

Set(VarMyProfile, Office365Groups.HttpRequest("https://graph.microsoft.com/v1.0/me","GET",""))

1) What this does

2) Things to Watch Out For

  1. Permissions:

    • The Office365Groups connector only has access to group-related data by default, not the full Graph API.

    • To access /me or /users, you may not have permission, and it can throw a 403 error.

  2. Alternative:

    • For /me, you don’t need HttpRequest at all. Use the built-in connector:

Set(VarMyProfile, Office365Users.MyProfile())
  1. If you really need HttpRequest:

    • Make sure your app has Graph API permissions configured in Azure AD (e.g., User.Read) and that the connector supports calling /me.

    • Not all Office 365 connectors can call arbitrary Graph endpoints; Office365Groups is mostly for groups and teams.

2️⃣ Example Using Office365Groups.HttpRequest Properly

TinyTake09-02-2026-06-02-45

If you want to call groups data:

Button Name: Get Joined Teams

On Select:

Set(MyGroups, Office365Groups.HttpRequest(
    "https://graph.microsoft.com/v1.0/me/joinedTeams",
    "GET",
    ""
));

3️⃣Get Sites and Lists

TinyTake09-02-2026-06-51-41

On Search button : On Select

Set(VarSites, Office365Groups.HttpRequest("https://graph.microsoft.com/v1.0/sites?search=" & TextInput1.Text , "GET","")); 

On List button : On Select

Set(VarLists, Office365Groups.HttpRequest("https://graph.microsoft.com/v1.0/sites/"& ThisItem.Value.id &"/lists","GET",""))

On Site Link Icon: on Select

Set(VarLists, Office365Groups.HttpRequest("https://graph.microsoft.com/v1.0/sites/"& ThisItem.Value.id &"/lists","GET",""))

On List Link Icon: Select

Launch(ThisItem.Value.webUrl,"",LaunchTarget.New)

Conclusion: