n8n Webhook
Automation is changing how we set up workflows, link tools, and make chores easier. The Webhook node is one of the best things about n8n, an open-source tool for automating workflows. Webhooks let apps talk to each other in real time, which means that data can move automatically without having to query all the time.
In this article, we’ll talk about what webhooks are, how they function in n8n, when to use them, and the best ways to make strong automations that use webhooks.
Before we start, if you are looking for help with a n8n project, we are taking on customers. Head over to our n8n Automation Engineer page.
What is a Webhook?
A webhook is a way for one application to send real-time data to another application whenever an event occurs. Instead of repeatedly checking (polling) for updates, a webhook “pushes” the data as soon as it’s available.
For example:
A payment gateway (Stripe, PayPal) can notify your workflow immediately when a transaction happens.
A form submission (Typeform, Google Forms, custom forms) can instantly send responses to n8n.
GitHub can notify you when a new pull request or commit is made.
How Webhooks Work in n8n
In n8n, the Webhook node serves as an entry point to a workflow. It listens for HTTP requests (GET, POST, PUT, DELETE, etc.) and triggers the workflow whenever a request is received.
Basic Flow:
Create a workflow in n8n.
Add a Webhook node.
Configure the HTTP method (usually
POST
).Copy the webhook URL generated by n8n.
Paste this URL into the external service (like Stripe, GitHub, or a custom script).
Whenever the external service sends data, the workflow runs automatically.
Let’s look into the webhook node indepth.
we start by getting the webhook node in n8n.
Webhook Node Configuration

This creates the n8n webhook node on the canvas.

There are two execution modes in n8n:
Test URL → Used while testing workflows. Runs instantly even if the workflow is not active.
Production URL → Used when the workflow is active. Designed for stable, long-term usage.
we would be using the TestURL in this article.
Also the Path: we can set any custom path we like.

We can select any HTTP method from the list of HTTP methods in the dropdown.
The two most popular are GET and POST.
Let’s select the GET

We can set authentication from the Authentication section.
But in this article we would be using None for no authentication.

we can choose the response type.
Lets start with the “Immediately” response

Lets select the Response Code as our response.

The select status code 200.

Next, we copy the test url from the “Webhook URLS”, and we paste in a browser.
Ensure you click on “Listen for event” in the webhook to allow it to listen for an event, otherwise, it would not work.
The message displayed here shows that it is working

we can see the test ouput in the webhook.
we can select schema, table or json to view.

This is the test output in schema view.
I do prefer this becuse i get to see all the params, query e.t cmore clearly i guess.

On the url we, we can add a query param.
In this example we use ?age=50

Back to our webhook we can see the “age”= 50 in the query.

Previously, we made use of a browser’s url to make request to our webhook.
We can make request to the webhook via a terminal as show in this picture below.

We can see from the webhook query that the Name is Ryan, indicating that the request from the terminal was succesfull.

Ok, that was a lot of small texts and pictures. we have looked into the webhook and seen some of its components and features.
Next, Instead of returning the generic text {“message”:”Workflow was started”}, let us see how we can return custom responses.
we do that by adding another node called the “Respond to webhook node”
Respond to webhook node.
Click on the plus icon in the webhook node and select respond to webhook or search for it to add it.

In this example, we select “All incoming Items” from the Respond with drop down.

Then we make the request from the url again. we pass “name=Ryan” as the query.
Note: Ensure you excute the nodes before making the url request from the browser.
Here we see a different response that what we have seen before.

Next, let’s chnage the Respond woth to JSON.
and set the response body to “Hello feedback”.

Next we make a request to same url and we should get same response as displayed in the image below.

So far, we have covered webhook node and Respond to webhook node.
Next, let’s look at making Post request with webhooks.
Form Submissions with Dummy JSON API
We’ll use JSONPlaceholder – a free fake REST API for testing.
Steps:
Create a new n8n workflow.
Add a Webhook node with:
Method:
POST
Path:
/form-data
Copy the webhook URL.
Simulate a form submission with
curl
:
In n8n, connect a HTTP Request node to forward the data to JSONPlaceholder:
URL:
https://jsonplaceholder.typicode.com/posts
Method:
POST
Body:
{{$json}}
This mimics sending form data into a dummy API.

This is the Http request node.
In n8n, the HTTP Request node is one of the most versatile nodes. It’s used to send API calls to external services or even back to your own systems. Think of it as the bridge that lets your workflow talk to the outside world over HTTP.

Full flow

Making the request via terminal with “curl”.
Note: I am using a windows terminal.

We can see the response from our post request was succesfull.

Final Thoughts
The Webhook node in n8n is a powerful tool for connecting your workflows to the outside world. Whether you’re capturing payment events, handling form submissions, or automating GitHub notifications, webhooks allow you to create instant, real-time automations.
By combining webhooks with other n8n nodes (database, email, Slack, etc.), you can design end-to-end workflows that run seamlessly without human intervention.
If you’re just starting, experiment with a simple webhook and gradually expand into more complex automation scenarios. With best practices in place, webhooks can become the backbone of your automation strategy
Thank you for reading this article. Make sure to check out our other n8n content on the website. If you need any help with n8n workflows we are taking on customers so reach out!