Package Information
Documentation
n8n-nodes-pantrist
This is an n8n community node. It lets you use
Pantrist in your n8n workflows.
Pantrist is a smart shopping list and pantry manager. This package wraps the
Pantrist REST API so you can manage your lists, shopping list and
pantry with clickable nodes instead of raw HTTP requests — and react
automatically when items change.
Installation
Operations
Credentials
Trigger
Example workflow
Compatibility
Resources
Installation
Follow the
installation guide
in the n8n community nodes documentation.
In short, from your n8n instance:
- Go to Settings → Community Nodes.
- Select Install.
- Enter
n8n-nodes-pantristas the npm package name. - Agree that you understand the risks of installing community nodes and select
Install.
After installation the Pantrist and Pantrist Trigger nodes are available
in the node panel.
Credentials
You authenticate with a Pantrist API key.
- Open the Pantrist web app and sign in.
- Go to Settings and generate a new API key. It looks like
<uuid>_<secret>and is shown only once — copy it. - In n8n, create new Pantrist API credentials and paste the key into the
API Key field. - Leave Base URL as
https://api.pantrist.appunless you self-host
Pantrist, in which case point it at your own instance.
The credential injects an Authorization: Bearer <apiKey> header on every
request and is verified by calling GET /list.
Operations
List
- Get Many – retrieve all of your lists (handy for finding a list's ID).
Shopping List
- Get Many – retrieve the shopping-list items (optionally only those changed
since a given timestamp via Updated Since). - Search – search the shopping list by item name.
- Add by Name – add an item by name (e.g.
Milk). - Add by Barcode – add an item by barcode (e.g.
4006381333931). - Check Off – mark an item as checked off.
- Delete – remove an item.
Pantry
- Get Many – retrieve the pantry items (optionally with Updated Since).
- Add by Name – add an item by name, with optional Amount (default
1)
and Unit ID (defaultpieces). - Add by Barcode – add an item by barcode, with the same optional fields.
- Change Amount – change an item's amount by a delta (e.g.
-1consumes
one). Enable Auto Restock to add the article back to the shopping list
when it drops to or below its configured minimum. - Delete – remove an item.
In every list/pantry operation, the List Name or ID field is a dropdown
populated from your account, so you pick a list by name instead of pasting a
UUID. The Item ID field expects the uuid of an item — typically wired in
from a previous node.
Trigger
The Pantrist Trigger is a polling trigger. On the interval you configure it
checks a single list for changes and emits any items whose lastModified
timestamp is newer than the last poll.
Configure:
- List Name or ID – the list to watch.
- Collection –
Shopping ListorPantry List. - Poll Times – the standard n8n polling schedule.
How the cursor works:
- It polls
GET /list/{listId}/{collection}?updatedSince=<cursor>and advances
the cursor to the newestlastModifiedvalue it sees, persisting it in the
workflow's static data. - On the first live run the cursor starts at "now", so the trigger does not
emit the entire existing list as if it had just changed — it only fires on
subsequent changes. - A manual execution (the Test step button) fetches the whole collection
so you can see sample data, without moving the saved cursor.
Known limitation: the trigger watches one chosen list, so it cannot detect
a brand-new list being created account-wide. That would require a future
account-level events endpoint or outbound webhooks.
Example workflow
Notify me when an item is checked off the shopping list.
- Pantrist Trigger
- List Name or ID: your list
- Collection:
Shopping List - Poll Times: every minute (or your preference)
- IF node
- Condition:
{{ $json.checked }}istrue
(use whichever field your list uses to mark an item as checked).
- Condition:
- Send notification (Slack / Email / Telegram / …)
- Message:
🛒 "{{ $json.name }}" was checked off your Pantrist list.
- Message:
Each time someone checks an item off, the trigger emits the changed item and the
downstream nodes fire your notification.
Development
This package uses the official @n8n/node-cli
tooling.
npm install
npm run dev # runs a local n8n with this node linked and hot-reloaded
npm run build # type-checks and copies icons into dist/
npm run lint # eslint-plugin-n8n-nodes-base + @n8n/eslint-plugin-community-nodes
npm run check-api-spec # checks every endpoint the node uses against the live OpenAPI spec
check-api-spec fetches https://api.pantrist.app/swagger-ui-json and asserts
that every (method, path) the node calls still exists. Run it before cutting a
release so a backend rename can't ship as a broken operation. Override the spec
URL with PANTRIST_SPEC_URL for a self-hosted backend.
To publish: npm run lint, npm run check-api-spec, andnpm publish --access public. Because the n8n-community-node-package keyword
is set, the package becomes installable from n8n → Settings → Community
Nodes.
Compatibility
- Requires n8n with
n8nNodesApiVersion1. - Tested with Node.js 18+.