Description
n8n-nodes-pocketbase
This is a n8n community node. It lets you use PocketBase in your n8n workflows.
PocketBase is an open source backend consisting of embedded database (SQLite) with realtime subscriptions, built-in auth management, convenient dashboard UI and simple REST-ish API.
n8n is a fair-code licensed workflow automation platform.
Installation
Usage Tips
Operations
Credentials
Compatibility
Development
Resources
Usage Tips
Clearing Fields
To clear a field (set it to its zero-value or delete a file), you can send null as the value:
- Text/Number/Select/Relation: Use an expression to return
nullto clear the field. - JSON: Use
nullto store a literal null value. - File: Use
nullto delete the existing file. - Options: Filter, Fields and Expand Relations are applied by PocketBase before an event is sent, so the workflow only starts for the records it needs. The filter uses the same syntax as the List operation, for example
status = 'paid'. - Testing: a test run in the editor waits for the first real event from your collection, so create or change a record to finish it.
- Dropped connections: PocketBase closes a stream after five idle minutes. The node reconnects by itself and the workflow stays active. It reports an error, and so makes n8n deactivate the workflow, when PocketBase rejects the credentials (HTTP 400, 401 or 403), or after it has failed to reconnect 50 times in a row. A server that is still starting up, or a refused connection, is simply retried. PocketBase does not replay events, so a change made while the node is reconnecting is not delivered. That gap is usually a second or two, but the retry delay grows to 30 seconds plus jitter during a longer outage.
- Invalid filter: PocketBase only evaluates the filter when an event happens, so it accepts a bad one without an error. The workflow then stays active but never starts. If a filtered trigger stays silent, test the same filter in the List operation.
- PocketBase 0.23.0 or newer. The node signs in through the
_superuserscollection, which PocketBase introduced in 0.23.0. - n8n 1.85.0 or newer. Older versions can’t load the node, because it uses
NodeConnectionTypes, which n8n added in 1.85.0. - Every change to the node, including breaking ones, only bumps the patch. Breaking changes are called out in the release notes, not in the version number. Read the notes before updating.
- When PocketBase’s major or minor version changes, the next release is the matching
, after the nightly compatibility check has passed against the new PocketBase.. .0 - Linting: oxlint for fast linting.
- Formatting: oxfmt for fast formatting.
- Testing: vitest for unit and integration tests.
npm run lint: Lint the project.npm run format: Format the project.npm test: Run tests.npm run test:pipeline: Run a full integration test against a PocketBase instance in Docker. It also publishes a workflow with the Trigger node in a real n8n, drives PocketBase through its API (create, update, delete, a dropped stream) and checks the files that workflow writes.- n8n community nodes documentation
- PocketBase Introduction
In the Fields parameter, use an expression: ={{ null }}.
In the JSON Body, use the literal null: {"myField": null}.
Installation
Follow the installation guide in the n8n community nodes documentation.
Operations
Nearly all PocketBase operations for Base collections should be implemented.
Download Files
Turn on Download Files under Parameters of View or List/Search to get the files of each element as binary data on its item. A single-file field becomes a binary field of the same name, a multi-file field becomes , and so on. Protected files are supported. To download only some files, pick the fields with Field Names (include id).
Trigger Node (Beta)
This node allows you to subscribe to PocketBase events (create, update, delete) in real-time via Server-Sent Events (SSE).
Note: The trigger node is currently in Beta. We’ve implemented basic reconnection logic, but it may still be sensitive to network interruptions or large amounts of data. Please use with caution in production.
Credentials
Ensure you have an Auth collection in your PocketBase defined and the “Username/Password” Auth method turned on.
Alternatively, you can use your administrator account and the “_superusers” collection which PocketBase creates automatically since v0.23.0.
Compatibility
When a new n8n or PocketBase version comes out, a nightly job runs the integration tests against it and releases an update once they pass.
Last tested with n8n 2.47.3 and PocketBase 0.40.6.
Versioning
The package version mirrors the PocketBase it was last tested with, shifted by two in the major: major.minor is (PocketBase major + 2).(PocketBase minor), so 2.40.x goes with PocketBase 0.40. The patch number is this package’s own counter.
Versions before 2.40.0 used an independent numbering (2.3.x). 2.40.0 is numerically higher than any of them, so updates are not blocked.
Development
This project uses modern tooling for development:


