Skip to main content

What are Triggers?

Triggers automatically execute your Projects in response to events, without manual intervention. Instead of clicking “Execute” every time, set up Triggers to run your Projects when specific conditions are met.

Types of Triggers

Webhook Triggers

Execute when an HTTP request hits your webhook endpoint. Use cases:
  • Payment notifications (Stripe, PayPal)
  • GitHub events (push, PR, issue)
  • Form submissions
  • Third-party service events
Setup:
  1. Go to Project → Triggers
  2. Click Add Trigger → Webhook
  3. Configure:
    • Path: /webhook/payment-received
    • Authentication: API key or HMAC signature
    • Payload transformation (if needed)
  4. Save → Get webhook URL
  5. Register URL with external service
Example URL:
Incoming webhook:
Your Project receives:

Schedule Triggers

Execute at specific times or intervals. Use cases:
  • Daily reports
  • Periodic data sync
  • Cleanup jobs
  • Monitoring checks
Setup:
  1. Go to Project → Triggers
  2. Click Add Trigger → Schedule
  3. Configure schedule:
    • Cron expression: 0 6 * * * (daily at 6 AM)
    • Interval: Every 15 minutes
    • One-time: Specific date/time
  4. Set timezone
  5. Define payload (static or dynamic)
  6. Save
Schedule types: Cron expression format:
Common patterns:
  • 0 * * * * — Every hour
  • */15 * * * * — Every 15 minutes
  • 0 9 * * 1-5 — Weekdays at 9 AM
  • 0 0 1 * * — First of each month

Manual Triggers

Execute via Execution button. Use cases:
  • On-demand processing
  • Admin actions
  • Testing
  • User-initiated workflows

Viewing Triggers

  1. Go to Project → Executions
  2. See list of all triggers:
    • Type (webhook, schedule)

Editing Triggers

  1. Select trigger from list
  2. Click Edit
  3. Modify configuration
  4. Save → Changes take effect immediately
Note: Schedule changes apply to future executions, not currently running ones.

Deleting Triggers

Permanently remove a trigger:
  1. Select trigger
  2. Click Delete
  3. Confirm
  4. Trigger is removed
Warning: Cannot be undone. Webhook URLs will stop working.

Trigger configuration

Payload

Define what data the triggered execution receives. Static payload:
Dynamic payload from webhook:
Using variables:

Timeout

Set maximum execution time:
  • Default: 60 seconds
  • Max: 15 minutes (Pro), 60 minutes (Enterprise)
If timeout reached:
  • Execution is canceled
  • Error logged
  • Retry policy applies (if configured)

Webhook authentication

Secure your webhook endpoints.

API Key

Require API key in header:
Configuration:
  1. Enable API key authentication
  2. Provide key to webhook sender
  3. Triform validates before execution

Common patterns

Pattern 1: Webhook → Process → Notify

Example: Payment received → Update database → Email customer

Pattern 2: Schedule → Fetch → Process → Store

Example: Daily report generation

Pattern 3: Event chain

Example: Onboarding flow: Create account → Send welcome → Provision services

Pattern 4: Error handling

Example: Automated incident response

Troubleshooting

Problem: Webhook not triggering
Solution: Check URL is correct, authentication is valid, check logs for rejected requests
Problem: Schedule not running
Solution: Verify cron expression, check timezone, ensure trigger is not paused
Problem: Trigger fires but execution fails
Solution: Check payload format, verify required fields, review execution logs

Next steps

Continue exploring the documentation to learn about Executions and webhook configuration.