Skip to main content

Run a workflow when a webhook receives data

Run chosen automations each time a webhook source in your workflow receives data from another system.

Written by Jonatan Gomes

The "On webhook event" trigger runs selected automations each time a webhook source in your workflow receives a request from an external system. Use it to process incoming data from a CRM, payment tool, or form tool that can send a POST request.

This is a smart trigger, so you need a plan that includes smart triggers.

Before you start

Your workflow needs a webhook source automation. For instructions on setting up its DISPATCH URL, "Authorization: Bearer" API key header, and JSON "values" body, see the article Use a webhook as a source.

Keep the dispatch URL and API key secret. Anyone with both can send data into your workflow.

Open the trigger settings

In the Sheetgo web app at app.sheetgo.com, open your workflow. Select the Triggers icon in the workflow sidebar, or select "Triggers" at the top of the Automations panel, next to "Run all".

You can also open the same settings from your workspace. Select the trigger summary on the workflow's card, such as "Manual trigger". The settings open in a dialog.

Set up the webhook trigger

  1. Turn on the switch at the top of the Triggers panel ("Auto-Run" or "Run automatically", depending on where you open it). You can't edit the fields while the switch is off.

  2. Select the "+" button ("New trigger"), or use an existing trigger.

  3. Under NAME, give the trigger a name that describes the incoming data, such as "New CRM deals". You can rename it at any time.

  4. Under TRIGGER OPTIONS, change the default "Based on a schedule" to "On webhook event". The description reads: "Updates are triggered when a webhook source in this workflow receives a request."

  5. In "Webhook source", keep "Any webhook source". The helper text shows how many webhook sources the workflow has and confirms that a request to any of them runs the workflow.

  6. Under AUTOMATIONS, choose the automations that should run when data arrives.

  7. Review the "Consumption" estimate, which shows estimated usage per webhook event.

  8. Select "Save changes" with the switch on.

The trigger now runs the selected automations whenever any webhook source in the workflow receives a request.

An On webhook event trigger named New CRM deals that runs one automation each time any webhook source in the workflow receives a request

Choose which automations run

If your workflow has several triggers, assign only the automations that handle incoming webhook data to this trigger. The rest of the workflow can keep its own schedule.

For example, in a "Sales reporting" workflow, you could name the webhook trigger "New CRM deals" and select the automation that receives CRM deals into the "CRM deals" spreadsheet. If another automation updates your pipeline spreadsheet from those deals, select that automation too.

Credit usage and failure notifications

The workflow consumes automation credits each time a webhook source receives a request. Total usage depends on how often the external system sends data; the panel's estimate is per webhook event.

To configure notifications for automatic run failures, select the bell icon at the top of the Triggers panel. It opens "Failure notification settings" for the workflow's automatic runs.

If you can't finish setup

The workflow has no webhook source

The trigger displays:

"This workflow does not have a webhook source connection. Add one so the trigger has something to listen to."

Add a webhook source automation to the workflow, then return to the trigger settings. See Use a webhook as a source for the source setup instructions.

The fields or save button are disabled

When "Auto-Run" or "Run automatically" is off, you can't edit the trigger fields. Turn the switch on to continue.

"Save changes" stays disabled until the trigger is complete. Complete the setup steps above before saving.

A trigger saved with the switch off is dormant and won't run automatically.

Did this answer your question?