CRUD operations in SharePoint 2013 list item using rest api

sharepoint 2013 crud operation rest api 1.png
Check out Best Alternative to InfoPath


SharePoint 2013 has greatly expanded the REST services available to developers. With this, we have much more SharePoint functionality exposed via JSOM and Web Services. The goal of this article is to provide how to perform basic create, read, update, and delete (CRUD) operations on lists and list items with the REST services.

Read some SharePoint tutorials below:

SharePoint REST endpoint Overview:

The following table contains typical REST endpoint URL examples to get you started working with SharePoint data. Prepend http://server/site/_api/ to the URL fragments shown in the table to construct a fully qualified REST URL. Below is a list of the basic commands used to get List Items from a SharePoint List through the SharePoint 2013 REST Services.


URL endpoint Description Supported HTTP Method
/_api/Web/Lists/ getbytitle(‘listname’) Getting a list details by its title and updating it as well. Ifanyone changes your list title, your code will break. GET, POST
/_api/Web/Lists(guid’guid id of your list’) Same as above but changing list title will not affect the code. GET, POST
/_api/Web/Lists/getbytitle(‘ listname ‘)/Fields Retrieving all fields associated with a list and add new fields GET, POST
/_api/Web/Lists/getbytitle(‘listname’)/
Fields/getbytitle(‘fieldname’)
Getting details of a field, modifying and deleting it. GET, PUT, PATCH, MERGE, DELETE
/_api/Web/Lists/getbytitle(‘listname’)

/Items

Retrieving all items in a list and adding new items GET, POST
/_api/web/lists/getbytitle(‘listname’)
/GetItemById(itemId)
This endpoint can be used to get, update and delete a single item. GET, PUT, PATCH, MERGE, DELETE
/_api/lists/ getbytitle (‘’listname’)/items?$orderby=Title Order Your Results GET, POST
/_api/lists/ getbytitle (‘’listname’)/items?$select=Title,Id Retrieve Selected Column Data value GET, POST
/_api/web/lists/getbytitle(‘listname’)/Items/
?$select=Title,FieldName/Id&$expand= FieldName /Id
Retrieving the lookup value GET, POST

Now, I will demo all the operations on list items, including retrieve, create, update and delete on list items.

crud operations in sharepoint 2013 using rest api
crud operations in sharepoint 2013 using rest api

Retrieve list items using Rest API in SharePoint 2013:

crud operations in sharepoint 2013 list using rest api
crud operations in sharepoint 2013 list using rest api



  1. function retriveListItem()
  2. {
  3.     $.ajax
  4.     ({
  5.         url: _spPageContextInfo.webAbsoluteUrl + “/_api/web/lists/GetByTitle(‘companyInfo’)/items?$select=Company,Industry”,
  6.         type: type,
  7.         data: data,
  8.         headers:
  9.         {
  10.             “Accept”: “application/json;odata=verbose”,
  11.             “Content-Type”: “application/json;odata=verbose”,
  12.             “X-RequestDigest”: $(“#__REQUESTDIGEST”).val(),
  13.             “IF-MATCH”: “*”,
  14.             “X-HTTP-Method”: null
  15.         },
  16.         cache: false,
  17.         success: function(data)
  18.         {
  19.             $(“#ResultDiv”).empty();
  20.             for (var i = 0; i < data.d.results.length; i++)
  21.             {
  22.                 var item = data.d.results[i];
  23.                 $(“#ResultDiv”).append(item.Company + “\t” + item.Industry + “<br/>”);
  24.             }
  25.         },
  26.         error: function(data)
  27.         {
  28.             $(“#ResultDiv”).empty().text(data.responseJSON.error);
  29.         }
  30.     });
  31. }

Create list item using Rest API in SharePoint 2013:

sharepoint 2013 rest api javascript example
sharepoint 2013 rest api javascript example

Here is the main code in detail:

  1. function AddListItem()
  2. {
  3.     var industryVal = $(“#Industry”).val();
  4.     var Company = $(“#Company”).val();
  5.     $.ajax
  6.         ({
  7.         url: _spPageContextInfo.webAbsoluteUrl + “/_api/web/lists/GetByTitle(‘companyInfo’)/items”,
  8.         type: “POST”,
  9.         data: JSON.stringify
  10.         ({
  11.             __metadata:
  12.             {
  13.                 type: “SP.Data.TestListItem”
  14.             },
  15.             Company: Company,
  16.             Industry: industryVal
  17.         }),
  18.         headers:
  19.         {
  20.             “Accept”: “application/json;odata=verbose”,
  21.             “Content-Type”: “application/json;odata=verbose”,
  22.             “X-RequestDigest”: $(“#__REQUESTDIGEST”).val(),
  23.             “X-HTTP-Method”: “POST”
  24.         },
  25.         success: function(data, status, xhr)
  26.         {
  27.             retriveListItem();
  28.         },
  29.         error: function(xhr, status, error)
  30.         {
  31.             $(“#ResultDiv”).empty().text(data.responseJSON.error);
  32.         }
  33.     });
  34. }

Update list item using Rest API in SharePoint 2013:

sharepoint 2013 rest api add list item
sharepoint 2013 rest api add list item


Here is the main code in detail:

  1. function updateListItem()
  2. {
  3.     var industryVal = $(“#Industry”).val();
  4.     $.ajax
  5.     ({
  6.         url: _spPageContextInfo.webAbsoluteUrl + “/_api/web/lists/GetByTitle(‘companyInfo’)/items(7)”, // list item ID
  7.         type: “POST”,
  8.         data: JSON.stringify
  9.         ({
  10.             __metadata:
  11.             {
  12.                 type: “SP.Data.TestListItem”
  13.             },
  14.             Industry: industryVal
  15.         }),
  16.         headers:
  17.         {
  18.             “Accept”: “application/json;odata=verbose”,
  19.             “Content-Type”: “application/json;odata=verbose”,
  20.             “X-RequestDigest”: $(“#__REQUESTDIGEST”).val(),
  21.             “IF-MATCH”: “*”,
  22.             “X-HTTP-Method”: “MERGE”
  23.         },
  24.         success: function(data, status, xhr)
  25.         {
  26.             retriveListItem();
  27.         },
  28.         error: function(xhr, status, error)
  29.         {
  30.             $(“#ResultDiv”).empty().text(data.responseJSON.error);
  31.         }

    }); 

Delete list item using Rest API in SharePoint 2013:

sharepoint 2013 rest api javascript example
sharepoint 2013 rest api javascript example

Here is the main code in detail:

  1. function deleteListItem()
  2. {
  3.     $.ajax
  4.     ({
  5.         url: _spPageContextInfo.webAbsoluteUrl + “/_api/web/lists/GetByTitle(‘companyInfo’)/items(7)”,
  6.         type: “POST”,
  7.         headers:
  8.         {
  9.             “X-RequestDigest”: $(“#__REQUESTDIGEST”).val(),
  10.             “IF-MATCH”: “*”,
  11.             “X-HTTP-Method”: “DELETE”
  12.         },
  13.         success: function(data, status, xhr)
  14.         {
  15.             retriveListItem();
  16.         },
  17.         error: function(xhr, status, error)
  18.         {
  19.             $(“#ResultDiv”).empty().text(data.responseJSON.error);
  20.         }
  21.     });

}

In this article we explored SharePoint 2013 REST API for (CRUD) operations on list items level. I’ve tried to explore crud operation using REST Services, JavaScript Client Side Object Model, and SOAP Services to work on the client side.


You May Also like the Following SharePoint Online Tutorials:

About Sagar Pardeshi

I am Developer working on Microsoft Technologies for the past 6+years. I am very much passionate about programming and my core skills are SharePoint, ASP.NET & C#,Jquery,Javascript,REST. I am running this blog to share my experience & learning with the community I am an MCP, MCTS .NET & Sharepoint 2010, MCPD Sharepoint 2010, and MCSD HTML 5,Sharepoint 2013 Core Solutions. I am currently working on Sharepoint 2010, MOSS 2007, Sharepoint 2013,Sharepoint 2013 App Dev, C#, ASP.NET, and SQL Server 2008.

View all posts by Sagar Pardeshi →