In this article
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.
Works in Ultra Pipelines.
You can update share permissions for only invite Share type defined in the Share Item Snap.
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.
Input/Output | Type of View | Number of Views | Examples of Upstream and Downstream Snaps | Description |
---|---|---|---|---|
Input | Document |
|
| A document containing the driveItem location details to modify the Share Permissions currently available on it. |
Output | Document |
|
| A document containing the result of modifying the selected Share Permissions on the selected driveItem. |
Parameter Name | Data Type | Description | Default Value | Example | ||
---|---|---|---|---|---|---|
Label | String | Update Share Permissions | Update Share Permissions | |||
Drive Type | Drop-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 | documentLibrary | ||
User | String/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.
| N/A | Snap Team:snap@snaplogic.net | ||
Shared Library | String/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.
| N/A | NewSharedLibrary | ||
Drive | String/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/A | OneDrive | ||
Source Relative Path/ID | String/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.
| root:/ | /myprojects/myfile.xlsx | ||
Share Type | Drop-down list | Choose an option from the list to update share permissions. Available options are:
| invite | link | ||
Permission ID | String/Expression/Suggestion | Required. Enter, or select from the suggested list, the existing permission IDs on the selected driveItem to update the corresponding share permissions. | N/A | 8b36234d-fed2-44d5-b507-e1be36d14a37 | ||
Roles | Drop-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 | write | ||
Expires | String | Activates on selecting link in Share Type field Specify the expiry date and time of the URL that is used to share permissions. | N/A | 2020-09-29T04:18:00.000 | ||
Number Of Retries | String/Expression | Specify an integer value to set the maximum number of reconnection attempts that the Snap must perform, in case of connection failure or timeout. | 0 | 3 | ||
Retry Interval (Seconds) | String/Expression | Enter, in seconds, the duration for which the Snap must wait between two reconnection attempts, until the number of retries is reached. | 1 | 2 | ||
Snap Execution | Drop-down list | Select one of the three following modes in which the Snap executes:
| Execute only | Validate & Execute |
Error | Reason | Resolution |
---|---|---|
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. |
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 accounts. The 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.
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.
Add a download link to the Pipeline in the the "Download" text above. Explain the Pipeline/Snap configuration in detail if a complex enough example has been used. Ensure that the functionality you are trying to illustrate is captured correctly. Include caveats as appropriate. To insert link: Press Ctrl + K --> Files --> Select the SLP file corresponding to the example.
|
Edit the Excerpt Include macro below to link to the Snap Pack page for this Snap page. Ensure that the heading Snap Pack History is not within the Snap Pack's history Excerpt.
Provide links to the endpoint's official documentation, any relevant or related internal documentation, and any other links you have referred to on this page. Care should be taken when referencing external sites/documentation that it is an official site/documentation. Do not refer to forums such as stackoverflow.