Also known as a "database trigger event", this event is defined in the Backend Workflow section and runs workflows triggered by changes in the database.
Whenever an item of the given type is modified, we check the "Only when..." condition of the event, and if the condition passes, we run the workflow. This is useful for situations where a given piece of data could be modified by many different places in your application, and you want to make sure something happens each time the data is modified in a specific way. For instance, you could use this to sync the value of certain data types to an external API whenever the data is modified. Trigger events are kicked off by any change to the data, regardless if the change is initiated by a workflow, an API call, or from manually editing the data in the editor.
When working with database trigger events, there are two special data types: "Thing Before Change" and "Thing Now" (where "Thing" will change to match the type of thing you are working with). "Thing Before Change" represents the data of the thing that was changed prior to the changes being made; "Thing Now" represents the current data. If a workflow modifies a thing multiple times, we only fire triggers once: "Thing Before Change" will be the data at the beginning of the workflow, and "New Thing" will be the data at the end. Triggers are also fired when a thing is created or deleted. If it was created, "Thing Before Change is empty" will be true, and if it was deleted "Thing Now is empty" will be true.
There are several caveats about using data triggers.