**Bulk Deletion in AppSheet** I am trying to use an AppSheet Bot to delete all rows from a table at a scheduled time. The table can contain up to 3,500 rows. However, the Bot is only able to delete approximately 150–250 rows before the process stops or

The Bot runs at a scheduled time and attempts to delete all rows from a table that can contain up to 3,500 records. However, the automation only manages to delete approximately 150–250 rows before timing out or stopping.

I cannot use Google Apps Script or any external scripting solution because scripting is restricted in my organization’s working domain.

Is there a reliable approach using only native AppSheet features to delete all rows? For example, can the deletion be processed in smaller batches, or can the Bot repeatedly execute the deletion process until the table is empty?

Body:
{
“Action”: “Delete”,
“Rows”: [
<<Start: SELECT(BATTERY PIPELINE[Row ID], ISNOTBLANK([Row ID]))>>
{
“Row ID”: “<<[Row ID]>>”
}
<>
]
}

I don’t know the exact answer to your question but this probably due to the bot timing out

Execution time of a bot is 2 minutes (I thought it was 10 but I am probably imagining it)

For tables that need to be updated every night I have had to create lots of bots, running the same task, spaced out by 10 minutes but to only action on certain row numbers.

I can usually do 500 rows as an update, but if you are only getting through 150 you might want to limit the bot to run on rownumber 1-100, then 101-200 etc

Yep, you’ll need to do something like this. Consider also restructuring your table so that you can “hide” old rows while waiting for their deletion.

I would guess you are using AppSheet database.

With AppSheet database I have observed that the delete row process through automation is very slow.

Yes the solution is what you proposed and Steve endorsed.

I too ran the process multiple times in batches. I must mention that I used Google Apps Script to this job in batches.

I believe that a suggested workaround (by @AleksiAlkio) has been to create a separate app that includes ONLY the tables required to perform the deletion. No Virtual columns etc. Then use a Scheduled process that calls the AppSheet API to perform the Delete. The assertion is that the API can delete thousands of rows within seconds.

I’m trying to find the post that described this method.

The suggestion by @WillowMobileSys is a good point to try @Pratik_Mukherje

Yes, this is the way you can do that. Though if you don’t have any virtual column in this table, you can do that in the same app.