packages/twenty-docs/user-guide/workflows/capabilities/workflow-triggers.mdx
Workflows always start with a single trigger that defines when the automation should run.
<Tip> **Advanced objects are supported!** Beyond standard CRM objects (People, Companies, Opportunities), you can also trigger workflows and perform actions on: - Workspace Members - Calendar Events - Messages (Emails) - Tasks, Notes, and many other system objectsThis opens up powerful automations like notifying team members when calendar events are created, or processing incoming emails automatically. </Tip>
Starts the workflow when a new record is created in a selected object (People, Companies, Opportunities, or any custom object).
Configuration: Select the object type to monitor for new records.
<Note> - This trigger is great for records created by csv, mailbox and calendar synchronization, API. - **It is not recommended for records created manually**: with this trigger, workflows start as soon as the record is created. Since Twenty UI offers auto-save on the fly (there is not an edit mode and then a validation to save records), the workflow will be triggered before the user inputs all the fields. To trigger this workflow on records created manually, it is recommended to use the trigger `Record is created or updated` instead. </Note>Starts the workflow when changes are made to an existing record.
Configuration:
Starts the workflow when a record is either created or updated in a selected object.
Why This Matters: This trigger is particularly helpful because records created via different methods behave differently:
Configuration:
Starts the workflow when a record is removed from an object.
Configuration: Select the object type to monitor for deletions.
Starts the workflow when triggered by a user action. This trigger can be accessed through the Cmd+K menu or via a custom button that will be displayed in the top navbar after selecting record(s).
Availability Configuration: Choose how the workflow should handle record selection:
Global: No record is required to trigger this workflow. The workflow is triggered from the command menu Cmd + K anywhere (from any object) and does not use record(s) as input.
Single: The selected record(s) will be passed to your workflow. This is configured for a given object. Several records can be selected before triggering the workflow. The workflow will run from beginning to end as many times as there are records selected.
<Note> **Soft limit: 100 runs/minute**. Beyond this, workflows remain in "Not Started" status and are processed gradually—either by a background job or when another workflow enters the queue. This means you can select more than 100 records with a Single trigger; execution will just be slower. </Note>Bulk: The selected record(s) will be passed to your workflow. This is configured for a given object. Several records can be selected before triggering the workflow. The workflow will run once, providing the entire list of records as input. This means the workflow needs to contain an Iterator action.
<Note>This is more advanced, and best for people who want to optimize the number of workflow runs. </Note>
Additional Configuration:
Access Methods:
Cmd+K menu to find and launch manual workflowsStarts the workflow on a recurring basis you define.
Configuration:
Starts the workflow when a GET or POST request is received from an external service.
Configuration:
| Use Case | Recommended Trigger |
|---|---|
| New leads need processing | Record is Created |
| Data changes need sync | Record is Updated |
| Import/manual data handling | Record is Updated or Created |
| Cleanup after deletion | Record is Deleted |
| User-initiated action | Launch Manually |
| Recurring reports | On a Schedule |
| External integration | Webhook or On a Schedule |