<!-- BusyBot node reference — https://busybot.net/tools/formio-trigger/ -->

> Node: Form.io Trigger (`formio_trigger`) · Webhook trigger · v1
> Category: Utility · Credentials: Form.io API (`formIoApi`)
> Updated: 2026-08-16

# Form.io Trigger

> Triggers on Form.io form submission created or updated events

## Overview

Receives webhook notifications from Form.io when form submissions are created or updated. Outputs the submission payload including form field data, submission metadata, and ownership information. Supports selecting a specific project and form, filtering by submission event type (create or update), and optionally simplifying the output to return only form field data. Useful for automating data pipelines, approval workflows, CRM updates, and notifications triggered by form submissions.

**Category:** Utility  
**Tool Name:** `formio_trigger`  
**Version:** 1

**Appearance:** Icon: `lucide-ClipboardList` | Color: `#3071a9`

## Node Type

**Trigger** — webhook (receives incoming HTTP callbacks)

## Input / Output

| Direction | Port(s) |
|-----------|--------|
| Input | None (trigger node) |
| Output | `Output` |

## Credentials

This tool requires **Form.io API** credentials.
See the [Credentials Guide](https://busybot.net/credentials/form-io-api/) for setup instructions.

### Parameters

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Project | `string` | Yes | — | The ID of the Form.io project containing the form. Find this in your Form.io project settings. |
| Form | `string` | Yes | — | The ID of the Form.io form to listen for submissions on. Find this in your form settings. |
| Trigger Events | `multiOptions` | Yes | `[]` | Which form submission events to listen for. |
| | | | | Options: `create` (a new form submission is created), `update` (an existing form submission is updated) |
| Simplify | `boolean` | No | `true` | Whether to return only the form field data (simplified) instead of the full submission object including metadata. |

## Output Data

Each submission delivered by Form.io produces one output item. Three fields are always added:

- `_trigger` — always `formio_webhook`
- `_timestamp` — ISO 8601 timestamp of when the request arrived
- `_webhookEvent` — always `submission`

What else lands on the item depends on **Simplify**:

- **Simplify on (default)** — the submission's `data` object is copied onto the item, so each form field becomes a top-level property. A form with `firstName` and `email` fields yields `{{ $json.firstName }}` and `{{ $json.email }}`.
- **Simplify off** — the full submission object is copied onto the item: `data` (the form field values), `_id` (the submission ID), `form` (the form ID), `owner`, `access`, `metadata`, `created`, and `modified`. Field values are then read through `data`, e.g. `{{ $json.data.email }}`.

Deliveries that do not carry a submission are acknowledged without starting the workflow. File-type fields pass through as the storage URL Form.io recorded; they are not downloaded as binary data.

## Usage Examples

- Start a workflow when a new Form.io submission is created
- Trigger a notification when a form submission is updated
- Send form submission data to a CRM automatically
- Process Form.io form entries in a data pipeline

## Example Configuration

Fire on new submissions, returning just the form fields:

```json
{
  "type": "formio_trigger",
  "parameters": {
    "projectId": "5f8a1b2c3d4e5f6a7b8c9d0e",
    "formId": "6a1b2c3d4e5f6a7b8c9d0e1f",
    "events": ["create"],
    "simple": true
  }
}
```

Fire on both creates and updates, returning the full submission object:

```json
{
  "type": "formio_trigger",
  "parameters": {
    "projectId": "5f8a1b2c3d4e5f6a7b8c9d0e",
    "formId": "6a1b2c3d4e5f6a7b8c9d0e1f",
    "events": ["create", "update"],
    "simple": false
  }
}
```

### Trigger Behavior

- **Activation:** When the workflow is activated, a webhook endpoint is registered with the service.
- **Deactivation:** The webhook is automatically unregistered when the workflow is deactivated.
- **Payload:** The incoming webhook payload is parsed and output as workflow items.
- **Verification:** Supports signature verification where applicable.

## Tips

Form.io Trigger listens for webhook events from Form.io. Configure which project and form to watch, and select whether to listen for submission created, updated, or both events. Enable the Simplify option to receive only the form field data instead of the full submission object.