Update SharePoint Online List Item using REST API, HTML, Spfx, Postman


SharePoint List item can be updated using REST API by referring to the item by its ID filed which is always unique. Let us look at an example, which can be validated using Postman.

You would eventually use the code snippet with Spfx (modern) or Content Editor (classic). For authentication, bearer token will be used.

If you are connecting to the List from outside of SharePoint like Java, .Net or Python code, you need to use a Bearer token (Client ID and Client Secret) to access the REST url.

Steps to generate Client ID and Secret - Register SharePoint App


This example assumes you have a list named "List1". Please make necessary modifications to the List name, column internal name wherever applicable.


✔️ Update SharePoint List Item using HTML, jQuery, Ajax

We will use POST method to update the SharePoint record. Assumptions,

List Name = List1
List Item ID = 10
Column to update = Title

You can update more columns, just pass the internal name and value to be updated. Separate with a comma ",".

var webURL = _spPageContextInfo.webAbsoluteUrl;

$.ajax({  
    url: webURL + "/_api/web/lists/GetByTitle('List1')/items(10)",
    type: "POST",  
    headers: {  
        "accept": "application/json;odata=verbose",  
        "X-RequestDigest": $("#__REQUESTDIGEST").val(),  
        "content-Type": "application/json;odata=verbose",  
        "IF-MATCH": "*",  
        "X-HTTP-Method": "MERGE"  
    },  
    data: "{__metadata:{'type':'SP.Data.List1ListItem'},Title:'Title updated via REST API'}",  
    //Add more columns in above line to update

    success: function(data) {  
        //Perform further activity upon success, like displaying a notification
    },  
    error: function(error) {  
	//Log error and perform further activity upon error/exception
    }  
}); 

✔️ Update SharePoint List Item using Postman - PATCH

For testing SharePoint REST API with Postman, you need to use the Client ID, Client Secret, Tenant ID, to generate a Bearer token.

Steps to generate SharePoint Bearer token - How to test SharePoint REST API from Postman

Once you have generated the access token, follow below steps
  1. Initiate a PATCH method request.
  2. Apply Header configuration parameters as below.

  3. Key Value
    Accept application/json;odata=verbose
    Content-Type application/json
    Authorization Bearer
    If-Match *

  4. In the Body section, select 'raw' and add below code.
  5. {
    "Title": "Title updated via REST API"
    }

  6. Enter request url in below format
  7. https://c2c.sharepoint.com/sites/SPDev/_api/web/lists/GetByTitle('List1')/items(10)

  8. Click Send.

  9. Update SharePoint ListItem using REST API Postman
    Update SharePoint ListItem using REST API Postman

  10. You should get a 204 No Content response. This means that the update request is successfully completed there is no content to return in response.
  11. Validate the changes form SharePoint.

⚠️ Error - The request ETag value does not match the object's ETag value

SharePoint Postman ClientServiceException error
SharePoint Postman ClientServiceException error


If you get a 412 Precondition Failed error with message "The request ETag value does not match the object's ETag value", it means the server does not meet one of the preconditions that the requester put on the request.

Solution - Add Header parameter key "If-Match" and set its value as *. The ETag Header is used to ensure you update the latest version of SharePoint list item.
{
    "error": {
        "code": "-1, Microsoft.SharePoint.Client.ClientServiceException",
        "message": {
            "lang": "en-US",
            "value": "The request ETag value '' does not match the object's ETag value '\"GUID,2\"'."
        }
    }
}


Have Questions? Post them here!



Recent Posts:




Code2care is an initiative to publish and share varied knowledge in programming and technical areas gathered during day-to-day learnings and development activities.

Students and Software Developers can leverage this portal to find solutions to their various queries without re-inventing the wheel by referring to our easy to understand posts. Technical posts might include Learnings, Video Tutorials, Code Snippets, How Tos, Blogs, Articles, etc.