Workflows (Growth+)

Reusable recipes the agent — or you — can run on demand to automate multi-step actions.

A workflow is a named list of steps that Coffield.io runs for you in the background. Each run is logged so you can see exactly what happened.

What can a workflow do?

In v1, three step types are supported. Every one is safe by design — none of them can run shell commands, touch arbitrary URLs, or leave your tenant.

Step What it does Example use
log Records a message on the run's output trail. Mark a milestone, leave a note for review.
fire_webhook_event Fires a named event to every webhook endpoint you've registered that subscribes to it (or *). "Tell my Slack channel that a quote needs review."
delay Records a short pause (1–30 seconds). Space out follow-up events for human-friendly pacing.

More step types (notify a teammate, create a Kanban card, push to a CRM) are coming in future versions.

Plan availability

Plan Workflows Daily run cap
Starter 0
Growth 100
Pro 1,000
Custom Unlimited

If you try to run a workflow above your cap, you'll see a friendly "Daily workflow cap reached" message and the run is not started — no surprises on your bill, no half-finished side effects.

Finding the page

Sign in to your dashboard, then in the left menu under AI Agents you'll see two new items:

  • Workflows — the list of recipes available to your tenant. Each row has a Run now button.
  • Workflow Runs — every run ever started, with status (queued / running / succeeded / failed), step counts, and who triggered it.

Running a workflow manually

  1. Open AI Agents → Workflows.
  2. Find the recipe you want to run.
  3. Click Run now.
  4. Confirm the dialog.
  5. A toast appears: "Workflow run #N queued."
  6. Open AI Agents → Workflows Runs to watch its status update.

A run that finishes with status succeeded ran every step without error. A run that ends failed stopped on the first error (unless the recipe was authored to continue past errors).

Triggering a workflow from the REST API (Pro)

If you're on the Pro plan you can also trigger workflows programmatically. See the REST API chapter for full details and a list of endpoints. The short version:

curl -X POST \
  -H "Authorization: Bearer <your-PAT>" \
  -H "Content-Type: application/json" \
  -d '{"input":{"campaign":"Spring Promo"}}' \
  https://your-domain.com/api/v1/workflows/123/runs

A successful trigger returns HTTP 202 Accepted with the new run's ID. The run is processed in the background — poll GET /api/v1/workflow-runs/{id} to check status.

Triggering a workflow from an MCP client (Claude Desktop, n8n, Zapier, Make)

If you've connected an MCP client (see External Integrations & MCP tokens), every issued token that includes the Workflow server can also trigger workflows. The MCP server exposes these tools:

Tool What it does
list_workflows Lists your active and inactive workflow recipes.
trigger_workflow Queues a new run of an active workflow. Returns the run id.
list_workflow_runs Lists recent runs, optionally filtered by workflow or status.
get_workflow_run Fetches a single run with its step output and any error message.

Tier and rate-limit gates are identical to the REST API: triggering requires Growth or above and counts against your tenant's daily cap. Cross-tenant workflow_id or run_id values are silently rejected with a not-found error — your token can only see its own tenant's data.

Pairing with webhooks

The most powerful step is fire_webhook_event. A typical pattern:

  1. Register a webhook endpoint under AI Agents → Webhook Endpoints subscribed to a custom event like campaign.kickoff.
  2. Author a workflow recipe that fires campaign.kickoff with the payload your downstream tool expects.
  3. Trigger the workflow manually or from the REST API.

Every webhook delivery is signed (HMAC-SHA256) and logged under AI Agents → Webhook Deliveries so you can verify exactly what was sent.

How a recipe is authored

In v1, recipes are stored as JSON inside the workflow row. The dashboard shows the recipe but does not yet include a visual editor. Customers on Growth and Pro plans should ask their account manager to author recipes for them; future releases will add a drag-and-drop editor.

A recipe looks like this:

{
  "steps": [
    { "type": "log", "message": "Kicking off Spring Promo" },
    { "type": "delay", "seconds": 2 },
    {
      "type": "fire_webhook_event",
      "event": "campaign.kickoff",
      "payload": { "campaign": "spring-2026", "owner": "marketing" }
    }
  ]
}

Recipes are capped at 50 steps to keep runs short and predictable.

Continuing past errors

By default a workflow stops on the first failed step. Add "continue_on_error": true at the root of the recipe to keep going past failures:

{
  "continue_on_error": true,
  "steps": [ ... ]
}

This is useful when each step is independent (for example, firing the same event to several different downstream tools).

Safety & limits

  • Recipes can only contain the three step types listed above. Anything else is rejected with step_type_not_allowed.
  • The total step count per recipe is capped at 50.
  • Daily run counts are enforced per tenant — see plan table above.
  • Every run row is permanent and tied to your tenant; no run can read or write another tenant's data.
  • Webhook deliveries triggered by fire_webhook_event go through the same SSRF/private-network protection as ordinary webhook deliveries — only HTTPS endpoints on public hostnames are allowed.

Troubleshooting

Symptom What to check
Run now button is missing You need Manage agents permission and the workflow must be Active.
Run stuck on queued The background queue worker isn't running. Email support@coffield.io.
Run ends failed with recipe_too_large Recipe has more than 50 steps; trim it.
Run ends failed with step_type_not_allowed Recipe references an unknown step type — only log, fire_webhook_event, delay are allowed.
fire_webhook_event reports matched_endpoints: 0 You haven't registered a webhook endpoint subscribed to that event. Go to Webhook Endpoints and add one.
"Daily workflow cap reached" message You've already used your tier's daily allotment — wait 24 hours or upgrade.

If you need a workflow authored, a recipe extended, or a higher daily cap, email support@coffield.io with your tenant name and what you're trying to automate.

Last updated
Need more help? Email support@coffield.io