Skip to main content
Nintex Community Menu Bar

Updating a Hidden Column in a SharePoint Document Library or List via Nintex Workflow (NW)

  • January 30, 2026
  • 0 replies
  • 5 views

Forum|alt.badge.img

Scenario 

You need to update a hidden column in a SharePoint document library or list using a Nintex Automation Cloud workflow. The standard SharePoint Update items actions will not be able to display the column as a selectable value as it is hidden and/or restricted.  

Using a SharePoint Call a web service action with standard update actions and REST API calls (e.g., MERGE or PATCH) return 204 No Content (positive outcome), but do not apply the actual update due to the column being hidden or schema-restricted. 

Solution: Use ValidateUpdateListItem REST API

This method bypasses UI and schema restrictions and allows updates to hidden or locked fields. 

Call a SharePoint web service - Action Configuration 
 


Plain Text: 

Method: POST 

URL: 

https://<yourtenant>.sharepoint.com/sites/<yoursite>/_api/web/lists/getbytitle('YourLibraryName')/items(<ItemID>)/ValidateUpdateListItem 

Headers:

Accept: application/json;odata=verbose 
Content-Type: application/json;odata=verbose 
IF-MATCH: * 
X-RequestDigest: Workflow Context: SharePoint Request Digest  

Request Content (Body):


  "formValues": [ 
    { 
      "FieldName": "DocumentStatus", 
      "FieldValue": "Rejected by GM" 
    } 
  ], 
  "bNewDocumentUpdate": false 

 

Notes & Tips

  • This method works even if the column: 
  • Is hidden via schema (Hidden = TRUE) 
  • Is not editable via SharePoint UI or in SharePoint update items action in a NW workflow 
  • Is part of a document library item (not only a list item) 
  • Ensure the field name is the internal name, not the display name. 
    • The display name is what the user will see in SharePoint at direct face-value on the list or library (“Document Status”): 

       

The internal name can be found by using a SharePoint Call a web service action with <siteURL>/_api/web/lists/getbytitle('YourListName')/fields?$select=InternalName 

And then a Query JSON action with d.InternalName: 

  "d": { 

    "results": [ 

      { 

        "Title": "Document Status", 

        "InternalName": "DocumentStatus" 

      } 

 

    ] 

  } 

You can update multiple fields by adding more objects to the formValues array.