Get Share Permissions

Get Share Permissions

In this article

Overview

Use this Snap to retrieve the Share Permissions existing on a driveItem in a OneDrive or Shared Library (document library) location, at a given point in time. Each permission has a unique alpha-numeric case-sensitive ID.

Prerequisites

  • A valid application in Azure Portal with appropriate permissions.

  • A valid Microsoft OneDrive license.

  • Read access to the folder/file mentioned in the Source Relative Path/ID.

Support for Ultra Pipelines

Works in Ultra Pipelines.

Limitations

None.

Known Issues

Snaps in the Microsoft OneDrive Snap Pack have an in-built retry mechanism for failing 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/Output

Type of View

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input/Output

Type of View

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input 

Document

  • Min: 0

  • Max: 1

  • Mapper

  • Copy

  • Update Permissions

A document containing the driveItem location details to retrieve the list of Share Permissions currently available on it.

Output

Document

  • Min: 1

  • Max: 1

  • Mapper

  • Delete Permissions

A document containing the list of Share Permissions existing on the selected driveItem.

Snap Settings

Parameter Name

Data Type

Description

Default Value

Example 

Parameter Name

Data Type

Description

Default Value

Example 

Label

String

Get Share Permissions

Get Share Permissions

Drive Type

Drop-down list

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

  • OneDrive. To get the share permissions on a driveItem in a OneDrive location. Requires User, Drive, and Source Relative Path/ID.

  • documentLibrary. To get the share permissions on a driveItem in a shared library (document library) location. Requires Shared Library, Drive, and Source Relative Path/ID.

  • Drive. To get 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 get the share permissions on a driveItem from that location. Requires User, Drive, and Source Relative Path/ID.

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 get 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/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 get the share permissions on the driveItem in 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/A

NewSharedLibrary

Drive

String/Expression/Suggestion

Required for all Drive Type options.

Specify the name of the drive to get 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 get 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 to get the share permissions, beginning with root:/. 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:/

/Pictures/Tour1/Image01.png

Select Fields

String/Expression

Enter the list of different parameters, separated by a comma, that you want to retrieve for each Share permission existing on the selected driveItem.

The Snap returns all the available information on the selected driveItem, if this field is left blank.

N/A

id, email, roles

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:

  • 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.

Validate & Execute

Execute only

Troubleshooting

<TBU>

Error

Reason

Resolution

Error

Reason

Resolution

 

 

 

 

 

 

Examples

Example 1: Retrieving Share Permissions on a Drive Item

This Pipeline demonstrates how you can retrieve 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. 

Let us use a Create Folder Snap to create a folder in a OneDrive location and inspect its permissions.

Create Folder Snap

Output

We connect a Get Shared Permissions Snap to this Snap to inspect the share permissions on the new folder. We can expect that the current user (Owner) has all permissions on the folder (read and write). In addition to these permissions, this Snap retrieves permissions that the folder inherits from its parent folder/driveItem. See its output below.

Get Share Permissions Snap

Output

In this scenario, the driveItem (new folder) has not inherited any permissions from its parent item. We can use a Mapper Snap to view a simplified output that contains only fields that we want to analyze.

Mapper Snap

Output

Download this Pipeline. 

Example 2: 

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.


See Also