Automations

Learn when automations run and how to use On create, On update, and On delete in Ninox.

Automations run logic automatically when a defined event happens. Use them to keep data consistent and reduce manual work.

What automations do

An automation follows a simple pattern: when this happens, run this logic.

Use automations when the same action should happen every time the same event occurs.

Typical examples are:

  • setting default values for new records

  • recalculating dependent values after a change

  • reacting when a record is deleted

If users should decide when logic runs, a button is usually the better choice.

Automation events in Ninox

In the current UI, Ninox offers these automation events:

  • On create runs when Ninox creates a record. Use it to assign an internal number, set defaults, or create related data. You can find it in the table settings.

  • On update runs when a record changes. Use it to normalize input, update dependent fields, or keep related data in sync.

  • On delete runs when Ninox deletes a record. Use it when other data or follow-up logic must react to that deletion.

Use automations for logic that should always run in the background. Use buttons when users should stay in control.

Best practices

Automations are powerful, but they can make an app harder to understand if too much logic runs automatically.

Use these rules:

  • keep automation logic short

  • avoid hidden side effects when possible

  • test automations with real user workflows

  • document important automatic behavior clearly

  • use buttons instead of automations when users should decide

Automation logic that writes data runs inside write transactions. Slow automation logic can delay other write actions.

Keep this in mind especially when an automation:

  • updates many records

  • calls external services

  • runs large select queries

For more detail, see Best practices and common pitfalls.

Example uses

Here are typical uses for each event:

  • On create can set today(), assign the next invoice number, and set a default status.

  • On update can refresh totals, standardize field values, or sync related records.

  • On delete can react to record removal in related workflows.

Last updated

Was this helpful?