Triggers & Automation
A workflow becomes an automation when it runs without you clicking Run. That's what triggers do.
Add a trigger
In the Orchestrator, every workflow starts with a Trigger node. Click it to configure. The trigger seeds the run with its input — so set a Goal on schedule/event triggers, since there's no live user typing a prompt.
Schedule (cron)
Run on a repeating schedule. Enter a cron expression or pick a preset:
text0 9 * * * # every day at 9:00 0 9 * * 1-5 # weekdays at 9:00 */15 * * * * # every 15 minutes
Sub-daily schedules need a paid plan in production.
Webhook
Click Create webhook URL to get a public, CORS-enabled URL. POST JSON to it and the body becomes the run input — no API key needed (the slug is the secret):
bashcurl -X POST https://bothive.cloud/api/workflows/webhook/<slug> \ -H "Content-Type: application/json" \ -d '{ "input": "New signup: ada@example.com" }'
Run by ID (API key)
From your own backend, run a workflow by ID with your key:
bashcurl -X POST https://bothive.cloud/api/workflows/<id>/run \ -H "Authorization: Bearer bh_your_api_key" \ -H "Content-Type: application/json" \ -d '{ "input": "Summarize today's signups" }'
Both return JSON with the final node's output under output.
Event triggers
Connect an app, then start a workflow from a Slack message, a GitHub event, an inbound email, a form submit, or a database change. The event payload flows in as the run input.
Next steps
- Build & schedule workflows — the full builder.
- Connect a workflow to your app — consume the result.
Use the test pane to iterate quickly. Every change you make is live — no need to save first.
API keys are shown only once. Store them securely and never commit them to version control.
Test your bot with edge cases before deployment. Try empty inputs, long messages, and special characters.
Chain multiple specialized bots in a workflow for better results than one general-purpose bot.