A plain webhook trigger acknowledges the caller and runs in the background - that is the shape the first-workflow guide builds. Sometimes you want the opposite: the caller sends a request and waits for a real answer - a lookup result, a classification, a computed value. The Webhook Response node turns a workflow into exactly that.
The shape of the workflow
Start from a Webhook trigger, do whatever work the request needs - an HTTP call, a model prompt, a Postgres query - and end the path with a Webhook Response node. Configure the response with a status code and a Handlebars-templated body:
{
"customer": "{{webhook.email}}",
"verdict": "{{classification.text}}"
}How the timing works
When a request hits the workflow's URL, the route holds the connection open and polls for a response from the run for up to ten seconds. Two things can happen:
- The run reaches the Webhook Response node in time, and the caller gets your templated body and status code, synchronously.
- The run takes longer, and the caller gets a 202 with the execution id instead - the run keeps going in the background, and the caller can treat it as accepted-for-processing.
That timeout is the design constraint to build around: keep the path between trigger and response lean. Slow side effects like sending emails or writing to third-party systems belong after the response node, where they no longer hold up the caller.
Try it
curl -s -X POST 'https://your-pipory-host/api/webhooks/wf/WORKFLOW_ID' \
-H 'x-webhook-secret: YOUR_SECRET' \
-H 'Content-Type: application/json' \
-d '{"email": "ada@example.com", "text": "Where is my invoice?"}'The response body is whatever your template rendered, with the values from this exact run.
What this unlocks
- A model-backed classify endpoint your other tools can call without knowing anything about Pipory.
- Form handlers that return a personalized confirmation.
- Lightweight internal APIs where the logic is a visual graph you can rewire without a deploy.
The work between trigger and response can be any node in the reference - and the endpoint costs nothing per call.
Let your automations run the busywork
The canvas, the execution engine, and every node - no per-execution meter, free while in early access.
Frequently asked questions
Written by
Pipory TeamProduct + engineering
Notes from the team building Pipory - workflow design, automation economics, and putting AI to work inside automations.
View all articles by Pipory