Hasura can be used to create event triggers on tables in the database. Event triggers reliably capture events on specified tables and invoke HTTP webhooks to carry out any custom logic.
Events can be of the following types:
- INSERT: When a row is inserted into a table
- UPDATE: When a row is updated in a table
- DELETE: When a row is deleted from a table
- MANUAL: Using the console or API, an event can be triggered manually on a row
- Event triggers are supported for Postgres and MS SQL Server databases.
- Event webhook notifications will be delivered at least once, and may arrive out of order with respect to the underlying event.
Caveat on different Hasura instances connected to the same database
Event Triggers store their data in the underlying database and hence different instances acting on the same data can cause undefined behaviour during run-time. This should not be a problem if the Hasura instances have the same metadata.