Accessing scoped application tables via Table API

JG6
Kilo Guru

Hello Community,

 

For some reason I've lost the ability to access tables of a scoped application, using the Table API (Yokohama). It used to work, but I probably did something wrong. And I can't find the culprit. I'm always getting a 403 with the response:

{
    "error": {
        "message": "User Not Authorized",
        "detail": "Failed API level ACL Validation"
    },
    "status": "failure"
}

The table is set to be accessible to all application scopes + read & web service access enabled. Logically, this should have been enough. The system log contains an error that is most likely related:

 

WebServicePolicyValidator: Table access denied by WebService Access Policy. [tableName= x_api_task]: no thrown error

 

The odd thing is that this seems to be selective. Some tables can be accessed with the Table API and some can't. The only commonality I see is that the barred tables have a reference field to the 'task' table. But then again, table and subtables tables also have reading access via web service. Or it can be something else entirely.

 

To my knowledge, the barred tables have the default setup. Nothing special that I can see.

 

I'm most probably overlooking something obvious, but what ? 🙂 

 

Or is there a way to have Servicenow log something more verbose ?

4 REPLIES 4

Ankur Bawiskar
Tera Patron
Tera Patron

@JG6 

is it working fine with admins user via API?

If my response helped please mark it correct and close the thread so that it benefits future readers.

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

Nope. Not even when the api user gets the admin role.

@JG6 

any new ACL got added on that table as part of some upgrade?

If my response helped please mark it correct and close the thread so that it benefits future readers.

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

No, it all looks like the default setup: 4 ACL and a dedicated role.