Automations
Steps
An automation runs its steps in order. Text settings (subjects, messages, URLs, prompts)
are templates with {{ expressions }}.
This list is generated from appTown itself.
| Group | Step |
|---|---|
| Records | Add a record |
| Records | Change records |
| Records | Delete records |
| Logic | Continue only if |
| Logic | Run another automation |
| Messages | Send an email |
| Messages | Send a text message (SMS) |
| Messages | Notify people in appTown |
| Integrations | Post to Slack |
| Integrations | Post to Discord |
| Integrations | Post to Microsoft Teams |
| Integrations | Send a Telegram message |
| Integrations | Add a row to Google Sheets |
| Integrations | Create a Google Calendar event |
| Integrations | Call a REST API (any URL) |
| Integrations | Send a signed webhook (the record as JSON) |
| Integrations | Call an MCP tool |
| Payments | Create a Stripe payment link |
| Payments | Refund a Stripe payment |
| AI | Ask AI and save the answer |
| AI | AI: fill fields from text |
| AI | AI phone call (needs a voice provider) |
#Records
- Add a record to any table. For each field, give an expression:
[Customer],TODAY(),"New",INPUT("email"). - Change records: the trigger record, or every record of a table matching a
condition (
[Due] < TODAY()). For each field to change, give an expression; in it, fields mean the record being changed. At most 1,000 records per run. - Delete records: the trigger record, or every record matching a condition. Deleted records can be restored.
#Logic
- Continue only if stops the run when its condition is no. That's not a failure: the run is marked as stopped there.
- Run another automation starts another automation of the app with the same record (and the same input, for webhook and API runs). It runs as its own run in the log. Chains stop after 5 levels.
#Messages
- Send an email: to one or more addresses (a template; commas between), with a subject and a message.
- Send a text message (SMS): to phone numbers, with a message.
- Notify people in appTown: a notification with a title and a message on the recipients' Notifications page, with an unread count in their menu.
#Integrations
Post to Slack, Discord or Microsoft Teams, send a Telegram message, add a row to Google Sheets, create a Google Calendar event and call an MCP tool use a connection.
Call a REST API (any URL) sends a request (method, URL, headers, body) to any http
or https address on the internet, but never to addresses inside appTown's own network.
Its JSON answer can be saved in a field of the trigger record. Keep API keys in a
REST API key connection, so they are never shown in logs.
Send a signed webhook POSTs the event and the record as signed JSON. See Webhooks.
#Payments
Create a Stripe payment link and Refund a Stripe payment use the billing owner's connected Stripe account. See Payments.
#AI
- Ask AI and save the answer: a prompt (a template) and a model tier (fast, balanced or deep); the answer is saved in a field of the trigger record. "Write a friendly reply to {{[Message]}}".
- AI: fill fields from text: reads one text field (an email, a note) and fills the fields you pick from it: a name, a date, an amount.
- AI phone call: coming soon; not available until a voice provider is connected.
AI steps use the app billing owner's AI credits. In test runs they don't call a model.