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

# n8n

> Use Notte browser agents inside n8n workflows

<Tip>
  STOP. Do not read past this section until you have read and followed [/quickstart.md](/quickstart.md).

  Goal: produce a reliable SDK automation script. The intended authoring flow is generate then edit, not write browser automation from scratch.

  Do not hand-write SDK code with element IDs, selectors, or form fields from memory. Element IDs, selectors, and field mappings must come from a live `observe()` call, CLI `notte page observe` output, or generated workflow code. Guessed browser targets fail on real pages.

  Use the Notte skill and CLI to inspect the live site, validate actions/selectors, handle auth/session state, and export workflow code with `notte sessions workflow-code` before using SDK docs or SDK code.

  SDK reference pages are for understanding, running, or editing generated workflow code. They are not the starting point for manually authoring the initial browser automation. SDK-first code is guesswork on real-world pages with dynamic selectors, auth state, CAPTCHAs, and anti-bot behavior.
</Tip>

[n8n](https://n8n.io/) is a workflow automation tool. The `n8n-nodes-notte` community node adds Notte as a step in any workflow, so a browser agent can run between your triggers, branches and downstream integrations without writing code.

## Install the node

In your n8n instance, go to **Settings → Community Nodes → Install** and enter:

```
n8n-nodes-notte
```

Self-hosted instances can install it directly instead:

```bash theme={null}
npm install n8n-nodes-notte
```

## Add your credentials

Create a **Notte API** credential with an API key from [console.notte.cc](https://console.notte.cc/apikeys). The credential also takes a base URL, which you only need to change if you are pointed at a non-default Notte deployment.

## Nodes

### Notte Agent Browser

The main node runs in one of three modes:

| Mode         | What it does                                                                              |
| ------------ | ----------------------------------------------------------------------------------------- |
| **Agent**    | Runs an AI agent that performs a browser task autonomously from a natural language prompt |
| **Scrape**   | Extracts structured data from a URL                                                       |
| **Function** | Runs a deployed [Notte function](/concepts/functions) by id                               |

Agent mode is the one to reach for when the task needs judgement - logging in, navigating a flow, reacting to what is on the page. Scrape mode is faster and cheaper when you only need data off a known URL. Function mode is for work you have already made repeatable: author the function once, then call it from as many workflows as you like.

### Notte Trigger

The trigger node starts a workflow when a [persona](/concepts/personas) receives a new email or SMS. This is what closes the loop on signup and verification flows: an agent creates an account, the confirmation email lands in the persona's inbox, and the trigger fires the next branch of your workflow.

## Next steps

<CardGroup cols={2}>
  <Card title="Browser Agents" icon="robot" href="/concepts/agents">
    What an agent can do with a task prompt
  </Card>

  <Card title="Functions" icon="https://mintcdn.com/notte/laVxhSjtZz3-wqG3/logo/square-function.svg?fit=max&auto=format&n=laVxhSjtZz3-wqG3&q=85&s=d294a42f7a09939e5a532b4b524541f4" href="/concepts/functions" width="24" height="24" data-path="logo/square-function.svg">
    Turn a working run into a callable function
  </Card>

  <Card title="Personas" icon="user" href="/concepts/personas">
    Identities with their own inbox and phone number
  </Card>

  <Card title="Fetch" icon="download" href="/concepts/scraping">
    Pull structured data out of a page
  </Card>
</CardGroup>
