A unified data governance solution that helps manage, protect, and discover data across your organization
Open a Microsoft support case for a Graph-to-Purview backend authorization failure; the documented API contract supports both delegated and application RecordsManagement.ReadWrite.All, so your successful portal access plus identical app-only and delegated failures leaves no documented tenant-side Graph permission fix.
Why this points to the service backend
The stable v1.0 contracts explicitly support:
-
GET /security/triggerTypes/retentionEventTypeswith delegated or applicationRecordsManagement.Read.AllorRecordsManagement.ReadWrite.All.^1^ -
GET /security/triggers/retentionEventswith the same delegated or application permissions.^2^ -
POST /security/triggers/retentionEventswith delegated or applicationRecordsManagement.ReadWrite.All.^3^ -
POST /security/triggerTypes/retentionEventTypeswith delegated or applicationRecordsManagement.ReadWrite.All.^4^
Those contracts do not document a Global Administrator requirement. Because both authentication modes fail during even a collection GET, changing the POST body, SDK, secret, certificate, or Graph API version is unlikely to address this failure.
The same DataInsights command(GET) FAILED - Forbidden signature has been reported for the adjacent Purview retention-label API. In that case, Microsoft support reproduced an undocumented dependency on Global Administrator and characterized it as potentially internal to the endpoint.^5^ That report is not proof that retention-event endpoints have the same dependency, so Global Administrator should not be treated as the permanent fix.
Support case details
Include the following for one delegated and one application request:
- UTC timestamp.
- Graph
request-idandclient-request-idfrom the response. - Tenant cloud and region, without posting the tenant ID publicly.
- Exact v1.0 method and URL.
- Full sanitized error showing:
-
DataInsightsRequestError -
DataInsights command(GET) FAILED - Forbidden - the
PROD.OUTLOOK.COMtarget
-
- Confirmation that:
- application and delegated
RecordsManagement.ReadWrite.Allare admin-consented; - the delegated token contains the scope;
- the user can create the same event types and events in Purview;
- both v1.0 and beta produce the same result.
- application and delegated
Ask support to investigate authorization between Microsoft Graph Records Management and DataInsights/EOP rather than app consent.
Temporary diagnostic only: Global Administrator
If your security policy permits it, support might ask for one controlled delegated test with a temporarily activated Global Administrator account because the matching retention-label incident succeeded only under that role.^5^
Use just the read request, then remove/deactivate the role immediately:
GET https://graph.microsoft.com/v1.0/security/triggerTypes/retentionEventTypes
Authorization: Bearer <delegated-token>
This is a diagnostic, not a recommended automation design. Microsoft recommends least privilege and minimizing Global Administrator assignments; for normal records-management administration, the recommended Purview role group is Records Management.^6^
- If it succeeds only as Global Administrator, attach that comparison to the support case as evidence of an undocumented role dependency.
- If it still fails, stop role testing; the result further isolates the problem to tenant/service-side processing.
Licensing and supported workarounds
Event-based records management does have feature-level licensing requirements, but the exact applicable subscription depends on the features and users involved.^6^ Since the same user can already create events in Purview, the available evidence does not establish licensing as the cause. Support can confirm tenant entitlements during escalation.
There is no other documented REST interface to substitute for Graph: the older REST automation method is deprecated and no longer works. Microsoft documents these supported automation methods:
- Microsoft Graph Records Management APIs.
- Security & Compliance PowerShell cmdlets, including
New-ComplianceRetentionEventandNew-ComplianceRetentionEventType.^7^
For immediate operation without PowerShell, use the Purview portal at Solutions → Records Management → Events → Create. For unattended automation while the Graph path is investigated, Security & Compliance PowerShell is the documented fallback; New-ComplianceRetentionEvent is available only in that PowerShell environment and requires the corresponding Purview permissions.^8^
References