Execution
triggers
Initiate workflows based on business or system events
triggers
Event-based triggers for initiating workflows, functions, and automations in response to business events, schedules, or system conditions.
Overview
The triggers primitive provides a declarative way to define when workflows should execute, supporting time-based schedules, event patterns, webhooks, and custom conditions.
Parent Primitive: webhooks - Webhook management
SDK Object Mapping
This primitive maps to the on and every SDK objects:
import { on, every, triggers } from 'sdk.do'
// ON - Event triggers (on is one of 8 core SDK objects)
on('order.created', async ({ order }) => {
await sendConfirmation(order)
await updateInventory(order)
})
// EVERY - Schedule triggers (every is one of 8 core SDK objects)
every('0 9 * * *', async () => {
await generateDailyReport()
})
every('5 minutes', async () => {
await checkSystemHealth()
})
// Webhook triggers
triggers.webhook('/stripe/webhook', async (payload) => {
await processPayment(payload)
})
// Conditional triggers
triggers.when(
() => temperature > 100,
async () => {
await send('alert.temperature', { value: temperature })
}
)Quick Example
import { triggers } from 'sdk.do'
// Schedule trigger
triggers.schedule('daily-report', '0 9 * * *', async () => {
await generateDailyReport()
})
// Event trigger
triggers.on('order.created', async ({ order }) => {
await sendConfirmation(order)
await updateInventory(order)
})
// Webhook trigger
triggers.webhook('/stripe/webhook', async (payload) => {
await processPayment(payload)
})
// Conditional trigger
triggers.when(
() => temperature > 100,
async () => {
await sendAlert()
}
)Core Capabilities
- Schedule Triggers - Cron-based time scheduling
- Event Triggers - React to business or system events
- Webhook Triggers - HTTP callback endpoints
- Conditional Triggers - Execute based on custom conditions
- Composable Logic - Combine multiple trigger conditions
Access Methods
SDK
TypeScript/JavaScript library for trigger management
await triggers.schedule('daily-report', '0 9 * * *', async () => generateReport())CLI
Command-line tool for trigger operations
do trigger schedule daily-report "0 9 * * *" --handler generateReportAPI
REST/RPC endpoints for trigger management
curl -X POST https://api.do/v1/triggers -d '{"type":"schedule","cron":"0 9 * * *"}'MCP
Model Context Protocol for AI-driven trigger creation
Create a daily trigger at 9 AM to generate a reportRelated Primitives
Parent Primitive
- webhooks - Webhook management