- Get started
- Build
- Delay
- Connector event
- HTTP Webhook
- Deploy and run
- Examples
- Reference
HTTP Webhook
Set up an HTTP Webhook, as a trigger or a wait step, with its fields and the request data it outputs.
HTTP Webhook connects a workflow to any app that can send a webhook, a request that the app sends to a web address when something happens. The node gives you that address. You paste it into the other app, and each request it sends reaches the workflow.
The node appears in two places, and works the same way in both:
- As a trigger, in the Change trigger list: each request starts a new run.
- As a wait step, in Add node > Wait for event: the run pauses at the node until a request arrives, then continues.
Set it up
- Add the node, as a trigger or as a wait step.
- In Connection, select an HTTP Webhook connection, or create one. Connection describes its fields.
- Copy the webhook URL from the box at the top of the panel, and paste it into the webhook settings of the other app.
- Optionally, add a Filter, so only matching requests count:
- Select Add condition or Add group.
- Choose All (AND) or Any (OR).
- Deploy the workflow. Requests reach it only after it's deployed.
Fields
| Field | Required | Description |
|---|---|---|
| Webhook URL | — | The address to paste into the other app. Each node has its own. |
| Connection | Yes | The HTTP Webhook connection that receives the requests. Refresh Schema reloads the shape of the incoming data. |
| Filter | No | Conditions that a request must match. Requests that don't match are ignored. |
| Input arguments | No | Trigger only. Values that other nodes read under $vars.<node ID>.output. |
Connection
An HTTP Webhook connection receives the requests of one app. The webhook URL is created with the connection, so the node shows it only after the connection exists. Create a connection describes how to create a connection from the node. On the Connect to HTTP Webhook page, fill in these fields:
| Field | What to enter |
|---|---|
| Folder in which connection is stored | The folder that holds the connection. |
| What application is this webhook for? | A name for the app that sends the requests, such as Stripe-prod. It also becomes the connection identifier. |
| Authentication Type | None, or Header Based Authentication to accept only requests that carry a header and value that you choose. Set the same header in the other app. |
| Challenge location | No challenge, or where the app sends its verification challenge: Header, Body, or Query parameter. |
With Header Based Authentication, a request without the matching header is rejected with the HTTP status 401.
Some apps, such as Slack, WhatsApp, and Stripe, check the webhook URL before they send events. They send a challenge, a value that the URL must return. If the app does this, select where the challenge arrives in Challenge location, then fill in the fields that appear, as the webhook documentation of the app describes. WhatsApp, for example, sends the challenge in the hub.challenge query parameter, and expects it back as plain text.
Output
The node's output is the request that the other app sent. Until the first request arrives, the node doesn't know its shape, so send one test request before you reference its fields in later nodes.
Next steps
- Triggers: the other ways to start a workflow.
- Delay: pause a run for a set time instead.
- Deploy a workflow: make the webhook live.
- Community: ask questions and share workflows with other builders on the UiPath Forum.