Triggers: Schedule and Webhook Automation
Run Forjinn flows automatically on a recurring cron schedule or in response to an incoming webhook event from any external service or platform.
Triggers are available on the full edition only and are disabled in the open source build. See the introduction for a comparison of editions.
Triggers let your flows run on their own without someone opening a chat. A scheduled trigger fires a flow at a fixed time or interval — useful for daily reports, data sync jobs, or regular maintenance tasks. A webhook trigger fires a flow the moment an external system sends an HTTP POST request to a unique URL Forjinn generates for you. Either way, the results are stored and accessible from the Triggers dashboard.
Trigger types
Cron (scheduled)
Runs your flow on a recurring schedule using standard cron syntax. Fires at the exact time you specify, regardless of user activity.
Webhook
Generates a unique URL. Any system that POSTs to that URL immediately fires the connected flow, passing the request body as input.
Create a trigger
In the left sidebar, click Triggers, then click Add Trigger.
Choose the chatflow or agent flow you want to automate from the Chatflow dropdown.
Select either Cron or Webhook.
For cron triggers: Enter a cron expression in the Schedule field.
| Expression | Meaning |
|---|---|
0 9 * * 1-5 | Every weekday at 9:00 AM |
*/30 * * * * | Every 30 minutes |
0 0 * * * | Once daily at midnight |
0 8 1 * * | At 8:00 AM on the first of every month |
For webhook triggers: No extra configuration is needed. Forjinn generates a unique webhook URL for you after you save.
Give the trigger a descriptive name so you can identify it in the dashboard, then click Save.
Webhook endpoint
When you save a webhook trigger, Forjinn creates a dedicated endpoint tied to the node that receives the incoming data. Send a POST request to:
POST /api/v1/triggers/webhook/:nodeIdReplace :nodeId with the node ID shown in the trigger detail view.
Example request:
curl -X POST https://your-forjinn-instance.com/api/v1/triggers/webhook/abc123 \
-H "Content-Type: application/json" \
-d '{"customer_id": "cust_456", "event": "payment_succeeded"}'The request body is passed to the connected flow as input. Your flow can reference the incoming data in variable nodes or within custom tool logic.
Webhook URLs are not authenticated by default. Anyone who knows the URL can fire the trigger. If you need to restrict access, add a validation step at the start of your flow that checks a secret token in the request headers.
Trigger history and results
Every trigger execution is logged. To review past runs:
- Open Triggers in the sidebar.
- Click a trigger name to open its detail view.
- Select the Results tab to see a timestamped list of executions, each with its output and status.
Use the Stats view at the top of the Triggers page for an overview of run counts, success rates, and recent activity across all triggers in your workspace.
If a trigger run failed, open the result entry to see the error output. Common causes are flow configuration errors, missing credentials, or the connected flow having been deleted.
Managing triggers
From the Triggers dashboard you can:
- Pause a trigger — stops it from firing without deleting it
- Edit — update the schedule, flow, or name at any time
- Delete — permanently removes the trigger and its history
To see all triggers associated with a specific flow, navigate to that flow's settings.
Tools: Extend Your Agents With External Actions
Give your Forjinn agents the ability to search the web, run code, call external APIs, and execute custom JavaScript or Python functions you define.
Marketplace: Browse and Share Flow Templates
Find pre-built chatflow and agent flow templates to import into your workspace, or share your own flows as reusable templates with your team.