Looking to understand automation concepts? Start with the Automation System guide to learn about event-driven automation and AI integration.
Record
Record triggers fire based on activity on a record—data changes, attached files, comments, time-based schedules, and conversations.Approval Process Status Updated
Approval Process Status Updated
Purpose: Trigger when approval workflow statuses change.How it works: Monitors approval processes and fires when status transitions occur (Created, Step Approved, Cancelled, Denied, Final Approval).Configuration:Common Use Cases:
- Approval Process: Select which approval process to monitor
- Status: Choose specific status changes to trigger on:
- Created: When approval process begins
- Step Approved: When individual approval steps complete
- Cancelled: When approval process is cancelled
- Denied: When approval is rejected
- Final Approval: When all approvals are complete
- Where conditions: Additional filtering based on approval details
trigger.status: New approval status- All field values from the record being approved
- Post-Approval Processing: Execute purchase orders, contracts, or projects after final approval
- Rejection Handling: Route denied requests back to originators with feedback
- Escalation Management: Alert higher authorities when approvals are delayed
- Compliance Documentation: Log approval decisions for audit trails
- Workflow Continuation: Trigger next phase of business processes after approval
Attachment is Added
Attachment is Added
Purpose: Trigger when files are uploaded to records.How it works: Fires when attachments are added to any record, providing access to file content and metadata for processing. This trigger fires regardless of how the attachment was added to the record.Configuration:How Attachments Get Added:This trigger fires when attachments are added through any of these methods:Common Use Cases:
- No specific configuration required: This trigger automatically monitors all file uploads
- Add Changed Condition: Filter based on file type or record attributes
- Where conditions: Specify criteria for which attachments should trigger the automation
File Size Limit: The system supports attachments up to 250MB per file.
- Manual Upload: Users adding attachments directly in the record layout
- Email Received: Email attachments automatically added when creating records via email
- External API: Third-party systems adding attachments via Elementum API endpoints
- Automation Actions: Save Attachment action or Send API Request action downloading files
- File Fields: When files are added to specific File Field types on records (note: File Fields are distinct from the attachments block)
trigger.Name: Original filenametrigger.Description: Attachment descriptiontrigger.Media Type: File extension/format (e.g., “PDF”, “DOCX”, “PNG”)trigger.URL: File URL for accesstrigger.Size: Size of uploaded file- All field values from the record the file was attached to
- Document Processing: Extract data from uploaded contracts, invoices, or reports
- File Validation: Check file formats or content before processing
- Compliance Scanning: Scan documents for sensitive information or compliance issues
- Workflow Initiation: Start approval processes when key documents are uploaded
- Data Extraction: Pull information from documents into record fields
Comment Added
Comment Added
Agent Conversation Ended
Agent Conversation Ended
Purpose: Trigger when AI agent conversations complete.How it works: Fires when agent interactions finish, providing access to conversation transcripts and metadata for further processing.Configuration:Common Use Cases:
- Conversation Type: Filter by conversation channel:
- Teams: Microsoft Teams conversations — for Teams setup and how this fits with agent routes, see Agent Microsoft Teams Integration
- Voice: Phone call conversations
- Timeout Duration: Set how long to wait after conversation inactivity before considering it ended
- Changed Fields: Monitor specific fields that may change during conversations
- Where conditions: Filter based on conversation attributes or outcomes
trigger.Conversation Type- Channel (Teams, Voice, etc.)trigger.transcript- Full conversation transcript- All field values from the record the conversation was added to
- Call Analytics: Analyze phone conversations for sentiment, keywords, and outcomes
- Follow-up Automation: Schedule follow-up tasks based on conversation content
- CRM Updates: Update customer records with conversation summaries and next steps
- Quality Assurance: Route conversations for review based on specific criteria
- Agent Performance: Capture workflow statistics and grade agent performance
- Reporting: Generate conversation reports and performance metrics
Record is Created
Record is Created
Purpose: Trigger when new records are added to your system.How it works: Fires immediately when a new record is created in any app, element, or task, providing access to all field data from the new record.Configuration:Common Use Cases:
- Keep data consistent: Optional checkbox to lock user interaction during automation execution
- Add Changed Condition: Filter which record creations should trigger the automation
- Where conditions: Set criteria like field values, user who created the record, or other attributes
- All field values from the new record
- Customer Onboarding: Welcome new customers with account setup, documentation, and team assignments
- Lead Processing: Qualify and route new leads based on source, value, or characteristics
- Project Initialization: Create project templates, assign teams, and set up tracking when new projects are added
- Compliance Logging: Document new record creation for audit trails and regulatory requirements
- Notification Workflows: Alert stakeholders when critical records are created
Record is Updated
Record is Updated
Purpose: Trigger when existing records are modified.How it works: Fires when record field values change, with options to specify which field changes should trigger the automation.Configuration:Common Use Cases:
- Keep data consistent: Lock user interaction during execution
- Add Changed Condition: Specify which fields trigger the automation when changed
- Changed Fields: Select specific fields to monitor (e.g., Status, Priority, Assigned User)
- Where conditions: Additional criteria that must be met for the trigger to fire
- All field values from the updated record
- Status Change Workflows: Route records through approval processes when status changes
- Escalation Management: Alert managers when priority levels increase
- Progress Tracking: Update related records when project milestones are reached
- Notification Cascades: Inform stakeholders when critical fields are modified
- Data Synchronization: Update external systems when key fields change
Survey
Survey
Purpose: Trigger when survey responses are submitted.How it works: Fires when survey forms are completed, providing access to response data for analysis and follow-up actions.Configuration:Common Use Cases:
- Survey: Select which survey to monitor for responses
- Add Changed Condition: Filter responses based on specific criteria
- Changed Fields: Monitor specific survey fields
- Where conditions: Set criteria for which responses trigger the automation
- All the fields from the survey response
- All the fields from the record the survey was added to
- Response Processing: Analyze and categorize survey responses
- Follow-up Actions: Trigger follow-up based on response content
- Alert Systems: Alert teams to negative feedback or critical responses
- Data Analysis: Process survey data for reporting and insights
- Customer Service: Route dissatisfied customers to support teams
Time-Based
Time-Based
Purpose: Trigger an automation relative to a date or date-time field on a record.How it works: Monitors a selected date or date-time field and fires the automation before, after, or exactly on the field’s value. When a record is created or updated, the system calculates the target time based on your configured offset and schedules the automation to run at that time.Configuration:Variables Available:Common Use Cases:
- Select Field: Choose a date or date-time field from the app to monitor (calculated fields are excluded)
- Related To: Choose the timing relationship:
- Before: Fire the automation a specified amount of time before the field value
- After: Fire the automation a specified amount of time after the field value
- On: Fire the automation at the exact date/time of the field value
- Quantity: Number of time units (shown for Before and After only, minimum 5 for minutes)
- Increment: Time unit — Minutes, Hours, or Days (date-only fields only support Days)
- Where conditions: Additional criteria to filter which records should trigger the automation
Time-based triggers are checked on a polling interval. There may be a delay of up to a few minutes between the scheduled time and when the automation actually starts.
- All field values from the record
- Renewal Reminders: Notify account managers before contracts or subscriptions expire
- Deadline Alerts: Send reminders before task due dates
- Follow-up Scheduling: Trigger follow-up actions a set time after an event
- SLA Monitoring: Alert teams when response deadlines are approaching
- Escalation Timers: Escalate unresolved items after a specified period
Workflow Start
Workflow Start triggers initiate automations from external inputs, scheduled data conditions, or on-demand requests.Data Mine
Data Mine
Purpose: Trigger when a Data Mine run finds rows that match (or no longer match) your criteria on a CloudLink-backed Table.How it works: On each scheduled Data Mine evaluation, Elementum tracks per-row state (matched vs. unmatched). Your automation runs when a row transitions—for example when it newly satisfies your filters or when it stops satisfying them—not on every scan where nothing changed for that row. See Data Mining.Configuration:Common Use Cases:
- Select a Data Mine: Choose which Data Mine to monitor
- Trigger Options:
- Trigger when data meets requirement: Fire when specific data conditions are met
- Trigger when data no longer meets requirement: Fire when conditions are no longer satisfied
- All the fields from the record the data mine was triggered for
- Data Processing: Process newly collected external data
- Alert Systems: Alert teams when data thresholds are crossed
- Report Generation: Create reports from fresh data collections
- Integration Workflows: Sync external data with internal systems
- Quality Monitoring: Monitor data quality and completeness
Email Received
Email Received
Purpose: Trigger when emails are received at configured addresses.How it works: Monitors dedicated email addresses and fires when new emails arrive, providing access to email content, attachments, and sender information.Configuration:Common Use Cases:
- Email Address: Configure or create new email addresses to monitor
- Create New Email: Generate dedicated email addresses for specific automations
- Email Format: Typically follows pattern like
testing@elementum.elementum.io
trigger.email_id- Unique email identifiertrigger.sender_email- Email address of sendertrigger.sender_name- Name of sender (if available)trigger.subject- Email subject linetrigger.body- Email content (text and HTML)trigger.attachments- Array of attached filestrigger.timestamp- When email was received
- Support Ticket Creation: Convert emails into support tickets automatically
- Lead Capture: Process inquiry emails into lead records
- Invoice Processing: Handle vendor invoices sent via email
- Document Processing: Process emailed documents and attachments
- Customer Communication: Route customer emails to appropriate teams
On-Demand Trigger
On-Demand Trigger
Purpose: Create custom triggers with configurable inputs and outputs.How it works: Allows creation of reusable automation components that can be triggered manually or by other automations with custom parameters.Configuration:Common Use Cases:
- Configure Inputs: Define input parameters that can be passed to the automation
- Input Name: Descriptive name for the parameter
- Field Type: Data type (Text, Number, Date, etc.)
- Default Value: Optional default value
- Required: Whether the input is mandatory
- Multiple: Whether multiple values are allowed
- All configured input parameters as variables
- Reusable Workflows: Create automation templates that can be used across multiple processes
- Manual Processing: Allow users to trigger specific workflows with custom parameters
- Integration Points: Create endpoints for external systems to trigger automations
- Batch Operations: Process multiple items with consistent logic
- Custom Business Logic: Implement specialized workflows that require input parameters
Automations can also be started from record details using automation buttons. Admins add buttons to the layout that run a chosen automation when the user clicks; required inputs are collected via a form. See Automation Buttons for setup and behavior.
Webhook Trigger
Webhook Trigger
Purpose: Trigger an automation when an external system sends an HTTP request to Elementum.How it works: When you add a Webhook trigger to an automation, Elementum provides a unique URL. External systems (other applications, middleware, or scripts) POST to that URL to start the automation. The request body you send is available inside the automation so you can create or update records, run AI steps, or call other systems based on the payload.Configuration:The webhook URL itself is unique per automation and acts as a shared secret. Even when using Bearer authentication, restrict access to the URL and avoid exposing it in public clients.Common Use Cases:
Body:
- Create an automation and select Webhook as the trigger.
- Save or publish the automation to get the webhook URL. Use this URL as the endpoint your external system will call.
- Custom Response (optional): Define a custom response body returned to the caller when the webhook is invoked. Supported formats: JSON, cXML, or TEXT. Use this when the calling system expects a specific response format. See Webhook Trigger Custom Response Bodies for details.
- Method: POST. Send the payload in the request body.
- Headers: Set
Content-Type: application/json(or the format your automation expects) so the payload is parsed correctly. - Body / payload: Send a JSON (or other supported) body. Structure the payload to match what your automation expects. The payload is available to subsequent steps in the automation (e.g. via JSON File Reader or value references), so you can pass identifiers, field values, or event data that the automation uses to create records, update fields, or trigger other actions.
- The webhook request body is available to the automation. Use value references or the JSON File Reader to read specific keys and use them in Create Record, Update Record Fields, Send API Request, or other actions.
Authorization header of your request. Obtain a token through the standard Elementum API authentication flow described in Request an Access Token.- Inbound integrations: Receive events from ERP, CRM, or other systems (e.g. order created, case updated) and create or update records in Elementum.
- Activity and event pipelines: Send activity or audit events from external systems into Elementum to trigger workflows, create tasks, or update records.
- Middleware and APIs: Use Elementum as the target of webhooks from Zapier, custom APIs, or data pipelines so that incoming payloads drive automations.
POST https://your-instance.elementum.io/webhook/...Content-Type: application/jsonBody:
{"orderId": "12345", "status": "shipped", "customerId": "C-001"}The automation can parse this payload and use the values to create a record, update a record, or call another API.Quick Trigger Reference
- Record — Approval Process Status Updated, Attachment is Added, Comment Added, Agent Conversation Ended, Record is Created, Record is Updated, Survey, Time-Based
- Workflow Start — Data Mine, Email Received, On-Demand Trigger, Webhook Trigger
Choose the Right Trigger
- Record vs. Workflow Start
- Single vs. Multiple Triggers
Use Record triggers when:
- The automation responds to something that happens on or to a specific record
- You need access to the record’s field values inside the automation
- The event is user-initiated or time-relative to a record’s data
- The automation is initiated externally (inbound email, webhook, data condition)
- The workflow doesn’t have a single originating record at the point it fires
- You need an on-demand entry point callable by users or other automations
Configuration Best Practices
- Be specific with conditions — Use “Where” conditions to filter triggers precisely, avoiding unnecessary automation executions.
- Consider performance impact — Avoid overly broad triggers that fire frequently without adding value.
- Plan for scale — Design triggers that will work efficiently as your data volume grows.
- Test thoroughly — Verify triggers fire under expected conditions and don’t fire when they shouldn’t.
Troubleshooting Common Issues
Trigger Not Firing
Configuration Issues
Configuration Issues
Check:
- Automation is published (not in draft mode)
- Trigger conditions are correctly configured
- “Where” conditions are not too restrictive
- Field names match exactly (case-sensitive)
Data Issues
Data Issues
Check:
- Test data meets all trigger conditions
- Required fields have values
- Data types match expected formats
- User permissions allow trigger execution
Timing Issues
Timing Issues
Check:
- Scheduled triggers have correct time zones
- Time-based conditions use appropriate date formats
- System maintenance windows don’t conflict
Unexpected Trigger Behavior
Too Many Executions
Too Many Executions
Solutions:
- Add more specific “Where” conditions
- Use “Changed Fields” to limit update triggers
- Consider consolidating similar triggers
- Implement rate limiting where appropriate
Missing Executions
Missing Executions
Solutions:
- Verify all conditions are necessary
- Check for conflicting conditions
- Test with simplified trigger configuration
- Review automation execution history
Ready to build automations with these triggers? Visit the Automation System guide for complete workflow examples and the Actions Reference for available actions.
- Conversation Type: Filter by comment channel:
- Public Channel: Standard record comments
- Other conversation types as configured
- Changed Fields: Monitor fields that may change with comments
- Where conditions: Filter based on comment content, author, or record attributes
Variables Available:
- All field values from the record the comment was added to
Example Configuration:trigger.Message: Full comment contenttrigger.Author: User who posted the comment- Keyword Monitoring: React to specific keywords or mentions in comments
- Escalation Triggers: Automatically escalate when certain phrases are used
- Notification Routing: Alert specific team members based on comment content
- Documentation: Log important comments for audit trails
- Workflow Advancement: Move processes forward based on comment approvals
Example Automation: