Trigger SharePoint item update to triggered actions reliably

Trigger SharePoint item update to triggered actions reliably

Problem

When you modify a SharePoint item using “Update Item” in Triggered Actions or Scheduled Actions, downstream Triggered Actions (that listen for changes on the same item) do not fire reliably.
Reason: The standard update does not set all signals/metadata in a way that guarantees subsequent triggers are detected.

Solution (Workaround)

Use a “Send HTTP request” (SharePoint REST) step that updates the list item via PATCH.
This creates a “real” REST update including ETag/concurrency headers — and downstream triggers are activated reliably.

Structure of the Triggered or Scheduled Action

1) Create variables

At the beginning, create the following variables:

  • ListName (display name of the SharePoint list)

  • ItemMetadata (metadata structure)

  • ElementTitle (title field structure / not strictly required)

2) Determine ListItem Entity Type (for ItemMetadata)

Retrieve the ListItemEntityTypeFullName of your list so you can populate __metadata correctly.

Request (read):

https://{site_url}/_api/web/lists/GetByTitle('{List Name}')?$select=ListItemEntityTypeFullName

Replace {site_url} with the site URL.
Use the list’s display name (same as your variable {List Name}).
Dynamic expressions are valid — just ensure there are no extra spaces in the URL.

3) HTTP update of the item (PATCH)

In Teamsware, use Send HTTP request with the following parameters:

URL (dynamic):

${[[@Web.Url]]}/_api/web/lists/getbytitle('${[[@Variables.ListName]]}')/items(${[[ID]]})
  • [[ID]] = current item ID from the trigger context

  • [[@Web.Url]] = site URL

  • [[@Variables.ListName]] = your list variable

Method: POST

(Yes, POST — combined with X-HTTP-Method: PATCH in the headers.)

Headers:

Content-Type: application/json;odata=verbose
Accept: application/json;odata=verbose
X-HTTP-Method: PATCH
IF-MATCH: *
  • IF-MATCH: * ignores the ETag check (forces update)

  • Alternative: IF-MATCH: [[{ItemETag}]] if you want proper concurrency control

Body (data):

=JSON.stringify([[@Variables.ItemMetadata]])

Important: Use exact JSON serialization (JSON.stringify) so the body is sent as valid JSON.

Common Errors & Troubleshooting

“The property ‘__metadata’ does not exist on type…”
The type specified in __metadata is incorrect. Retrieve the ListItemEntityTypeFullName from the exact same list. Verify the display name (case sensitivity, special characters).

“A type named ‘SP.Data.*’ could not be resolved…”
Wrong site context (different Site URL) or the list does not exist at the specified URL.

“405 Method Not Allowed” or “Verb not supported”
Either X-HTTP-Method: PATCH is missing, or you set Method = PATCH without the required header.
In Teamsware / SharePoint REST, PATCH typically works via POST + X-HTTP-Method: PATCH.

No downstream triggers are firing
Check whether your trigger listens to ItemUpdated / “When an item is modified.”
Ensure the relevant fields were actually changed.
Verify you are targeting the correct list/site.

Concurrency error (ETag mismatch)
Use IF-MATCH: * (forces overwrite), or retrieve the current ETag beforehand and set it explicitly.

Data type conflicts
Ensure field values match the correct types:

  • Number → without quotes

  • Boolean → true / false

  • Lookup → FieldNameId

  • etc.

    • Related Articles

    • Triggered Actions introduction

      What are Triggered Actions? Triggered Actions allow configuring actions that are applied to a list or library when an event occurs (e.g., add, update, or add/update) and a condition evaluates to true. Triggered Actions are a SharePoint Online ...
    • Action: Update item

      Update item action allows updating an item in a list or a library immediately with configurable values. For more information about Action Builder read Action Builder introduction article. To configure the action the additional properties should be ...
    • Starting a Microsoft Flow from Teamsware Actions

      Microsoft Flow provides many features and integration options not available when using basic Teamsware actions. But you can start a Microsoft Flow / Power Automate from Teamsware action quite easily by using the Start Power Automate / Azure Function ...
    • Action: Add list item

      Add list item action allows adding a new list item dynamically to a specified SharePoint list. When the Add list item action is executed, the new item is added immediately setting the configured field values. For more information about Action Builder ...
    • Action: Get item

      Get items action allows to get items from a SharePoint list or library and use them e.g. in a loop control. Example of Get items action configuration on the current site For more information about Action Builder read Action Builder introduction ...