> ## Documentation Index
> Fetch the complete documentation index at: https://docs.suji.fr/llms.txt
> Use this file to discover all available pages before exploring further.

# n8n

> Self-hosted workflow automation. Install, create your owner account, build your first workflow, and wire up webhooks.

[n8n](https://n8n.io) is an open-source workflow automation tool — a self-hosted Zapier alternative with hundreds of integrations. You build workflows visually by chaining nodes, and trigger them on a schedule, a webhook, or manually.

This page covers running n8n on Suji end-to-end. n8n is maintained upstream; Suji provides the [marketplace packaging](https://github.com/suji-hq/suji-templates/tree/main/n8n).

***

## Before you install

Nothing to prepare — no API keys or tokens. You'll set up your admin account in the browser after install, and add credentials for individual integrations from inside n8n as you build workflows.

<Note>
  n8n 2.x **dropped HTTP basic-auth** in favour of an interactive owner-account setup on first run. There is no generated password and no credentials file — the first person to open the URL creates the owner account, so set yours up immediately after install (see below).
</Note>

***

## Install

Dashboard → **Apps** → **n8n** → **Install**:

| Field     | Required | Notes                                                                     |
| --------- | -------- | ------------------------------------------------------------------------- |
| VM        | yes      | Pick a VM with free capacity, or create one.                              |
| Subdomain | no       | Suggestion is `n8n`. The app is reached at `https://<subdomain>.suji.fr`. |
| Timezone  | no       | Defaults to UTC. Sets `GENERIC_TIMEZONE` — used for schedule/cron nodes.  |

There are no secrets to fill in.

n8n is lightweight (it needs only \~512 MB), so **Small** is plenty for most setups. See [Recommended size](#recommended-size).

Click **Deploy**. The install reaches `running` in \~1 minute. You'll get a public URL like `https://n8n-<random>.suji.fr` — that's the n8n editor, served over HTTPS through the tunnel.

***

## First connection — create your owner account

1. Open the install URL (`https://n8n-<random>.suji.fr`).
2. n8n shows a **Set up owner account** screen on first run.
3. Enter your email, name, and a password. This becomes your admin login.
4. You're taken straight into the workflow editor.

<Warning>
  The URL is public the moment the install is `running`. Until you complete the owner setup, **anyone who reaches it can claim the owner account.** Do the setup right after deploy — don't leave a fresh install unclaimed.
</Warning>

On later visits the same URL shows a **Sign in** screen instead. Forgot the password? Reset it from a shell — see Troubleshooting.

***

## Build your first workflow

Inside the editor:

1. Click **Add first step** and pick a trigger (Manual, Schedule, or Webhook).
2. Add action nodes and connect them by dragging between the node dots.
3. For nodes that talk to an external service (Slack, Google, an HTTP API…), n8n prompts you to add a **credential** — these are stored encrypted on the install's volume.
4. Click **Execute workflow** to test, then toggle **Active** (top right) to run it on its trigger.

***

## Webhooks & external triggers

Webhook and "Wait for webhook" nodes generate a callback URL using the install's public address, e.g. `https://n8n-<random>.suji.fr/webhook/...`. Give that URL to the external service.

* **Test vs Production URLs** — the editor shows a test URL that's only live while the canvas is open, and a production URL that works whenever the workflow is **Active**. Use the production URL for real integrations.
* **OAuth-based credentials** (Google, etc.) use the same public host for their redirect URL — register that redirect in the provider's console.

***

## Day-to-day management

| Want to…                          | Where                                           |
| --------------------------------- | ----------------------------------------------- |
| Build / edit / run workflows      | The n8n editor (`https://n8n-<random>.suji.fr`) |
| Manage stored credentials         | Editor → **Credentials**                        |
| See past runs / debug failures    | Editor → **Executions**                         |
| View container logs               | Dashboard → Logs (pick n8n)                     |
| Open a shell inside the container | Dashboard → Terminal (pick n8n)                 |
| Browse the data volume on disk    | Dashboard → Files (pick the n8n volume)         |
| Restart the app                   | Install detail page → Restart                   |
| Upgrade to a newer version        | Install detail page → Upgrade (when available)  |
| Remove the install + its data     | Install detail page → Uninstall                 |

***

## Troubleshooting

<AccordionGroup>
  <Accordion title="I forgot the owner password">
    Reset it from the dashboard's per-app **Terminal** (pick n8n):

    ```bash theme={"dark"}
    n8n user-management:reset
    ```

    This resets the owner account so you can set a new password on the next visit. (Exact subcommand can vary by n8n version — run `n8n --help` to confirm.)
  </Accordion>

  <Accordion title="The login page won't accept my credentials / cookie error">
    Always reach n8n through its **`https://<subdomain>.suji.fr`** URL. n8n sets a secure cookie; if you tunnel directly to the plain-HTTP container port, the browser refuses the cookie and login fails. The Suji subdomain is HTTPS end-to-end, so it works.
  </Accordion>

  <Accordion title="A webhook URL shows the wrong host">
    n8n derives webhook URLs from the request host, which is your `*.suji.fr` subdomain — so they should be correct out of the box. If you've put another proxy in front, or the URL still looks wrong, set an explicit `WEBHOOK_URL` via **Edit Install → environment variables** and redeploy.
  </Accordion>

  <Accordion title="Bad gateway (Cloudflare 502)">
    n8n isn't reachable through the tunnel yet. Usually it's still starting — wait \~30 s and retry, especially right after an upgrade. If it persists, the Logs tab shows why the container isn't up.
  </Accordion>
</AccordionGroup>

***

## Where things live

| What                                    | Inside container                                   | Named volume |
| --------------------------------------- | -------------------------------------------------- | ------------ |
| SQLite database (workflows, executions) | `/home/node/.n8n/database.sqlite`                  | `n8n-data`   |
| Credential **encryption key**           | `/home/node/.n8n/config`                           | `n8n-data`   |
| Custom nodes / binary data              | `/home/node/.n8n/nodes`, `/home/node/.n8n/storage` | `n8n-data`   |

<Warning>
  Saved credentials are encrypted with the key in `/home/node/.n8n/config`. **If you lose the volume, you lose that key and can't decrypt your stored credentials** — you'd have to re-enter them. Keep this in mind before uninstalling: choose **keep data** during uninstall if you want to preserve workflows and credentials.
</Warning>

***

## Recommended size

* **Small is plenty.** n8n needs only \~512 MB to run and the compose caps it at 1 GB.
* Memory/CPU pressure comes from *what your workflows do* — heavy data transforms, large HTTP payloads, or many concurrent executions. If you run big batch workflows, size up; for typical automation a Small VM is comfortable.
* If you run other apps on the same VM, remember the VM's total CPU/memory is shared.

***

## Reporting issues

| Class                                                         | Where                                                                             |
| ------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| n8n bug (node behavior, editor, workflow engine)              | [n8n-io/n8n issues](https://github.com/n8n-io/n8n/issues)                         |
| Marketplace packaging bug (compose / manifest / install form) | [suji-hq/suji-templates issues](https://github.com/suji-hq/suji-templates/issues) |
| Suji platform bug (dashboard, billing, network)               | Support ticket from the dashboard                                                 |
