BetaappTown is live but still in beta: things may change while we finish it.
appTown Docs Open appTown

Automations

Automations

An automation does work for you when something happens: it starts on a trigger and runs its steps in order. Build them under Build → Automations. Like the rest of the app, they take effect when you publish.

Video coming soon
Your first automation

#How an automation works

  1. A trigger starts it: a record is added, changes or is deleted; a schedule; another service calling a webhook; an API call; a button on a record; a Stripe payment.
  2. Its steps run one after another: change records, check a condition, send emails and messages, post to Slack or Teams, add rows to Google Sheets, call any API, ask AI.
  3. Every run is written to the run log, step by step.

Steps read the trigger record's fields ([Name], [Customer].[Email]), and their text settings are templates: New order {{[Order number]}} from {{[Customer].[Name]}}.

#Build one

  1. Under Build → Automations, add an automation and give it a name.
  2. Pick its trigger and set it up (the table, the fields to watch, a condition, a schedule).
  3. Add steps. Each step's settings are checked as you go: field names, expressions and templates.
  4. Test run it on your test data: nothing is sent, and the log shows what would have happened. See Test and debug.
  5. Publish the app.

You can pause an automation (turn it off) without deleting it; Run now runs the published version for real.

#Who an automation acts as

  • Automations started by an API call act as the caller (the API key's user), with that person's permissions.
  • All others act with the app's own authority: they can read and change every record of the app.

#Connections

Integration steps use connections: a Slack webhook URL, a Telegram bot token, a Google sign-in, an MCP server, a REST API key. Add them under Build → Automations → Connections; they are stored encrypted and never shown again. See Integrations.

#Limits

  • Automations started by other automations stop after 5 levels, so loops always end.
  • A Change records step changes at most 1,000 records per run.
  • Webhook bodies: 256 KB. API call bodies: 1 MB.
  • A step that fails for a reason that may pass (a timeout, a service that was down) is retried a few times with growing waits; see Retries.