Build trigger-action automation chains with conditional logic, scheduled execution, webhook integrations, and cross-plugin orchestration. A self-hosted Make (Integromat) or Zapier alternative — define workflows as JSON, trigger them from events or on a schedule, and connect any nSelf plugin or external webhook.
Set your license key with nself license set nself_pro_... before installing.
nself license set nself_pro_...
nself plugin install workflows
nself build
nself start{
"name": "new-user-onboarding",
"trigger": {
"type": "event",
"topic": "user.created"
},
"steps": [
{
"name": "send-welcome",
"action": "http",
"url": "http://127.0.0.1:3822/transactional-email/send",
"method": "POST",
"body": {
"to": "{{event.email}}",
"template": "welcome"
}
},
{
"name": "notify-slack",
"action": "http",
"url": "https://hooks.slack.com/services/...",
"method": "POST",
"condition": "{{event.plan == 'pro'}}",
"body": {"text": "New pro signup: {{event.email}}"}
}
]
}curl -X POST http://127.0.0.1:3733/workflows \
-H "Content-Type: application/json" \
-d @workflow.json| Endpoint | Method | Description |
|---|---|---|
/workflows | GET, POST | List or create workflows |
/workflows/:id | GET, PUT, DELETE | Read, update, or delete a workflow |
/workflows/:id/trigger | POST | Manually trigger a workflow with payload |
/workflows/:id/runs | GET | Execution history for a workflow |
/webhooks/:token | POST | Inbound webhook trigger endpoint |
/health | GET | Plugin health check |
nself plugin remove workflowsPort: 3733 | Category: Automation | Language: Go | Last Updated: April 2026 | Plugin Version 1.1.1