Its not something I'd want to put in a button.
No if you are trying to make a single delete button to clear a single record... that is an appropriate button code.
The API_PurgeRecords API as descibed here https://help.quickbase.com/api-guide/index.html#purgerecords.html can have a parameter to filter which records get purged.
where target_domain is the domain against which you are invoking this call, for example, intuit.quickbase.com.
So you can make a report where the filter is that checkbox being true and hide the report form all role so no one is likely to mess with it. i would also put in the description of the report to not delete or alter the report.
var text URL = urlroot() & "db/" & [_DBID_TABLE name goes here] & "?act=API_PurgeRecord&qid=99";
You can put that into a URL formula field. If you want to have a dashboard button, make the URL formula on a field somewhere in the app and expose the code by by suppressing the link text. Then copy and paste the code into a URL dashboard button element.
I would test this first on a Copy of your app, as when you purge records they are "gone baby gone".
There is also another way to alter the URL to not depend on a report qid, but rather just use query parameters. That would actually be a bit safer as that way you would not have a risk of someone removing the filers on your report and then the purge might purge everything.
Yes, An Automation can delete, but when I tried to use one for a real client, the deletions were painfully slow to run, so I abandoned that step in the Automation and did the delete with the API Purge as that was instant. We will see if delete is any different when it goes into GA (general Availability) release.
In my case I was deleting hundreds or thousands of records and the automation was just too slow. I think it deleted them one by one on some slow paced basis as opposed to more of a mass delete.