Update Share Permissions

In this article

Overview

Use this Snap to modify the Share Permissions defined for a driveItem in your OneDrive or Shared Library (Document Library), at a given point in time.

Prerequisites

  • A valid application in Azure Portal with appropriate permissions.
  • A valid Microsoft OneDrive license.
  • Write access to the folder/file mentioned in the Source Relative Path/ID.

Support for Ultra Pipelines

Works in Ultra Pipelines.

Limitations

You can update share permissions for only invite Share type defined in the Share Item Snap.

Known Issues

  • Only organizational users can update the role if the Share Type is invite. When an anonymous user attempts to update the role, the Snap throws a 400 error.
  • Only anonymous users can update the expiry date if the Share Type is link. When an organizational user attempts to update the expiry date, the Snap throws a 400 error.

Known Issues

Snaps in the Microsoft OneDrive Snap Pack have an in-built retry mechanism for retrying failed connections and requests; but, a high volume of requests from a client might reach the throttling threshold. In such scenarios, the Microsoft Graph limits further requests from that client for a period of time and returns an HTTP status code 429 (Too many requests), thereby causing the requests to fail. Hence, we recommend you to keep a check on the number of requests emanating from your client instance.

Snap Input and Output

Input/OutputType of ViewNumber of ViewsExamples of Upstream and Downstream SnapsDescription
Input 

Document

  • Min: 0
  • Max: 1
  • Mapper
  • Copy
  • Get Share Permissions
  • Copy Item
A document containing the driveItem location details to modify the Share Permissions currently available on it.
Output

Document

  • Min: 1
  • Max: 1
  • Mapper
  • Copy
  • Get Share Permissions
  • Get Shared Items

A document containing the result of modifying the selected Share Permissions on the selected driveItem.

Snap Settings

Parameter NameData TypeDescriptionDefault ValueExample 
LabelString
Specify a name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your pipeline.
Update Share PermissionsUpdate Share Permissions
Drive TypeDrop-down list

Required. Select a drive type from the following list of permitted driveTypes in this drop-down list (to locate driveItems and update their share permissions) and specify the corresponding details needed:

  • OneDrive. To update the share permissions on a driveItem in a OneDrive location. Requires UserDrive, and Source Relative Path/ID.
  • documentLibrary. To update the share permissions on a driveItem in a shared library (document library) location. Requires Shared LibraryDrive, and Source Relative Path/ID.
  • Drive. To update the share permissions on a driveItem in a drive (in user's OneDrive or shared library) using the Drive ID. Requires Drive (ID) and Source Relative Path/ID.
  • All. To select a drive from the list of all drives and shared libraries (including SharePoint sites) that you can access, and update the share permissions on a driveItem in that location. Requires User, Drive, and Source Relative Path/ID.
OneDrivedocumentLibrary
UserString/Expression/Suggestion

Required for Drive Type options - OneDrive and All. Not needed for Drive and documentLibrary.

Select a user from the suggested list of users to update the share permissions on a driveItem from that user's OneDrive location.

The list of users displayed varies based on your access to their OneDrive locations. This option is meant for administrator users who are authorized to manage other users' drives, as well.

N/ASnap Team:snap@snaplogic.net
Shared LibraryString/Expression/Suggestion

Required for Drive Type option - documentLibrary. Not needed for OneDrive, Drive, and All.

Select a Shared Library from the suggested list of libraries to update the share permissions on a driveItem from that library location.

The list of shared libraries displayed varies based on your access to them. This option is meant for users who have write access on both the source and target shared libraries.

N/ANewSharedLibrary
DriveString/Expression/Suggestion

Required for all Drive Type options.

Specify the name of the drive to update the share permissions on the driveItem in it. The suggestions for this field are based on the Snap account and the User or Shared Library selected.

For the Drive Type Drive, specify/pass the ID of the drive to update the share permissions on a driveItem in it, typically from the upstream Snap.

For the drive type All, select a drive from the OneDrive or a Shared Library drive.

Specify the Source Relative Path/ID of the driveItem, next.

N/AOneDrive
Source Relative Path/IDString/Expression

Required for all Drive Type options.

Enter the relative path for the driveItem, beginning with root:/, to update the share permissions. Alternatively, pass the item ID in this field.

Relative Path and ID

  • Any URL in this field that starts with root:/ is treated as relative path. All other entries (without root:/ at the beginning) are treated as driveItem IDs.
  • When the driveItem ID passed is invalid (not a 34-character alphanumeric code such as 014ZXBQNNHW2DJ3CDKQZBJHRYWFWVRRQA2), the Snap returns the error - The resource is not found.
root://myprojects/myfile.xlsx
Share TypeDrop-down list

Choose an option from the list to update share permissions. Available options are:

  • invite: The share permission is sent through an invite.

    On selecting invite, Role field is enabled to update organizational user role. Role permissions cannot be updated for anonymous share/user.

  • link: The Share permission is sent through a link.

    On selecting linkExpires field is enabled to update expiry date and time. Organization user permissions cannot be updated. Applies only for anonymous user.


invitelink
Permission IDString/Expression/SuggestionRequired. Enter, or select from the suggested list, the existing permission IDs on the selected driveItem to update the corresponding share permissions.N/A8b36234d-fed2-44d5-b507-e1be36d14a37
RolesDrop-down list

Activates on selecting invite in Share Type field.

Select one of the following options from this drop-down list to update the share permissions on that driveItem. 

  • read. To change the share permissions for the driveItem from write to read.
  • write. To change the share permissions for the driveItem from read to write.
readwrite
ExpiresString

Activates on selecting link in Share Type field

Specify the expiry date and time of the URL that is used to share permissions.

N/A2020-09-29T04:18:00.000
Number Of RetriesString/ExpressionSpecify an integer value to set the maximum number of reconnection attempts that the Snap must perform, in case of connection failure or timeout.03
Retry Interval (Seconds)String/ExpressionEnter, in seconds, the duration for which the Snap must wait between two reconnection attempts, until the number of retries is reached.12
Snap ExecutionDrop-down list

Select one of the three following modes in which the Snap executes:

  • Validate & Execute. Performs limited execution of the Snap and generates a data preview during Pipeline validation, then performs full execution of the Snap (unlimited records) during Pipeline runtime.
  • Execute only. Performs full execution of the Snap during Pipeline execution without generating preview data.
  • Disabled. Disables the Snap and all Snaps downstream from it.

Execute onlyValidate & Execute

Troubleshooting

ErrorReasonResolution
Error while creating item invite, Reason: 400 : Bad Request Require SignIn cannot be false for folders.

Select the Require Signin check box while sharing the item and try again.

Examples

Working with Share Permissions (Share Type: Link) in OneDrive 

This Pipeline demonstrates how you can share permissions to an anonymous user through a link option. We assume that you have configured your Azure application and the Snap accountsThe Pipeline uses the following parameters.

We start with configuring a JSON Generator Snap by providing input text, which generates a new JSON as a document for the downstream Snap. Next, we configure the JSON Formatter Snap that reads the passed on document stream and writes the JSON binary data to output.

Then, we upload a file processed from the previous Snaps using Upload File Snap, and configure the fields accordingly.

Upon execution, we find the upload confirmation details in the output.

Now we create a link for a file using Share Item Snap with appropriate inputs.

Upon execution we find the output as below.

Finally, we configure the Update Share Permissions Snap with the required inputs and set an expiry date and time for the link.

Upon execution we have an output with updated expiry Date and Time for the shared link.

Working with Share Permissions in OneDrive

This Pipeline demonstrates how you can share an item and how we can get/update/delete the share permissions existing on a drive item. It assumes that you have configured your Azure application and the Snap accounts already. The Pipeline uses the following parameters. 

We start with creating a new folder using the Create Folder Snap and then, share it with a recipient using Share Item Snap. Next, we update the share permissions for the item and delete them after use.

Create Folder Snap
Output


To share the item, we need to define the type of share, the recipients, roles, scope of share, expiry period, and so on, depending on our need. If you have selected the Share Type as Invite, you can update the share permissions on the item later.

Share Item Snap

Output

After sharing the item, we use a Mapper to extract the Permission ID and the path of the shared item.

Mapper Snap

Output

We pass this information to the Get Share Permissions Snap to fetch all the existing shared permissions on this folder (including the inherited share permissions).

Get Share Permissions Snap

Output

Now, we pass these permission Ids retrieved to Update Shared Permissions Snap to change the permissions from read to write.

Update Shared Permissions Snap

Output

Using the Update Share Permissions Snap, we have updated all the existing share permissions to write access on the driveItem. We can now retrieve these permissions and delete them as and when needed. To do this, we use another Mapper Snap to capture the updated permission IDs, relative paths and delete them using the Delete Share Permissions Snap.

Mapper Snap

Output


Delete Shared Permissions Snap
Output

This Snap deletes the share permissions on the driveItem and displays the result of the operation for each permission ID.

Download this Pipeline.

Downloads

Important Steps to Successfully Reuse Pipelines

  1. Download and import the Pipeline into SnapLogic.
  2. Configure Snap accounts as applicable.
  3. Provide Pipeline parameters as applicable.

Snap Pack History

 Click here to expand...

Release

Snap Pack Version 

Date

Type

Updates

November 2024main29029 StableUpdated and certified against the current SnapLogic Platform release.
August 2024438patches28439 Latest

Updated the Kotlin library for Microsoft OneDrive Snap Pack with the okhttp library Platform version to avoid Kotlin library dependency conflict.

August 2024

main27765

 

Stable

Updated and certified against the current SnapLogic Platform release.

May 2024

main26341

 

Stable

Updated and certified against the current SnapLogic Platform release.

February 2024436patches25789 Latest

Fixed a performance issue in the Copy Item Snap, which previously resulted in a nameAlreadyExists error when the Snap retried because of a connection reset.

February 2024

main25112

 

Stable

Updated and certified against the current SnapLogic Platform release.

November 2023main23721 StableUpdated and certified against the current SnapLogic Platform release.
August 2023434patches22736 Latest
  • Fixed an issue with the Mircosoft OneDrive Snap Pack where the Snaps displayed Duplicate key OneDrive error. The Snaps now hide the drive details stored in the PreservationHoldLibrary folder when displaying suggestions. You can use the Drive ID to access the PreservationHoldLibrary folder.

  • Fixed an issue with the Mircosoft OneDrive Snaps that displayed a JsonNull error when the shared library list was empty. Now, it displays the message No Suggestions available.

August 2023main22460 StableUpdated and certified against the current SnapLogic Platform release.

May 2023

main21015 

Stable

Upgraded with the latest SnapLogic Platform release.

February 2023432patches20510 Latest

Fixed the following issues with OneDrive Snaps:

  • The Snaps erroneously displayed the permission error when the actual cause was an empty display name in the API.

  • The Snaps failed with a 403 error when selecting a user (in the User field) from the Suggestions list without the User.Read.All permission. Now you can enter the value manually in the User field and proceed with the specific operation you want to perform in OneDrive, even if the Suggestions list is not available.

February 2023main19844 StableUpgraded with the latest SnapLogic Platform release.
November 2022main18944 StableUpgraded with the latest SnapLogic Platform release.
August 2022main17386 StableUpgraded with the latest SnapLogic Platform release.
4.29main15993 StableUpgraded with the latest SnapLogic Platform release.
4.28main14627 StableUpgraded with the latest SnapLogic Platform release.
4.27main12833 StableUpgraded with the latest SnapLogic Platform release.
4.26main11181 

Stable

Upgraded with the latest SnapLogic Platform release.
4.25 Patch425patches10571
Latest

Updated the error output view of the OneDrive - Upload File Snap from a Binary view to a Document view.

4.25main9554 StableEnhanced the Update Share Permissions Snap with the Share Type and Expires fields that enable you to update the share permissions on your OneDrive items shared using the Invite or Link option. If the Share type is link, you can specify the expiry date and time for the URL that is used to share permissions.
4.24main8556 
StableNo updates made.

4.23

main73

 

Stable

Initial release of the Snap Pack with the following Snaps and Accounts:


See Also