How to fix it
- Verify the authenticating user has the
rest_servicerole by navigating to User Administration > Users, search for the user, and check the Roles related list. - If missing, add the
rest_servicerole by clicking 'Edit' on the Roles related list and adding it from the Collection tab. - Check table-level ACL permissions by navigating to System Security > Access Control (ACL) and filtering by the target table name (e.g.,
incident). - Review each ACL record for 'read', 'write', 'create', and 'delete' operations - ensure the user has roles that satisfy the
Requires rolefield or that theScriptfield evaluates to true for this user. - If using a Scripted REST API, navigate to System Web Services > Scripted Web Services > Scripted REST APIs and locate your API definition.
- Click into the specific HTTP method resource and verify the
Requires authenticationandRole requiredfields - ensure the user has the specified role. - Check for IP restrictions by navigating to System Properties > Basic Configuration and searching for properties containing
iporwhitelist. - Review System Logs > System Log > All for entries containing 'REST', 'IP', or '403' around the time of your API call to identify specific blocking reasons.
- If IP allowlisting is the issue, add the caller's IP to the allowlist or modify the relevant system property to include the IP range.
- For rate limiting issues, navigate to System Definition > Tables and open
sys_rt_scheduleto check for active rate limiting rules affecting your endpoint.
Test your fix immediately using the REST API Explorer (System Web Services > REST API Explorer) with the same user credentials to verify the 403 error is resolved.