Encountering the UpdateDocumentSharingInfo per-recipient status failure typically occurs when you are using a Power Automate flow, the SharePoint REST API, or Microsoft Graph to modify document permissions. This error indicates that while the overall API request reached the server, SharePoint could not apply the requested permission level to one or more specific user accounts within your payload. To resolve this, you must identify and correct the invalid user identities, resolve unredeemed guest accounts, or fix syntax errors in your permission request.
Verifying External Guest Account Status in Microsoft Entra ID

The most frequent cause of a per-recipient rejection is an external user who has not completed the onboarding process in your tenant. When you send a sharing API call for an external email address, SharePoint expects an active B2B collaboration account. If the user has not accepted their invitation, the directory cannot resolve the account, causing the exact recipient to fail.
To diagnose and fix unredeemed guest accounts:
- Navigate to the Microsoft Entra admin center and select Users from the left navigation pane.
- Click All users and use the search bar to find the email address of the specific user causing the failure.
- Select the user profile and locate the B2B collaboration section on their properties page.
- Check the Invitation state. If it says Pending acceptance, click the Manage link next to it.
- Select Resend invitation. You must wait for the user to open their email, click the acceptance link, and authenticate before your automated sharing flow will execute successfully.
Formatting the User Claims Syntax Correctly
When sending manual REST API calls to the SharePoint sharing endpoints, passing a standard email address often results in validation failures. SharePoint's backend requires a fully qualified claims token to correctly identify the target user principal name (UPN). A malformed identity string will trigger a status failure for that specific string while allowing correctly formatted strings to pass.
Update your API payload or your Power Automate string variables to prepend the standard membership claim prefix to all internal user addresses. Modify your user identity strings from user@yourdomain.com to i:0#.f|membership|user@yourdomain.com. For external guest users who have already redeemed their invitations, you must format the claim using the external tenant routing format: i:0#.f|membership|user_externaldomain.com#ext#@yourtenant.onmicrosoft.com. Test your modified payload using Postman or your flow's test interface to verify the permissions apply without rejecting the recipient.
Filtering Invalid Identities in Power Automate
If your workflow dynamically pulls a list of users from a Microsoft Form, a SharePoint list, or an external database, hidden spaces or null values will instantly cause the sharing action to fail. The SharePoint connector attempts to process every item in the array, and a blank string returns a per-recipient error.
You must clean your data before passing it to the "Grant access to an item or a folder" action:
- Add a Filter array action immediately before your SharePoint sharing step.
- Set the From field to the dynamic content containing your list of email addresses.
- In the condition rules, select the item expression, choose is not equal to, and leave the value field completely blank to remove empty strings.
- Add an Apply to each control, select the output of your Filter array, and place your SharePoint sharing action inside this loop. This ensures the API only attempts to share the document with validated, non-empty text strings.
Auditing Unique Permission Limits on the Library
SharePoint enforces a strict architectural limit of 50,000 unique permissions per list or document library. If your automated process continuously breaks inheritance to share individual files with distinct user groups, reaching this threshold prevents the system from writing any new unique sharing scopes. When the system blocks the new permission scope, the API returns a status failure for the recipients you attempted to add.
To verify if your library has hit this limit, open your target SharePoint site in a web browser. Click the gear icon in the top right and select Library settings, then click More library settings. Click Permissions for this document library. Look for a yellow warning banner at the top of the permissions page stating that the library is approaching or has exceeded its unique permission threshold. If this banner is present, you must restructure your architecture. Create a new document library, move the affected files, and apply permissions at the folder level rather than breaking inheritance on thousands of individual documents.
Alternative: Streamlining Document Collaboration with WPS Office

WPS Office cannot change Microsoft-side SharePoint configurations, Microsoft Entra ID tenant settings, or Power Automate API behavior. If your task is strictly controlled by Microsoft cloud services, you must use the troubleshooting steps above. However, if your underlying goal is simply to share a document for team collaboration and you want to avoid complex API payloads and backend directory limits, WPS Office provides a direct cloud-sharing mechanism.
To bypass directory sync issues and share a document directly with WPS Office:
- Open your document, spreadsheet, or presentation in the WPS Office desktop application.
- Click the Share button located in the upper-right corner of the workspace.
- In the sharing dialog, select Anyone with the link to avoid requiring the recipient to have a registered directory account, which bypasses the guest redemption errors entirely.
- Set the access level to either View Only or Edit based on your collaboration needs.
- Click Copy Link and distribute it directly to your recipients via email or your preferred messaging platform.
Frequently Asked Questions
Why does the sharing API fail for only one specific user?
This typically indicates that the specific user's account is either suspended, misconfigured in Microsoft Entra ID, or formatted incorrectly in your JSON payload. Because SharePoint processes sharing requests in batches, valid accounts in the same request will process successfully while the system isolates and rejects the malformed or unresolvable identity.
Can external guest accounts cause this SharePoint status failure?
Yes. If an external user has been invited to your tenant via Microsoft Entra ID but has not yet redeemed their invitation, SharePoint cannot resolve their identity during the API call. The system considers the account inactive and returns a recipient-specific rejection until the user clicks the acceptance link in their invitation email.
How do unique permission limits trigger this sharing rejection?
SharePoint allows a maximum of 50,000 unique permission scopes per list or library. If your automated workflow constantly breaks inheritance to share individual files, hitting this limit causes the database to reject new unique permission entries. Subsequent sharing attempts fail because the system can no longer record the new per-recipient access rights.
Does changing the user claims format resolve the API error?
Yes, especially when interacting directly with SharePoint REST endpoints. Passing a plain email address often fails identity validation. Prepending the standard claims prefix, such as i:0#.f|membership| for internal users, ensures the backend correctly identifies the user principal name and applies the requested permissions.




