I’m trying to access the sys_script table through the ServiceNow Table API using a custom role, but I always get:
HTTP 403 Forbidden
Field(s) present in the query do not have permission to be read
The same API call works when I use an admin account.
What I’m doing
GET /api/now/table/sys_script?sysparm_limit=1
Custom role:
x_myrole(example name)
What I have already configured:
Added the custom role to my test user.
Created read ACL for:
Table:
sys_scriptOperation: read
Condition: none
Requires role:
x_myrole
No script condition on the ACL.
Confirmed that the ACL is evaluated and allowed (checked in debug logs).
Also tested with:
Full CRUD ACLs
Elevated privileges (still fails without admin)
But I still get the same 403 Forbidden response.
What I noticed
Works perfectly when using a user with
adminrole.Fails only for non-admin users, even though ACLs allow table access.
This almost looks like there is a system-level protection on
sys_scripttable that prohibits REST access.
Question
Is it possible to access the sys_script table using the REST Table API with a non-admin user?
If yes, what additional ACLs or roles are required to allow REST API access to sys_script?
What I’m looking for
Confirmation on whether the
sys_scripttable is intentionally restricted from REST API access for non-admin users.Whether there are any hidden ACLs, cross-scope protections, or system properties that block access to script tables (like
sys_script) through the Table API.Clarification on any specific roles (other than
admin) that are required to allow REST access tosys_script.A way to make this work for a non-admin user, if possible.