I'm battling various issues with a webhook task that invokes the AppSheet API. One is that it sometimes returns the following exception:
According to Invoke an action - AppSheet Help, that means "The application specified by the AppId cannot be found." I double-checked my app is selected in the webhook task's App Id property. Other webhook tasks for the same app work fine.
Any direction for the troubleshooting is appreciated.
Update:
I dug into the Audit Log, and it looks like the what's "not found" is the key of the first row to be processed. However, that key indeed exists. So, I feel like it's some security or permission issue, but I don't know what that could be--especially since the automation event has the Bypass Security Filters? property enabled.
Here's the error detail excerpted from the the Audit Log's row for the "REST API invoke" operation:
Here's some detail excerpted from the the Audit Log's row for the "Change Bot" webhook operation, showing the "not found" key was included in the payload--as you can imagine, as the result of an expression, which means it indeed exists:
And, here's all the IDs from the payload right together in the data source:
If these additional clues help anyone help me, I'd really appreciate it.
I needed to get the relevant feature released, so I replicated the the functionality I hoped to accomplish via AppSheet API using automation steps that instead directly invoke app actions. Of course, this is suboptimal.
So, if anyone has guidance to offer about where to focus the troubleshooting I'd really appreciate it. I've tried workaround on top of workaround but can't get this specific webhook task to work but also can't put my finger on what must be its fatal flaw somewhere.
I myself have no advice to offer as I've not used the API at all.
Did you ever get any additional insight on this? I have run into the same issue.
Probably not. I don't recall the specific context in which I encountered the problem reported here, but when I was actively participating in the forum I usually updated threads like this one if I later found a solution.
The only thing that I have been able to get to work is removing security filters from the table entirely. Obviously less than ideal. I am still trying to determine if there is some sort of conversion error, or datatype clash? Something is getting lost in translation and failing to query the dataset properly.
Accidently stumbled across a work around. I was using "User Settings" in the table security filters that was being updated by the automation. I switched to a physical table with user filter/selection data and updated the security filters to key off of that table instead. Now the automation works flawlessly.
@JMPeterson wrote:
I switched to a physical table with user filter/selection data and updated the security filters to key off of that table instead. Now the automation works flawlessly.
I am getting the same error today (error below) and based on this comment above (and @dbaum 's previous related comment about ID indeed exists) I suspect that the "the update is being applied to the filtered data in spite of the fact that the "Bypass Security Filters?" setting is on.
The Security Filter bypass is definitely getting applied when the JSON payload is being created as I have rows in the resultant payload I would not normally be seeing.
I am going to create a separate app without Security Filters to see if that resolves my issue.
"Exception":"Webhook HTTP request failed with exception
The remote server returned an error: (404) Not Found.
I'm running into the same issue when using the API and getting record not found when it does exist.
Was anyone able to find a resolution to this.
Hi everybody,
As new member i got exactly the same issue when i tried to use the action "Edit" to update table from another table in setting the Key column from another column of the source...
So i dont know if it can help anyone but in trying many things i have found a solution, in fact i change the action "Edit" by "Add", and because the Key of the column exists already and it is not generated by Initial Value, the result is the existing column with this ID is updated and no added with a new row. Maybe a coincidence but until now, it is working perfectly.
I hope i am clear enough.
Good luck and have fun ๐
FYI seems like I found a good solution here:
1. I had to explicitly allow a given email to view all records in the security filter for the table I wanted to edit via API.
2. I then used the RunAsUserEmail property in my API call, referencing the same email from step 1.โ
Context: I was getting the 404 error saying "Row having key '<key value>' not found" when I tried to update rows that I knew were in my table. I knew security filters were my problem but couldn't figure out a way around it. The advice on the API troubleshooting page wasn't very helpful and messing with the system provided User Settings table was going to require really difficult changes to my security filters and views. The solution appears to be, the email that the API action is executed as must explicitly have access to the rows you want to edit, in the table security filter.
User | Count |
---|---|
17 | |
14 | |
8 | |
7 | |
4 |