Add Group To List in SharePoint using REST API

The example in this topic show how to use REST API to Remove Groups Permissions From List in SharePoint

  • function AddGroupToList()
  • {
  •        /* Functions to perform in sequence:
  •        1) Get Group ID from Site - GetGroupId()
  •        2) Get RoleDefinition ID - GetRoleDefinitionId()
  •        3) Use Group ID and RoleDefinition ID to perform action - AddGroupToListUsingGroupIdAndRoleDefinitionId() */
  •  
  •        GetGroupId();
  • }
  •  
  • function GetGroupId()
  • {
  •        $.ajax
  •         ({
  •             // _spPageContextInfo.webAbsoluteUrl - will give absolute URL of the site where you are running the code.
  •             // You can replace this with other site URL where you want to apply the function
  •            
  •               url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/sitegroups/getbyname('Designers')/id",
  •             type: "GET",
  •             async: false,
  •               headers:
  •             {
  •                 // Accept header: Specifies the format for response data from the server.
  •                 "Accept": "application/json;odata=verbose"
  •             },
  •                success: function (data, status, xhr) {
  •                    var GroupId = data.d.Id;
  •                    GetRoleDefinitionId(GroupId)
  •                      },
  •                error: function (xhr, status, error) {
  •                    console.log("Failed");
  •                }
  •         });       
  • }
  •  
  • function GetRoleDefinitionId(GroupId)
  • {
  •        $.ajax
  •         ({
  •             // _spPageContextInfo.webAbsoluteUrl - will give absolute URL of the site where you are running the code.
  •             // You can replace this with other site URL where you want to apply the function
  •            
  •               url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/roledefinitions/getbyname('Read')/id",
  •             type: "GET",
  •             async: false,
  •               headers:
  •             {
  •                 // Accept header: Specifies the format for response data from the server.
  •                 "Accept": "application/json;odata=verbose"
  •             },
  •                success: function (data, status, xhr) {
  •                    var RoleDefinitionId = data.d.Id;
  •                    AddGroupToListUsingGroupIdAndRoleDefinitionId(GroupId,RoleDefinitionId);
  •                      },
  •                error: function (xhr, status, error) {
  •                    console.log("Failed");
  •                }
  •         });       
  • }
  •  
  • function AddGroupToListUsingGroupIdAndRoleDefinitionId(GroupId,RoleDefinitionId)
  • {
  •        $.ajax
  •         ({
  •             // _spPageContextInfo.webAbsoluteUrl - will give absolute URL of the site where you are running the code.
  •             // You can replace this with other site URL where you want to apply the function
  •            
  •               url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getByTitle('List%20Name')/roleassignments/addroleassignment(principalid='" + GroupId + "',roledefid='" + RoleDefinitionId +"')",
  •             type: "POST",
  •               headers:
  •             {
  •                 // X-RequestDigest header: When you send a POST request, it must include the form digest value in X-RequestDigest header
  •                 "X-RequestDigest": $("#__REQUESTDIGEST").val()
  •             },
  •                success: function (data, status, xhr) {
  •                            console.log("Success");
  •                      },
  •                error: function (xhr, status, error) {
  •                    console.log("Failed");
  •                }
  •         });       
  • }

Similar examples using different APIs:

Thank you for reading this article. This code was tested in SharePoint 2013

We value your feedback:

Page URL:

Name:

 

Email:

 
 

Feedback:

 

© 2019 Code SharePoint