Capabilities
Automation: schedules & webhook triggers
A workflow doesn’t need a human to press Run. There are three triggers, and the trigger decides where the input comes from: manual (what you type), scheduled (a fixed JSON you set once), or webhook (the POST body).
Schedules (cron)
POST /v1/schedules create a schedule
GET /v1/schedules list
PATCH /v1/schedules/{id} pause / update
DELETE /v1/schedules/{id} delete{
"workflowId": "...",
"cron": "0 9 * * *",
"inputData": { "prompt": "daily report" }
}Cron is minute hour day month weekday, in UTC. 0 9 * * * is 09:00 UTC daily; */15 * * * * is every fifteen minutes; 0 9 * * 1-5 is 09:00 UTC on weekdays.
The workflow must be ACTIVE. If it is not, the scheduler disables the schedule rather than retrying forever.
Webhook triggers
POST /v1/triggers create a trigger (returns a hook URL)
GET /v1/triggers list
POST /v1/triggers/{id}/rotate rotate the token
DELETE /v1/triggers/{id} deleteCreating a trigger gives you a private URL. Any system that can send a web request — Stripe, GitHub, Shopify, Zapier, your own code — POSTs to it and the workflow runs immediately, using their JSON body as its input.
curl -X POST "https://app.agent-mesh.org/v1/hooks/<token>" \
-H "Content-Type: application/json" \
-d '{"prompt": "run it"}'
# -> 202 {"executionId": "...", "status": "queued"}The hook URL is a secret — anyone holding it can trigger your workflow. Treat it like a password, and rotate it if it leaks.