<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Microsoft Graph topics</title>
    <link>https://techcommunity.microsoft.com/t5/microsoft-graph/bd-p/OfficeGraph</link>
    <description>Microsoft Graph topics</description>
    <pubDate>Wed, 11 Mar 2026 20:08:54 GMT</pubDate>
    <dc:creator>OfficeGraph</dc:creator>
    <dc:date>2026-03-11T20:08:54Z</dc:date>
    <item>
      <title>Mails with attachments sent via the Graph API are stuck in drafts folder and not being sent</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/mails-with-attachments-sent-via-the-graph-api-are-stuck-in/m-p/4499596#M1493</link>
      <description>&lt;P&gt;Mails being sent via Graph API using the createUploadSession way is keeping the mails in the Drafts folder and not being sent. This was working till mid January. Is there any graph update/ api deprecation that happened recently that is causing the issue?&lt;/P&gt;</description>
      <pubDate>Thu, 05 Mar 2026 04:45:22 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/mails-with-attachments-sent-via-the-graph-api-are-stuck-in/m-p/4499596#M1493</guid>
      <dc:creator>abhaykrishnakasavaraju</dc:creator>
      <dc:date>2026-03-05T04:45:22Z</dc:date>
    </item>
    <item>
      <title>Is principalId Always a GUID in Microsoft Graph ??</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/is-principalid-always-a-guid-in-microsoft-graph/m-p/4494753#M1490</link>
      <description>&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; "error": {&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "code": "Request_BadRequest",&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "message": "Invalid GUID:HR",&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "innerError": {&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "date": "2026-02-13T06:44:24",&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "request-id": "87678d90-1d94-4131-a705-4356ad3568a4",&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "client-request-id": "63569c7b-1dea-42d4-8d72-aa3668c78418"&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; }&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;We’re encountering an issue with the Microsoft Graph API response for directoryRole&lt;/P&gt;&lt;P&gt;Recently, one of our Graph API calls started returning a response where the principalId value appears to be a custom string instead of the expected GUID. In our code, we loop through each id from the delta response, assuming it will always be a valid GUID. However, we are now getting errors because one of the returned principalId values does not match the expected format.&lt;/P&gt;&lt;P&gt;Our questions:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Is it possible for Microsoft Graph API to return a custom string instead of a GUID for principalId?&lt;/LI&gt;&lt;LI&gt;Has anyone experienced similar behavior with delta queries for directoryRole or any other object?&lt;/LI&gt;&lt;LI&gt;Are there any known scenarios where the principalId format differs from the standard GUID?&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Any insights would be appreciated.&lt;/P&gt;</description>
      <pubDate>Fri, 13 Feb 2026 08:32:21 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/is-principalid-always-a-guid-in-microsoft-graph/m-p/4494753#M1490</guid>
      <dc:creator>Agathiyan</dc:creator>
      <dc:date>2026-02-13T08:32:21Z</dc:date>
    </item>
    <item>
      <title>Microsoft Graph API returns 502 Bad Gateway (UnknownError) when calling List members of a chat</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/microsoft-graph-api-returns-502-bad-gateway-unknownerror-when/m-p/4492962#M1488</link>
      <description>&lt;P&gt;&lt;STRONG&gt;Description:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I am encountering a persistent 502 Bad Gateway error with the UnknownError code when attempting to list members of a specific chat via the Microsoft Graph API v1.0. This issue occurs even though the chat ID is valid and the authorization token has the necessary permissions.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;API Endpoint:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;GET /v1.0/chats/{chat-id}/members&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Steps to Reproduce:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;1. Obtain a valid access token with Chat.Read or Chat.ReadWrite permissions.&lt;/P&gt;&lt;P&gt;2. Call the endpoint for a meeting chat:&lt;/P&gt;&lt;P&gt;https://graph.microsoft.com/v1.0/chats/19:meeting_NmU5Yjk3NTAtYTk2ZS00Yzg0LWEyYmQtZTJhMjI4NmJjZmRh@thread.v2/members&lt;/P&gt;&lt;P&gt;3. The API returns a 502 Bad Gateway response.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Debug Information (Request Details):&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;* Date: 2026-02-06 06:17:55 (GMT)&lt;/P&gt;&lt;P&gt;* Request ID: be906f9e-2108-4722-91b8-ecee8bfb41f0&lt;/P&gt;&lt;P&gt;* Client Request ID: be906f9e-2108-4722-91b8-ecee8bfb41f0&lt;/P&gt;&lt;P&gt;* DataCenter: Germany West Central&lt;/P&gt;&lt;P&gt;* X-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"Germany West Central","Slice":"E","Ring":"4","ScaleUnit":"001","RoleInstance":"FR2PEPF0000118F"}}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Raw Response Body:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;"error": {&lt;/P&gt;&lt;P&gt;"code": "UnknownError",&lt;/P&gt;&lt;P&gt;"message": "Bad Gateway",&lt;/P&gt;&lt;P&gt;"innerError": {&lt;/P&gt;&lt;P&gt;"date": "2026-02-06T06:17:55",&lt;/P&gt;&lt;P&gt;"request-id": "be906f9e-2108-4722-91b8-ecee8bfb41f0",&lt;/P&gt;&lt;P&gt;"client-request-id": "be906f9e-2108-4722-91b8-ecee8bfb41f0"&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Additional Context:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;The connection is established successfully via TLS 1.3, but the upstream server seems to be failing. This happens specifically with meeting-related chat threads. Could you please investigate if there is a service degradation or a specific issue with this chat object in the Germany West Central region?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Feb 2026 06:40:08 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/microsoft-graph-api-returns-502-bad-gateway-unknownerror-when/m-p/4492962#M1488</guid>
      <dc:creator>cat2552</dc:creator>
      <dc:date>2026-02-06T06:40:08Z</dc:date>
    </item>
    <item>
      <title>Intermittent connection failures with login.microsoftonline.com since Jan</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/intermittent-connection-failures-with-login-microsoftonline-com/m-p/4492283#M1487</link>
      <description>&lt;P&gt;we are getting intermittent connection failures (handshake error http -1) while connecting to token URL -&lt;/P&gt;&lt;P&gt;"login.microsoftonline.com" since last one month. Anything changed as far as accessing this graph API access token URL? tried grabbing certificate from this URL but still the issue persists. which certificate should we be using?&lt;/P&gt;&lt;P&gt;anybody has any insights on this issue?&lt;/P&gt;</description>
      <pubDate>Wed, 04 Feb 2026 15:50:05 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/intermittent-connection-failures-with-login-microsoftonline-com/m-p/4492283#M1487</guid>
      <dc:creator>vinodivinod</dc:creator>
      <dc:date>2026-02-04T15:50:05Z</dc:date>
    </item>
    <item>
      <title>unable to send notification to teams channel using graph api</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/unable-to-send-notification-to-teams-channel-using-graph-api/m-p/4492079#M1486</link>
      <description>&lt;P&gt;We tried to send notification to teams channel using microsoft graph api via python we can able to send to message to the channel but the notification is not getting triggered in the activity tab we have refered below documentation.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://learn.microsoft.com/en-us/graph/api/team-sendactivitynotification?view=graph-rest-1.0&amp;amp;tabs=python" target="_blank"&gt;team: sendActivityNotification - Microsoft Graph v1.0 | Microsoft Learn&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Also we don't need device authentication and browser authentication please share approach to bypass those things. below is the error we are facing.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;raise exc&lt;/P&gt;&lt;P&gt;msgraph.generated.models.o_data_errors.o_data_error.ODataError:&lt;/P&gt;&lt;P&gt;APIError&lt;/P&gt;&lt;P&gt;Code: 403&lt;/P&gt;&lt;P&gt;message: None&lt;/P&gt;&lt;P&gt;error: MainError(additional_data={}, code='Forbidden', details=None, inner_error=InnerError(additional_dmsgraph.generated.models.o_data_errors.o_data_error.ODataError:&lt;/P&gt;&lt;P&gt;APIError&lt;/P&gt;&lt;P&gt;Code: 403&lt;/P&gt;&lt;P&gt;message: None&lt;/P&gt;&lt;P&gt;error: MainError(additional_data={}, code='Forbidden', details=None, inner_error=InnerError(additional_d APIError&lt;/P&gt;&lt;P&gt;Code: 403&lt;/P&gt;&lt;P&gt;message: None&lt;/P&gt;&lt;P&gt;error: MainError(additional_data={}, code='Forbidden', details=None, inner_error=InnerError(additional_d Code: 403&lt;/P&gt;&lt;P&gt;message: None&lt;/P&gt;&lt;P&gt;error: MainError(additional_data={}, code='Forbidden', details=None, inner_error=InnerError(additional_d message: None&lt;/P&gt;&lt;P&gt;error: MainError(additional_data={}, code='Forbidden', details=None, inner_error=InnerError(additional_d error: MainError(additional_data={}, code='Forbidden', details=None, inner_error=InnerError(additional_data={}, client_request_id='________-___-____-____-____________', date=datetime.datetime(2026, 2, 3, 14, 37, 8), odata_type=None, request_id='________-___-____-____-____________'), message="Application with AAD App Id '________-___-____-____-____________' is not authorized to generate notifications about 'https://graph.microsoft.com/v1.0/teams/6a6079bc-feaf-4865-bc21-1201b310c25c' to the recipient. Ensure that the expected Teams app is installed in the target scope (user, team, or chat).", target=None).&lt;BR /&gt;&lt;BR /&gt;Please help us to resolve this issue.&lt;/P&gt;</description>
      <pubDate>Wed, 04 Feb 2026 07:26:20 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/unable-to-send-notification-to-teams-channel-using-graph-api/m-p/4492079#M1486</guid>
      <dc:creator>maram_akhil_21</dc:creator>
      <dc:date>2026-02-04T07:26:20Z</dc:date>
    </item>
    <item>
      <title>Deleted security groups return "securityEnabled": false, appear as ‘unrecognized’ in Entra admin</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/deleted-security-groups-return-quot-securityenabled-quot-false/m-p/4490212#M1485</link>
      <description>&lt;P&gt;When retrieving the list of soft-deleted groups with Graph, both M365 groups and security groups are returned.&lt;/P&gt;&lt;P&gt;However, the securityEnabled flag is returned as false for security groups. &lt;STRONG&gt;Is this a bug?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;This likely leads to displaying them in the Entra admin center as 'Unrecognized' type.&lt;/P&gt;&lt;img /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 28 Jan 2026 21:49:12 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/deleted-security-groups-return-quot-securityenabled-quot-false/m-p/4490212#M1485</guid>
      <dc:creator>soniabouna</dc:creator>
      <dc:date>2026-01-28T21:49:12Z</dc:date>
    </item>
    <item>
      <title>Slow UI update for deleted events</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/slow-ui-update-for-deleted-events/m-p/4488773#M1484</link>
      <description>&lt;P&gt;I've built an integration that continuously syncs events between an external scheduling system and Exchange Online using Microsoft Graph.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm observing a recurring issue when deleting calendar events via Graph:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;A DELETE request to Graph returns success (204 No Content).&lt;/LI&gt;&lt;LI&gt;A subsequent GET /events/{id} returns 404, confirming the event is deleted server-side.&lt;/LI&gt;&lt;LI&gt;However, the event continues to appear in the Outlook UI (both Outlook Web and desktop) for an extended period (sometimes hours), even after page reloads or app restarts.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The odd behaviour&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;The event is still displayed in the user interface for up to several hours&lt;/LI&gt;&lt;LI&gt;The event persist through page reloads&lt;/LI&gt;&lt;LI&gt;If the user clicks the event it opens briefly and immediately closes, the event disappears from the UI afterward.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Additional details&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Delete endpoint:&lt;PRE&gt;/users/{id}/events/{id}&lt;/PRE&gt;&lt;/LI&gt;&lt;LI&gt;Graph response:&lt;PRE&gt;204 No Content&lt;/PRE&gt;&lt;/LI&gt;&lt;LI&gt;Verified deletion via GET → 404&lt;/LI&gt;&lt;LI&gt;Reproduces in both Outlook Web and Outlook desktop&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Questions&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Is this a known Outlook client caching or calendar view indexing issue?&lt;/LI&gt;&lt;LI&gt;Is there a way to force client reconciliation after deletes?&lt;/LI&gt;&lt;LI&gt;Are there Graph or Exchange constraints around rapid create/update/delete cycles that could cause this UI inconsistency?&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Fri, 23 Jan 2026 09:47:14 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/slow-ui-update-for-deleted-events/m-p/4488773#M1484</guid>
      <dc:creator>devdevdev</dc:creator>
      <dc:date>2026-01-23T09:47:14Z</dc:date>
    </item>
    <item>
      <title>How to Retrieve Windows Edition (SKU) from managedDevices API</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/how-to-retrieve-windows-edition-sku-from-manageddevices-api/m-p/4480501#M1480</link>
      <description>&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;I am working with the &lt;STRONG&gt;Microsoft Graph API&lt;/STRONG&gt; endpoint&lt;BR /&gt;&lt;EM&gt;/v1.0/deviceManagement/managedDevices&lt;/EM&gt;&lt;BR /&gt;to iterate through all devices in a tenant and collect operating system related information.&lt;/P&gt;&lt;P&gt;For Windows devices, the operatingSystem field only returns "Windows".&amp;nbsp;However, Windows has multiple editions such as Enterprise, Education, and Pro.&lt;/P&gt;&lt;P&gt;For my use case, I need the specific Windows edition.&amp;nbsp;Is it possible to retrieve this information using only the &lt;STRONG&gt;v1.0&lt;/STRONG&gt; endpoint,&amp;nbsp;or is the &lt;STRONG&gt;beta&lt;/STRONG&gt; endpoint&lt;BR /&gt;&lt;EM&gt;/beta/deviceManagement/managedDevices/{managedDeviceId}&lt;/EM&gt;&lt;BR /&gt;required to get the SKU family?&lt;/P&gt;&lt;P&gt;Thanks in advance for your help.&lt;/P&gt;</description>
      <pubDate>Tue, 23 Dec 2025 07:33:16 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/how-to-retrieve-windows-edition-sku-from-manageddevices-api/m-p/4480501#M1480</guid>
      <dc:creator>KienQS</dc:creator>
      <dc:date>2025-12-23T07:33:16Z</dc:date>
    </item>
    <item>
      <title>Resource not found while trying to access the available resource</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/resource-not-found-while-trying-to-access-the-available-resource/m-p/4477965#M1477</link>
      <description>&lt;P&gt;I am attempting to automate CRUD operations on Microsoft Entra objects using the Microsoft Graph API. However, I am encountering a &lt;STRONG&gt;Resource not found&lt;/STRONG&gt; error when accessing a resource programmatically, even though the same resource is accessible without issue when invoking the API endpoint via Postman.&lt;/P&gt;</description>
      <pubDate>Mon, 15 Dec 2025 11:41:13 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/resource-not-found-while-trying-to-access-the-available-resource/m-p/4477965#M1477</guid>
      <dc:creator>Agathiyan</dc:creator>
      <dc:date>2025-12-15T11:41:13Z</dc:date>
    </item>
    <item>
      <title>Alias for Refinable Managed Property Not Working in Search Queries</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/alias-for-refinable-managed-property-not-working-in-search/m-p/4477885#M1475</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The alias for the refinable managed property has worked as expected in sortProperties for the past year, but it has recently stopped working and now returns an error. Using the original managed property name (RefinableDateSingle01) continues to work as expected.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The error is shown below, together with the trace ID. Unfortunately, we are unable to switch to using RefinableDateSingle01 in sortProperties as it does not meet our business requirements.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We are currently facing challenges due to the large number of SharePoint sites, many of which we do not have permission to access. As a result, we can only confirm that the refinable managed property RefinableDateSingle01 and its associated alias are configured correctly on the SharePoint sites where we have full access.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What is the root cause of this issue, and how can it be resolved?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A class="lia-external-url" href="https://graph.microsoft.com/v1.0/search/query" target="_blank"&gt;https://graph.microsoft.com/v1.0/search/query&lt;/A&gt;&lt;/P&gt;&lt;LI-CODE lang="json"&gt;{
  "requests": [
    {
      "entityTypes": [
        "listItem"
      ],
      "query": {
        "queryString": "* AND SiteId:\"siteId\""
      },
      "from": 0,
      "size": 50,
      "sortProperties": [
        {
          "name": "RefinableDateSingle01", // This works when I use the refinable managed property name (RefinableDateSingle01), but it does not work when I use the alias I defined for this property
          "isDescending": false
        }
      ]
    }
  ]
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;500 Internal Server Error (When I used alias in sortProperties)&lt;/P&gt;&lt;LI-CODE lang="json"&gt;{
    "error": {
        "code": "InternalServerError",
        "message": "The call failed, please try again.",
        "target": "",
        "details": [
            {
                "code": "InternalServerError",
                "message": "The call failed, please try again.",
                "target": "",
                "details": [
                    {
                        "code": "InternalServerError",
                        "message": "The call failed, please try again.",
                        "target": "",
                        "details": [
                            {
                                "code": "InternalServerError",
                                "message": "The call failed, please try again.",
                                "target": "",
                                "details": [
                                    {
                                        "code": "InternalServerError",
                                        "message": "The call failed, please try again.",
                                        "target": "",
                                        "details": [
                                            {
                                                "code": "InternalServerError",
                                                "message": "The call failed, please try again.",
                                                "target": "",
                                                "details": [
                                                    {
                                                        "code": "InternalServerError",
                                                        "message": "The call failed, please try again.",
                                                        "target": "",
                                                        "details": [
                                                            {
                                                                "code": "InternalServerError",
                                                                "message": "The call failed, please try again.",
                                                                "target": "",
                                                                "details": [
                                                                    {
                                                                        "code": "FanoutDownstreamContradiction",
                                                                        "message": "The call failed, please try again.",
                                                                        "target": "",
                                                                        "details": [
                                                                            {
                                                                                "code": "TwoStepFanout_FirstStepFailed",
                                                                                "message": "The call failed, please try again.",
                                                                                "target": "",
                                                                                "serviceName": "Xap",
                                                                                "moduleName": "SubstrateSearch.FanoutV2.MultiDimensionSearchFanoutPluginV3",
                                                                                "contactTeam": "3sdri",
                                                                                "httpCode": 500
                                                                            },
                                                                            {
                                                                                "code": "FanoutDownstreamContradiction",
                                                                                "message": "The call failed, please try again.",
                                                                                "target": "",
                                                                                "serviceName": "FanoutService",
                                                                                "moduleName": "Fanout",
                                                                                "contactTeam": "3STenantSearchDevs",
                                                                                "httpCode": 500
                                                                            }
                                                                        ],
                                                                        "serviceName": "FanoutService",
                                                                        "moduleName": "Fanout",
                                                                        "contactTeam": "3STenantSearchDevs",
                                                                        "httpCode": 500
                                                                    }
                                                                ],
                                                                "moduleName": "SubstrateFanoutSearchWorkflow",
                                                                "httpCode": 500
                                                            }
                                                        ],
                                                        "moduleName": "AscUserSearchFanoutWorkflowV2",
                                                        "httpCode": 500
                                                    }
                                                ],
                                                "moduleName": "AscUserSearchFanoutWorkflowV2",
                                                "httpCode": 500
                                            }
                                        ],
                                        "moduleName": "G21AscWorkflow",
                                        "httpCode": 500
                                    }
                                ],
                                "moduleName": "TenantFileSearchFederationWorkflow_ASC",
                                "httpCode": 500
                            }
                        ],
                        "moduleName": "TenantFileSearchFederationWorkflow",
                        "httpCode": 500
                    }
                ],
                "moduleName": "FederationWorkflow",
                "httpCode": 500
            }
        ],
        "moduleName": "TopLevelWorkflowBase",
        "httpCode": 500
    },
    "Instrumentation": {
        "TraceId": "57c005b9-07fc-453b-8c73-2650d90670e0"
    }
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 15 Dec 2025 08:36:30 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/alias-for-refinable-managed-property-not-working-in-search/m-p/4477885#M1475</guid>
      <dc:creator>Sean17</dc:creator>
      <dc:date>2025-12-15T08:36:30Z</dc:date>
    </item>
    <item>
      <title>Error while creating Graph API Access token</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/error-while-creating-graph-api-access-token/m-p/4473588#M1474</link>
      <description>&lt;P&gt;Hi guys,&lt;/P&gt;&lt;P&gt;I am trying to create an access token for calling Graph API through browser.&amp;nbsp; When I call 'https://login.microsoftonline.com/XXXX-XXXX-XXX-XXX-XXX/oauth2/token' api using AJAX, I receive below error.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN class="lia-text-color-8"&gt;Access to XMLHttpRequest at 'https://login.microsoftonline.com/XXXX-XXXX-XXX-XXX-XXX/oauth2/token' from origin 'https://cevalogisticsoffice365.sharepoint.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="lia-text-color-21"&gt;Please can you provide me why this error is occurring and what is the solution for this.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="lia-text-color-21"&gt;Regards&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 27 Nov 2025 16:59:58 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/error-while-creating-graph-api-access-token/m-p/4473588#M1474</guid>
      <dc:creator>sanjaychauhan</dc:creator>
      <dc:date>2025-11-27T16:59:58Z</dc:date>
    </item>
    <item>
      <title>Attempt to automate GSA setup in Azure through Graph API</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/attempt-to-automate-gsa-setup-in-azure-through-graph-api/m-p/4472488#M1473</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Using &lt;A class="lia-external-url" href="https://developer.microsoft.com/en-us/graph/graph-explorer" target="_blank"&gt;https://developer.microsoft.com/en-us/graph/graph-explorer&lt;/A&gt; and signed in as a user with Applications, Network, NetworkPolicy, Global Secure Access Admin roles, I am trying to POST to&amp;nbsp;&lt;BR /&gt;&lt;A class="lia-external-url" href="https://graph.microsoft.com/beta/networkAccess/connectivity/remoteNetworks" target="_blank"&gt;https://graph.microsoft.com/beta/networkAccess/connectivity/remoteNetworks&lt;/A&gt;&lt;BR /&gt;using Payload Body&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; "name": "Hello",&lt;/P&gt;&lt;P&gt;&amp;nbsp; "region": "norwayEast"&lt;/P&gt;&lt;P&gt;}&lt;BR /&gt;How come I get the HTTP response code 400 with&lt;/P&gt;&lt;P&gt;"code": "UnknownError",&lt;/P&gt;&lt;P&gt;"message": "{\"error\":\"Invalid request parameters\"}",&lt;BR /&gt;?&lt;/P&gt;</description>
      <pubDate>Mon, 24 Nov 2025 09:05:21 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/attempt-to-automate-gsa-setup-in-azure-through-graph-api/m-p/4472488#M1473</guid>
      <dc:creator>Sjur</dc:creator>
      <dc:date>2025-11-24T09:05:21Z</dc:date>
    </item>
    <item>
      <title>O365 Group email settings</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/o365-group-email-settings/m-p/4470987#M1470</link>
      <description>&lt;P&gt;I am in the middle of trying to create some automated routines that create groups in O365 and add/remove members from them as needed. One of things I ran into is that when an email is sent to the group, the emails are not going into each members' inbox and are only visible in Outlook through "Go to groups" in the left hand menu.&lt;/P&gt;&lt;P&gt;I can see the settings that need to be set but can't set them because either, A: it just doesn't do it or B: says I don't have permission.&lt;/P&gt;&lt;P&gt;Doing this through C# and the Graph SDK&lt;/P&gt;&lt;P&gt;The two items I think I need to turn on are below. What permissions are needed to be able to manage those settings but NOT be able to have access to anyone and everyones' email boxes, emails, etc or is there another way to do this?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;IsSubscribedByMail&lt;/P&gt;&lt;P&gt;AutoSubscribeNewMembers&lt;/P&gt;</description>
      <pubDate>Tue, 18 Nov 2025 13:53:20 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/o365-group-email-settings/m-p/4470987#M1470</guid>
      <dc:creator>xxBigbacon</dc:creator>
      <dc:date>2025-11-18T13:53:20Z</dc:date>
    </item>
    <item>
      <title>Retrieve Item Analytics for Multiple Items</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/retrieve-item-analytics-for-multiple-items/m-p/4469571#M1469</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;our team has noticed that it’s not possible to retrieve analytics when querying a list of items using $expand.&lt;/P&gt;&lt;P&gt;When we run this type of query, we don’t receive an error indicating that it’s not allowed; instead, the analytics property just returns null values.&lt;/P&gt;&lt;P&gt;https://graph.microsoft.com/v1.0/sites/&amp;lt;&amp;lt;SiteId&amp;gt;&amp;gt;/lists/&amp;lt;&amp;lt;ListID&amp;gt;&amp;gt;/items?$expand=fields,analytics($expand=allTime)&lt;/P&gt;&lt;img /&gt;&lt;P&gt;&lt;BR /&gt;However, when we query a single item, everything works as expected.&lt;/P&gt;&lt;P&gt;https://graph.microsoft.com/v1.0/sites/&amp;lt;&amp;lt;SiteId&amp;gt;&amp;gt;/lists/&amp;lt;&amp;lt;ListID&amp;gt;&amp;gt;/items/&amp;lt;&amp;lt;ListID&amp;gt;&amp;gt;/analytics/allTime&lt;/P&gt;&lt;img /&gt;&lt;P&gt;&lt;BR /&gt;Is there a way to retrieve analytics data for multiple items in one request?&lt;/P&gt;</description>
      <pubDate>Thu, 13 Nov 2025 08:27:30 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/retrieve-item-analytics-for-multiple-items/m-p/4469571#M1469</guid>
      <dc:creator>michalkornet</dc:creator>
      <dc:date>2025-11-13T08:27:30Z</dc:date>
    </item>
    <item>
      <title>Missing types in personType resource type documentation</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/missing-types-in-persontype-resource-type-documentation/m-p/4468069#M1466</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Some time ago, I was working with the Microsoft Graph People endpoint and wanted to filter by personType properties. I’d like to suggest listing all possible values for personType in the documentation for the resource type.&lt;/P&gt;&lt;P&gt;Here’s the documentation I’ve been using:&lt;/P&gt;&lt;P&gt;&lt;A href="https://learn.microsoft.com/en-us/graph/api/resources/persontype?view=graph-rest-1.0" target="_blank"&gt;personType resource type - Microsoft Graph v1.0 | Microsoft Learn&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;After some research, I found this blog post that seems to contain relevant information: &lt;A href="https://devblogs.microsoft.com/microsoft365dev/people-api-available-in-microsoft-graph-v1/" target="_blank"&gt;https://devblogs.microsoft.com/microsoft365dev/people-api-available-in-microsoft-graph-v1/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Is this list still valid? If so, perhaps it could be included directly in the resource type documentation.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 07 Nov 2025 12:15:59 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/missing-types-in-persontype-resource-type-documentation/m-p/4468069#M1466</guid>
      <dc:creator>michalkornet</dc:creator>
      <dc:date>2025-11-07T12:15:59Z</dc:date>
    </item>
    <item>
      <title>Entra Conditional Access Issue</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/entra-conditional-access-issue/m-p/4465522#M1465</link>
      <description>&lt;P&gt;Hi Guys,&lt;BR /&gt;Our Outlook add-in relies on the Graph API to fetch emails. Due to customer-side Conditional Access (CA) Policies, we are seeing critical failures where Continuous Access Evaluation (CAE) demands user interaction (InteractionRequired code) to resolve challenges like LocationConditionEvaluationSatisfied or TokenCreatedWithOutdatedPolicies. Since this authentication occurs backend-to-Entra, we lack a frontend mechanism to prompt the required user interaction. Is there a recommended pattern, method, or architectural change that allows our backend to redirect or challenge the user for interactive sign-in, thereby satisfying these CAE requirements and unblocking customers? Exact error messages: 1. Continuous access evaluation resulted in challenge with result: InteractionRequired and code: LocationConditionEvaluationSatisfied 2. Continuous access evaluation resulted in challenge with result: InteractionRequired and code: TokenCreatedWithOutdatedPolicies&lt;/P&gt;</description>
      <pubDate>Thu, 30 Oct 2025 09:07:09 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/entra-conditional-access-issue/m-p/4465522#M1465</guid>
      <dc:creator>aniket-kuiri-procore</dc:creator>
      <dc:date>2025-10-30T09:07:09Z</dc:date>
    </item>
    <item>
      <title>403 Error: Application access policy not found, -Global scope not available in tenant</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/403-error-application-access-policy-not-found-global-scope-not/m-p/4461052#M1458</link>
      <description>&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;I'm trying to use Microsoft Graph API to retrieve online meeting details using an application identity. However, I receive a 403 error with the message:&lt;BR /&gt;&lt;STRONG&gt;"No application access policy found for this app"&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I followed the documentation here: Configure application access policy, but I encountered a problem: the -Global scope mentioned in the documentation is not available in my tenant.&lt;/P&gt;&lt;P&gt;I’ve successfully granted the policy using the following methods:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Option A – Grant to Specific User&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="powershell"&gt;Grant-CsApplicationAccessPolicy -PolicyName "YOUR_POLICY_NAME" -Identity "email address removed for privacy reasons"&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Option B – Grant to AD Group&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="powershell"&gt;New-CsGroupPolicyAssignment -GroupId "YOUR_GROUP_ID" -PolicyType ApplicationAccessPolicy -PolicyName "YOUR_POLICY_NAME"&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;These work fine, and the app can access online meetings for users or groups assigned this way.&lt;BR /&gt;However, I need to allow the app to access meetings across the organization, and the -Global assignment method is not available in my tenant.&lt;/P&gt;&lt;H3&gt;Questions:&lt;/H3&gt;&lt;UL&gt;&lt;LI&gt;Is there an alternative to -Global for tenant-wide access?&lt;/LI&gt;&lt;LI&gt;Is this limitation expected in certain tenant configurations?&lt;/LI&gt;&lt;LI&gt;Any workaround or best practice for enabling organization-wide access to online meetings via Graph API?&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Thanks in advance!&lt;/P&gt;</description>
      <pubDate>Mon, 13 Oct 2025 07:11:00 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/403-error-application-access-policy-not-found-global-scope-not/m-p/4461052#M1458</guid>
      <dc:creator>David_Chan2255</dc:creator>
      <dc:date>2025-10-13T07:11:00Z</dc:date>
    </item>
    <item>
      <title>Unable to authenticate with MSAL using a certificate</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/unable-to-authenticate-with-msal-using-a-certificate/m-p/4460574#M1453</link>
      <description>&lt;P&gt;Hi guys,&lt;/P&gt;&lt;P&gt;I'm using the certificate authentication for my WinForms app to connect to SharePoint and Graph API. I followed this article to create the certificate &lt;A href="https://learn.microsoft.com/en-us/entra/identity-platform/howto-create-self-signed-certificate" target="_blank"&gt;Create a self-signed public certificate to authenticate your application - Microsoft identity platform | Microsoft Learn&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Uploaded the certificate to the App Registration, gave all appropriate permissions. However, when I tried to connect to SharePoint or the Graph API, I got this error&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;A configuration issue is preventing authentication - check the error message from the server for details. You can modify the configuration in the application registration portal. See https://aka.ms/msal-net-invalid-client for details. &amp;nbsp;Original exception: AADSTS700021: Client assertion application identifier doesn't match 'client_id' parameter. Review the documentation at https://learn.microsoft.com/entra/identity-platform/certificate-credentials .&lt;/P&gt;&lt;P&gt;Microsoft.Graph.ServiceException: Code: generalException&lt;BR /&gt;Message: An error occurred sending the request.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;BUT, this only happened on 1 specific machine running Windows 11 Pro. I tested on 4-5 different machines (both W10 and W11), they didn't get this error.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I tried verifying the cert thumbprint which matched the one uploaded on the App Registrations. The certificate is not stored in the machine cert store, I use X509KeyStorageFlags.EphemeralKeySet when calling it. Not sure what else to check.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 10 Oct 2025 05:07:54 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/unable-to-authenticate-with-msal-using-a-certificate/m-p/4460574#M1453</guid>
      <dc:creator>Jack_Le_Syn</dc:creator>
      <dc:date>2025-10-10T05:07:54Z</dc:date>
    </item>
    <item>
      <title>403 Forbidden when sending mail with app-only token via Microsoft Graph</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/403-forbidden-when-sending-mail-with-app-only-token-via/m-p/4458775#M1451</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am trying to send emails from my Outlook account using a registered enterprise application in Azure AD.&lt;/P&gt;&lt;P&gt;We created an application registration in our tenant, assigned the relevant users, and granted admin consent for these Microsoft Graph application permissions: Mail.Send and Mail.ReadWrite and Mail.Send.Shared.&lt;/P&gt;&lt;P&gt;I authenticate with application credentials (client_id, client_secret, tenant_id) and successfully retrieve an app-only access token using MSAL in Python:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;def get_access_token() -&amp;gt; str:&lt;BR /&gt;&amp;nbsp; &amp;nbsp; load_dotenv()&lt;BR /&gt;&amp;nbsp; &amp;nbsp; client_id = os.getenv("CLIENT_ID")&lt;BR /&gt;&amp;nbsp; &amp;nbsp; client_secret = os.getenv("CLIENT_SECRET")&lt;BR /&gt;&amp;nbsp; &amp;nbsp; tenant_id = os.getenv("TENANT_ID")&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; authority = f"https://login.microsoftonline.com/{tenant_id}"&lt;BR /&gt;&amp;nbsp; &amp;nbsp; scopes = ["https://graph.microsoft.com/.default"] &amp;nbsp;# app-only token&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; app = msal.ConfidentialClientApplication(&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; client_id=client_id,&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; client_credential=client_secret,&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; authority=authority&lt;BR /&gt;&amp;nbsp; &amp;nbsp; )&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; result = app.acquire_token_for_client(scopes=scopes)&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; if "access_token" not in result:&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; raise RuntimeError(f"Auth failed: {result.get('error_description') or result}")&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; return result["access_token"]&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;The token is retrieved successfully. However, when I try to send an email with:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;GRAPH_BASE = "https://graph.microsoft.com/v1.0"&lt;/P&gt;&lt;P&gt;def send_email(access_token: str, from_user: str, to_address: str, subject: str, body_text: str, save_to_sent: bool = True) -&amp;gt; bool:&lt;BR /&gt;&amp;nbsp; &amp;nbsp; """&lt;BR /&gt;&amp;nbsp; &amp;nbsp; Sends a plain-text email via POST /users/{from_user}/sendMail using an app-only token.&lt;BR /&gt;&amp;nbsp; &amp;nbsp; Returns True on success; raises HTTPError on failure.&lt;BR /&gt;&amp;nbsp; &amp;nbsp; """&lt;BR /&gt;&amp;nbsp; &amp;nbsp; payload = {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "message": {&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "subject": subject,&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "body": {"contentType": "Text", "content": body_text},&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "toRecipients": [{"emailAddress": {"address": to_address}}],&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; },&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "saveToSentItems": bool(save_to_sent),&lt;BR /&gt;&amp;nbsp; &amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &amp;nbsp; r = requests.post(&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; f"{GRAPH_BASE}/users/{from_user}/sendMail",&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; headers={"Authorization": f"Bearer {access_token}"},&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; json=payload,&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; timeout=20,&lt;BR /&gt;&amp;nbsp; &amp;nbsp; )&lt;BR /&gt;&amp;nbsp; &amp;nbsp; r.raise_for_status()&lt;BR /&gt;&amp;nbsp; &amp;nbsp; return True&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;…I get this error:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;403 Client Error: Forbidden for url: https://graph.microsoft.com/v1.0/users/{from_user}/sendMail&lt;/P&gt;&lt;P&gt;File "C:\mail\src\mail.py", line 53, in send_email r.raise_for_status() ~~~~~~~~~~~~~~~~~~^^ File "C:\mail\src\mail.py", line 111, in &amp;lt;module&amp;gt; send_email(token, from_user, to, "Hello from Microsoft Graph", "Hello Human") ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ requests.exceptions.HTTPError: 403 Client Error: Forbidden for url: https://graph.microsoft.com/v1.0/users/{from_user}/sendMail&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;where {from_user} is my actual mailbox address (e.g., email address removed for privacy reasons).&lt;/P&gt;&lt;P&gt;Since the app has Mail.Send (Application) permission with admin consent, my understanding is that the app should be able to send mail on behalf of any user in the tenant using /users/{user}/sendMail.&lt;/P&gt;&lt;P&gt;Is there another configuration step I am missing (e.g., Application Access Policy or mailbox-level Send As requirement)? Any guidance on why this 403 happens despite having Mail.Send application permissions with admin consent would be very helpful.&lt;/P&gt;&lt;P&gt;Thank you!&lt;/P&gt;</description>
      <pubDate>Fri, 03 Oct 2025 08:14:20 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/403-forbidden-when-sending-mail-with-app-only-token-via/m-p/4458775#M1451</guid>
      <dc:creator>rcant</dc:creator>
      <dc:date>2025-10-03T08:14:20Z</dc:date>
    </item>
    <item>
      <title>Granting App ability to change group memberships by making it an owner?</title>
      <link>https://techcommunity.microsoft.com/t5/microsoft-graph/granting-app-ability-to-change-group-memberships-by-making-it-an/m-p/4456943#M1449</link>
      <description>&lt;P&gt;Hello,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We'd like an app to be able to control memberships of only certain security groups using&amp;nbsp;&lt;STRONG&gt;app-based authentication.&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Today it is documented that a&amp;nbsp;&lt;STRONG&gt;GroupMember.ReadWrite.All&amp;nbsp;&lt;/STRONG&gt;role is needed to do this on the app registration:&lt;BR /&gt;&amp;nbsp;&lt;A href="https://learn.microsoft.com/en-us/graph/api/group-post-members?view=graph-rest-1.0&amp;amp;tabs=http" target="_blank"&gt;https://learn.microsoft.com/en-us/graph/api/group-post-members?view=graph-rest-1.0&amp;amp;tabs=http&lt;/A&gt;&lt;/P&gt;&lt;P&gt;This, however, grants access to the app to make changes to&amp;nbsp;&lt;STRONG&gt;any group.&lt;/STRONG&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;However,&amp;nbsp;&lt;/STRONG&gt;we have noticed that API calls to change memberships work on groups owned by the&amp;nbsp;&lt;STRONG&gt;Service Principal.&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For example, if I make a call to the API below for memberships and the app is assigned as the owner of the group, it works.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://graph.microsoft.com/v1.0/groups/{{group-id}}/members/" target="_blank"&gt;https://graph.microsoft.com/v1.0/groups/{{group-id}}/members/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Is this a supported mechanism? I don't see it documented anywhere.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 25 Sep 2025 14:29:09 GMT</pubDate>
      <guid>https://techcommunity.microsoft.com/t5/microsoft-graph/granting-app-ability-to-change-group-memberships-by-making-it-an/m-p/4456943#M1449</guid>
      <dc:creator>Carl_Karawani</dc:creator>
      <dc:date>2025-09-25T14:29:09Z</dc:date>
    </item>
  </channel>
</rss>

