I have a Power Automate flow that is triggered when a SharePoint library item is approved.
As part of the flow, I update certain properties of the item. However, these updates reset the item’s Approval Status back to “Not submitted”. To handle this, I attempt to re‑approve the item programmatically.
For re‑approval, I added two Send an HTTP request to SharePoint actions:
URI - _api/SP.Approvals.CreateItemRequest
Body -
{
"creationInfo": {
"listId": "<List Id>",
"itemId": "<Item Id>",
"approvers": "<Service account Id>",
"title": "<File name with extension>",
"details": "Automatic request",
"markDocAsFinal": true
}
}
URI - api/SP.Approvals.ApproveItemRequest
Body -
{
"listId": "<List Id>",
"itemId": "<Item Id>",
"approvalId": "@{body('Send_an_HTTP_request_to_SharePoint')?['d']['CreateItemRequest']}",
"comments": "Automatic approval"
}
The issue is that this re‑approval works intermittently. Most of the time, the flow fails with the following error:
“Action 'Send_an_HTTP_request_to_SharePoint_-_Create_request' failed: Creating new approval request is not allowed if item is in Pending or Approved state.”
This happens even though the Get item properties action immediately before this step returns the item’s Approval Status as “Not submitted”.
Question
What could be the cause of this inconsistent behavior, and how can it be fixed?
It appears that SharePoint sometimes still treats the item as Pending or Approved, even though the Approval Status column shows “Not submitted” when retrieved via Get item properties.
Please find the attached screenshot for reference.

Report
All responses (
Answers (