If you work with automation or you are exploring how to orchestrate tasks across different services, n8n is one of the most flexible tools you can start with. It is built around the idea of connecting systems, transforming data, triggering events, and even running agent style logic that reacts intelligently to inputs. You get a visual editor that represents each step clearly, but you still have full access to expressions, custom code, and advanced control over how your data flows.
Because of this, n8n is useful for both simple workflows and more complex automation patterns. You can build integrations, background jobs, data pipelines, and small autonomous agents that make decisions without your involvement.
In this guide we will create a small but practical workflow. It collects user input through a form, checks a submitted date, and sends a Discord message when the condition is met. The goal is to show exactly how each part works so you can understand the fundamentals before moving on to more advanced automations.
Installing n8n locally
If you are completely new, this part will help you get n8n running from scratch.
Step one. Check that Node is installed
Open your terminal and run:
node -v
If you see a version number, you are ready.
If not, install Node from the official Node website, then return here.
Step two. Install n8n
Once Node is ready, run:
npm install n8n -g
This installs n8n globally so that you can run the n8n command from anywhere.
Step three. Start the n8n editor
Now start n8n with:
n8n start
Your terminal will show a URL, usually:
http://localhost:5678
Open that in your browser. You will see the n8n editor with start from scratch button
Once you click that, you can press the below to create a node
Step one. Create the Form Trigger node
Click the plus button and search for Form Trigger.
Add it to your canvas.
This node will create a small form that anyone can fill out. The submitted values will appear as workflow data.
Inside the node, go to the Fields section and add two fields.
Email Address
Preferred install date
After saving, n8n will show a form URL.
When someone submits that form, n8n will output data in this structure.
[
{
"Email Address": "lordwiz@gmail.com",
"Preferred install date": "2025 11 20",
"submittedAt": "2025 11 17T14:17:29.659 05:00",
"formMode": "production"
}
]
Each submission appears as one item in an array. You will reference these values using expressions.
Step two. Add an IF node to check the preferred date
Drag an IF node to the canvas and connect it to the Form Trigger.
Open the IF node and switch to the Expression editor for both sides of the comparison.
In the left side field, place this expression:
{{ $json["Preferred install date"].toDateTime() }}
In the right side field, use:
{{ $now.plus(7,"days") }}
Set the comparison to Before or equal.
This means the IF node will check whether the preferred installation date is within seven days from now. The IF node will output through its true branch or its false branch depending on that condition.
Step three. Attach a Nothing node to the false branch
Add a Nothing node and connect it to the false branch of the IF node.
This branch is used when the date is not within seven days. The Nothing node finishes the branch without doing anything else. It is simply there to keep the workflow valid.
Step four. Add a Discord node for the true branch
Add a Discord node and connect it to the true branch of the IF node.
Inside the node, create a new credential by entering your Discord bot token.
Choose Send Message as the operation.
Enter the channel ID of the channel where messages should appear.
In the message text, you can reference the form fields with simple expressions. For example:
A new installation request was submitted by {{ $json["Email Address"] }} for the date {{ $json["Preferred install date"] }}.
Save the node.
Our final workflow looks like this.
When the workflow runs, if a user submits a date that falls within seven days of today, the Discord node will post the message. If not, the workflow simply stops at the Nothing node.
Final thoughts
This workflow might look small, but it covers several important ideas in n8n.
You learned how data flows from node to node, how to work with expressions, how branching works through the IF node, and how to connect an external service.
If you’ve ever struggled with repetitive tasks, obscure commands, or debugging headaches, this platform is here to make your life easier. It’s free, open-source, and built with developers in mind.
👉 Explore the tools: FreeDevTools
👉 Star the repo: freedevtools














Top comments (0)