
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-06-2022 11:34 AM
I am trying to do a simple API call to update an approval record on the sysapproval_approver table. Using API Explorer, I have
PUT https://*******.service-now.com/api/now/table/sysapproval_approver/8f0cc504873ecd109d87ba6f8bbb3575?sysparm_fields=state&sysparm_input_display_value=approved
It is returning a 200 OK Status, but the response is:
{
"result": {
"state": "requested"
}
}
What am I missing? Why can I not update the state via API?
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-06-2022 01:52 PM
If it's field level WRITE ACL, you can use debug security rules to find out why this ACL is not allowing REST API updates.
You can give required roles.
Also, check if state column is not read only at dictionary level. You won't be to update field which is read only at dictionary level.
Regards,
Sachin

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-06-2022 11:40 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-06-2022 12:15 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-06-2022 01:52 PM
If it's field level WRITE ACL, you can use debug security rules to find out why this ACL is not allowing REST API updates.
You can give required roles.
Also, check if state column is not read only at dictionary level. You won't be to update field which is read only at dictionary level.
Regards,
Sachin

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-06-2022 03:19 PM
That was it. We have it read only at the dictionary level. Once I remove that attribute, I was able to approve via API. Thank you!