# Choose a trigger

Pick what starts your workflow.

Every workflow has one [trigger](https://docs.gorunner.io/glossary#trigger). A workflow without one can’t be published.

## Most workflows

- [Form](https://docs.gorunner.io/build/start-from-a-form): People fill in a form GoRunner hosts for you. · 4 min
- [Webhook](https://docs.gorunner.io/build/start-from-a-webhook): Another app, or your own code, sends data to the workflow’s address. · 5 min
- [Schedule](https://docs.gorunner.io/build/run-on-a-schedule): At set times, such as every weekday at 9. · 3 min
- [Manual](https://docs.gorunner.io/build/run-by-hand): You start it yourself, when you choose. · 2 min

## When something changes in an app

Some apps have a trigger of their own. Many are told by the app itself: publishing the workflow registers a webhook in the app (unpublishing removes it), and a run starts when the app reports the event. The others check the app about once a minute and start a run for each new item. Their first check only notes what’s already there: rows, emails or files that exist when you publish don’t start runs. Each app’s page says which kind its trigger is.

- **A new email**: [Gmail](https://docs.gorunner.io/apps/gmail#triggers), [Microsoft Outlook](https://docs.gorunner.io/apps/microsoft-outlook#triggers), [Email (IMAP)](https://docs.gorunner.io/apps/email-imap#triggers)
- **A message or another event in a chat**: [Slack](https://docs.gorunner.io/apps/slack#triggers), [Microsoft Teams](https://docs.gorunner.io/apps/microsoft-teams#triggers), [Telegram](https://docs.gorunner.io/apps/telegram#triggers), [WhatsApp Business](https://docs.gorunner.io/apps/whatsapp-business#triggers), [Twilio](https://docs.gorunner.io/apps/twilio#triggers)
- **A new or changed row**: [Google Sheets](https://docs.gorunner.io/apps/google-sheets#triggers), [SeaTable](https://docs.gorunner.io/apps/seatable#triggers), [Airtable](https://docs.gorunner.io/apps/airtable#triggers), [Ninox](https://docs.gorunner.io/apps/ninox#triggers), [Supabase](https://docs.gorunner.io/apps/supabase#triggers), [Microsoft SharePoint](https://docs.gorunner.io/apps/microsoft-sharepoint#triggers)
- **A new or changed file**: [Google Drive](https://docs.gorunner.io/apps/google-drive#triggers), [Microsoft OneDrive](https://docs.gorunner.io/apps/microsoft-onedrive#triggers), [Dropbox](https://docs.gorunner.io/apps/dropbox#triggers), [Amazon S3](https://docs.gorunner.io/apps/amazon-s3#triggers), [FTP/SFTP](https://docs.gorunner.io/apps/ftp-sftp#triggers)
- **A new, changed or cancelled event or booking**: [Google Calendar](https://docs.gorunner.io/apps/google-calendar#triggers), [Calendly](https://docs.gorunner.io/apps/calendly#triggers)
- **A new form response**: [Google Forms](https://docs.gorunner.io/apps/google-forms#triggers), [Typeform](https://docs.gorunner.io/apps/typeform#triggers), [Jotform](https://docs.gorunner.io/apps/jotform#triggers), [Tally](https://docs.gorunner.io/apps/tally#triggers)
- **A new or changed contact, deal or ticket**: [HubSpot](https://docs.gorunner.io/apps/hubspot#triggers), [Salesforce](https://docs.gorunner.io/apps/salesforce#triggers), [Pipedrive](https://docs.gorunner.io/apps/pipedrive#triggers), [ActiveCampaign](https://docs.gorunner.io/apps/activecampaign#triggers), [KlickTipp](https://docs.gorunner.io/apps/klicktipp#triggers), [Freshdesk](https://docs.gorunner.io/apps/freshdesk#triggers), [Intercom](https://docs.gorunner.io/apps/intercom#triggers), [Zendesk](https://docs.gorunner.io/apps/zendesk#triggers)
- **A subscriber or email event in a newsletter tool**: [Mailchimp](https://docs.gorunner.io/apps/mailchimp#triggers), [Brevo](https://docs.gorunner.io/apps/brevo#triggers), [MailerLite](https://docs.gorunner.io/apps/mailerlite#triggers)
- **A new or changed task, issue or page**: [Notion](https://docs.gorunner.io/apps/notion#triggers), [Todoist](https://docs.gorunner.io/apps/todoist#triggers), [Microsoft To Do](https://docs.gorunner.io/apps/microsoft-to-do#triggers), [Asana](https://docs.gorunner.io/apps/asana#triggers), [ClickUp](https://docs.gorunner.io/apps/clickup#triggers), [Jira Software](https://docs.gorunner.io/apps/jira-software#triggers), [Linear Trigger](https://docs.gorunner.io/apps/linear-trigger#triggers), [monday.com](https://docs.gorunner.io/apps/monday#triggers), [Trello](https://docs.gorunner.io/apps/trello#triggers)
- **A change in a code repository**: [GitHub](https://docs.gorunner.io/apps/github#triggers), [GitLab](https://docs.gorunner.io/apps/gitlab#triggers)
- **A new or changed order, payment, invoice or record**: [Shopify](https://docs.gorunner.io/apps/shopify#triggers), [WooCommerce](https://docs.gorunner.io/apps/woocommerce#triggers), [Stripe](https://docs.gorunner.io/apps/stripe#triggers), [PayPal](https://docs.gorunner.io/apps/paypal#triggers), [Lexware Office](https://docs.gorunner.io/apps/lexware-office#triggers), [bexio](https://docs.gorunner.io/apps/bexio#triggers), [sevdesk](https://docs.gorunner.io/apps/sevdesk#triggers), [weclapp](https://docs.gorunner.io/apps/weclapp#triggers), [Odoo](https://docs.gorunner.io/apps/odoo#triggers)
- **A new or changed employee or absence**: [Personio](https://docs.gorunner.io/apps/personio#triggers)

## More

- [Error and Run Finished](https://docs.gorunner.io/build/react-to-other-runs): Another workflow failed, or finished. · 3 min
- [When Called by Another Workflow](https://docs.gorunner.io/build/run-another-workflow): Another workflow runs this one as a step. · 4 min
- [MCP Tool](https://docs.gorunner.io/apps/mcp-tool): An AI app, such as Claude, calls this workflow as a tool.

## Add or change the trigger

1. In a new workflow, press **Add a trigger**.
2. Type what should start it, such as `form`, and choose it.

To change it later, right-click the trigger’s card and choose **Replace trigger**. The steps stay.

## For developers

The trigger is the root of the workflow’s definition. Whatever starts a run lands on `{{trigger.…}}`, such as `{{trigger.body}}` for a form or a webhook. [Triggers](https://docs.gorunner.io/build/triggers) lists what each one puts there.

## Related

- [Triggers](https://docs.gorunner.io/build/triggers): Every trigger and its data
- [A trigger didn’t fire](https://docs.gorunner.io/build/a-trigger-didnt-fire): Not published, weekends off, the wrong time zone
- [What is a workflow?](https://docs.gorunner.io/build/what-is-a-workflow): Triggers, steps, drafts and runs · 4 min

Source: https://docs.gorunner.io/build/choose-a-trigger
