I'm looking for a clear way to have Zapier automatically remove an entry from my PostgreSQL database once I delete it from Airtable. At the moment, my Zapier setup only allows triggers when a record is added or modified, and I haven't found an option for deletion. I need advice on configuring Zapier so that deletions in Airtable can be properly reflected in my PostgreSQL database without manual intervention.
so i ended up using a webhook trigger that fires when a deletion happens in airtable, then a custom code action deletes the corresponding postgres row. not a built in option in zapier so you gotta script a bit, but it works for me.
Another method that worked for me was using a periodic reconciliation process rather than trying to capture the deletion event in real time. In my setup, I created a scheduled Zap that retrieves all active records from Airtable and compares them with the entries in PostgreSQL. When it notices a record missing in Airtable, it runs a custom SQL query to delete it from PostgreSQL. Although this isn’t immediate, it provides a reliable batch process without device-specific triggers and minimizes the need for continuous manual patching.
In my experience, a practical workaround is to implement a soft delete mechanism in Airtable. Instead of actually removing a record, I update a field (like a status flag) to indicate deletion. Then, Zapier can easily trigger on that update and run a script or SQL command that deletes the corresponding row in PostgreSQL. Although it’s not as elegant as having a direct deletion trigger, this method reliably keeps the two systems in sync without manual intervention. It also provides a safety net if you ever need to recover records.