Microsoft Flow – Make SharePoint Library Unique

This guide is to help admins & end users make libraries unique through Flow. There are a few ways to do this however, some rely on Azure to complete, the route I’ll show only requires Owner permissions to the SharePoint site.

First we’ll need to make the library unique by breaking inheritance, then we can assign the permissions using the REST API

  1. Within Microsoft Flow, add an action called ‘Send an HTTP request to SharePoint’
  2. Enter the Site Address (https://domain.sharepoint.com/sites/IT/
  3. Set the Method as POST
  4. URI = _api/web/lists/getByTitle(‘Documents’)/breakroleinheritance
  5. Ensure to change the library in brackets to your own library, the ‘Documents’ library is the out of the box library provided when a site is created

To assign permissions to the library through Flow, this can be achieved by adding another HTTP request.

Add another HTTP request and copy the below. This will get the membership of the Owners group in SharePoint. When a site is created, by default the owners group will always have an ID of 3, the members group has an ID of 5.

Set the Method as “GET’ & the URI as ‘_api/web/sitegroups(3)”

Add a third and final HTTP request to add the Owners group to the library. Set the Method as ‘POST’ & the URI as “_api/web/lists/getByTitle(‘Documents’)/roleassignments/addroleassignment(principalid=3,roledefid=1073741829)”

Note the following:
The principalid is the ID of the group
The roledefid for Owner permissions is 1073741829
The roledefid for Contribute permissions is 1073741827
The roledefid for Read permissions is 1073741826
The roledefid for Design permissions is 1073741828
The roledefid for Edit permissions is 1073741830
The roledefid for View Only permissions is 1073741924