{"_id":"@dszp/n8n-nodes-listmonk","_rev":"2-e0c116a6be9aa3e3203fc3c9618008ec","name":"@dszp/n8n-nodes-listmonk","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"@dszp/n8n-nodes-listmonk","version":"0.0.1","keywords":["n8n-community-node-package"],"author":{"url":"https://david.szpunar.com","name":"David Szpunar","email":"davidszp@gmail.com"},"license":"MIT","_id":"@dszp/n8n-nodes-listmonk@0.0.1","maintainers":[{"name":"dszp","email":"davidszp@gmail.com"}],"contributors":[{"url":"https://hueske.digital","name":"Tobias Wiesing"},{"url":"https://blog.front-matter.de","name":"Martin Fenner"},{"url":"https://dotsndots.be","name":"Sven Huijbrechts","email":"sven.huijbrechts@dotsndots.be"}],"homepage":"https://github.com/dszp/n8n-nodes-listmonk","bugs":{"url":"https://github.com/dszp/n8n-nodes-listmonk/issues"},"n8n":{"nodes":["dist/nodes/listmonk/listmonk.node.js"],"credentials":["dist/credentials/listmonkApi.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"4bbe0f6273026b0609cbb429704610323870aef9","tarball":"https://registry.npmjs.org/@dszp/n8n-nodes-listmonk/-/n8n-nodes-listmonk-0.0.1.tgz","fileCount":24,"integrity":"sha512-P1mHQwh9p8TSpXbwEUGma6WsSjR7Gyn0xI+kI1o8TBxMeLrZYWbRMCCcXY6u28mb+kEe/ibWqNCycGmStNZKHQ==","signatures":[{"sig":"MEYCIQCiiNO1pLRnNx33nPZVWeykL/nn+rn67KmSmQMlFBwP8AIhANiXu99IlMab47puKd5xhdojQLl55SYWnioBCaHZBx4Z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":376060},"_from":"file:dszp-n8n-nodes-listmonk-0.0.1.tgz","engines":{"node":">=18.10"},"scripts":{"dev":"tsc --watch","lint":"eslint nodes credentials package.json --ext .ts,.json","test":"jest","build":"tsc && gulp build:icons","format":"prettier nodes credentials --write","lint:fix":"eslint nodes credentials package.json --ext .ts,.json --fix","test:e2e":"jest --testPathPattern=e2e","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"dszp","email":"davidszp@gmail.com"},"_resolved":"/Users/dszp/Documents/n8n/ListMonk/n8n-nodes-listmonk/dszp-n8n-nodes-listmonk-0.0.1.tgz","_integrity":"sha512-P1mHQwh9p8TSpXbwEUGma6WsSjR7Gyn0xI+kI1o8TBxMeLrZYWbRMCCcXY6u28mb+kEe/ibWqNCycGmStNZKHQ==","repository":{"url":"git+https://github.com/dszp/n8n-nodes-listmonk.git","type":"git"},"_npmVersion":"10.9.4","description":"n8n community node for Listmonk email & newsletter API","directories":{},"_nodeVersion":"22.22.0","dependencies":{"@devlikeapro/n8n-openapi-node":"^0.1.0"},"_hasShrinkwrap":false,"packageManager":"pnpm@9.1.4","devDependencies":{"gulp":"^4.0.2","jest":"^29.7.0","nock":"^14.0.10","yaml":"^2.4.5","eslint":"^8.56.0","js-yaml":"^4.1.0","ts-jest":"^29.4.1","prettier":"^3.3.2","typescript":"^5.5.3","@types/jest":"^29.5.14","n8n-workflow":"*","openapi-types":"^12.1.3","@typescript-eslint/parser":"^7.15.0","eslint-plugin-n8n-nodes-base":"^1.16.1"},"peerDependencies":{"n8n-workflow":"*"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-listmonk_0.0.1_1773466549102_0.7531141074168757","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@dszp/n8n-nodes-listmonk","version":"0.0.2","description":"n8n community node for Listmonk email & newsletter API","keywords":["n8n-community-node-package"],"license":"MIT","homepage":"https://github.com/dszp/n8n-nodes-listmonk","author":{"name":"David Szpunar","email":"davidszp@gmail.com","url":"https://david.szpunar.com"},"contributors":[{"name":"Tobias Wiesing","url":"https://hueske.digital"},{"name":"Martin Fenner","url":"https://blog.front-matter.de"},{"name":"Sven Huijbrechts","email":"sven.huijbrechts@dotsndots.be","url":"https://dotsndots.be"}],"repository":{"type":"git","url":"git+https://github.com/dszp/n8n-nodes-listmonk.git"},"engines":{"node":">=18.10"},"packageManager":"pnpm@9.1.4","scripts":{"build":"tsc && gulp build:icons","dev":"tsc --watch","lint":"eslint nodes credentials package.json --ext .ts,.json","lint:fix":"eslint nodes credentials package.json --ext .ts,.json --fix","test":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage","test:e2e":"jest --testPathPattern=e2e","format":"prettier nodes credentials --write"},"n8n":{"n8nNodesApiVersion":1,"credentials":["dist/credentials/listmonkApi.credentials.js"],"nodes":["dist/nodes/listmonk/listmonk.node.js"]},"devDependencies":{"@types/jest":"^29.5.14","@typescript-eslint/parser":"^7.15.0","eslint":"^8.56.0","eslint-plugin-n8n-nodes-base":"^1.16.1","gulp":"^4.0.2","jest":"^29.7.0","js-yaml":"^4.1.0","n8n-workflow":"*","nock":"^14.0.10","openapi-types":"^12.1.3","prettier":"^3.3.2","ts-jest":"^29.4.1","typescript":"^5.5.3","yaml":"^2.4.5"},"peerDependencies":{"n8n-workflow":"*"},"dependencies":{"@devlikeapro/n8n-openapi-node":"^0.1.0"},"gitHead":"39004d8a436a538ce02fc5e7ab9ae555fd0e3bc0","_id":"@dszp/n8n-nodes-listmonk@0.0.2","bugs":{"url":"https://github.com/dszp/n8n-nodes-listmonk/issues"},"_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-BFcb/44L9Osw9hFf8sGyicr3r6WBerml7KWyto8q5UwUjmUDHt1CigeTGTqinGm0MD098WxWW5DKGS9EfDMpxg==","shasum":"cb2c54eb7a4a04c79f4acc38a7803ae32694dce8","tarball":"https://registry.npmjs.org/@dszp/n8n-nodes-listmonk/-/n8n-nodes-listmonk-0.0.2.tgz","fileCount":21,"unpackedSize":375254,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dszp%2fn8n-nodes-listmonk@0.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIG1GcIA5AGsviR5UDxpFUD4ap9hqMQVje69nRlN/U1efAiEA+0foPga5e2LB5LI+tWHVkes8WGnjKAeKg2hU20M365w="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:93d78658-ff3b-44c6-87c4-38c04d849a4d"}},"directories":{},"maintainers":[{"name":"dszp","email":"davidszp@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-nodes-listmonk_0.0.2_1773467500710_0.150797918097342"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-14T05:35:48.764Z","modified":"2026-03-14T05:51:41.169Z","0.0.1":"2026-03-14T05:35:49.268Z","0.0.2":"2026-03-14T05:51:40.867Z"},"bugs":{"url":"https://github.com/dszp/n8n-nodes-listmonk/issues"},"author":{"name":"David Szpunar","email":"davidszp@gmail.com","url":"https://david.szpunar.com"},"license":"MIT","homepage":"https://github.com/dszp/n8n-nodes-listmonk","keywords":["n8n-community-node-package"],"repository":{"type":"git","url":"git+https://github.com/dszp/n8n-nodes-listmonk.git"},"description":"n8n community node for Listmonk email & newsletter API","contributors":[{"name":"Tobias Wiesing","url":"https://hueske.digital"},{"name":"Martin Fenner","url":"https://blog.front-matter.de"},{"name":"Sven Huijbrechts","email":"sven.huijbrechts@dotsndots.be","url":"https://dotsndots.be"}],"maintainers":[{"name":"dszp","email":"davidszp@gmail.com"}],"readme":"# @dszp/n8n-nodes-listmonk\n\nn8n community node for the [Listmonk](https://listmonk.app/) email & newsletter API.\n\n## Overview\n\nThis node integrates the Listmonk admin API into n8n, providing access to all major resources:\n\n- **Subscribers** — create, get, update, delete, manage lists, blocklist, export, bounces\n- **Lists** — create, get, update, delete\n- **Campaigns** — create, get, update, delete, status management, preview, analytics, test send\n- **Templates** — create, get, update, delete, preview, set default\n- **Media** — upload, get, delete\n- **Transactional** — send transactional emails\n- **Import** — import subscribers, check status, view logs\n- **Settings, Admin, Logs, Maintenance, Public** — full admin API coverage\n\n![node-actions.png](node-actions.png)\n\n## Installation\n\nIn your n8n instance, go to **Settings > Community Nodes** and install:\n\n```\n@dszp/n8n-nodes-listmonk\n```\n\nOr install via the CLI:\n\n```bash\n# Self-hosted n8n\ncd ~/.n8n\nnpm install @dszp/n8n-nodes-listmonk\n\n# Docker — add to your n8n environment\nN8N_COMMUNITY_PACKAGES=@dszp/n8n-nodes-listmonk\n```\n\n## Configuration\n\n1. In n8n, create a new **Listmonk API** credential\n2. Enter your Listmonk base URL (e.g., `https://listmonk.example.com`) — no trailing slash\n3. Enter your admin username and password (HTTP Basic Auth)\n\nThe node makes requests to the admin API at `{baseUrl}/api`.\n\n## Compatibility\n\n- Tested with Listmonk v6.0.0+\n- Tested with n8n v2.11.3+\n- Supports use as an AI agent tool (`usableAsTool: true`)\n\n## Development\n\n```bash\npnpm install          # Install dependencies\npnpm build            # TypeScript compile + copy icons\npnpm dev              # Watch mode\npnpm test             # Run tests\npnpm lint             # Lint check\npnpm lint:fix         # Auto-fix lint issues\nmake up-listmonk      # Convert OpenAPI YAML to JSON\n```\n\n### Local testing with n8n\n\n```bash\nmake build && make link && make start\n```\n\nThis builds, links the package globally, then starts n8n with the node available.\n\n## Architecture\n\nNode properties are auto-generated from the bundled [Listmonk OpenAPI spec](nodes/listmonk/openapi.json) using [`@devlikeapro/n8n-openapi-node`](https://github.com/nicobao/n8n-openapi-node). A custom `ListmonkOperationParser` maps the generated operation names to n8n conventions (Get, Create, Update, Delete, Get Many).\n\nThe OpenAPI spec has been enhanced beyond the upstream Listmonk spec with additional fields and endpoints not present in the official documentation.\n\n## Credits\n\nThis node builds on the work of several upstream authors:\n\n- Originally created by [Tobias Wiesing](https://hueske.digital) at [`loopion/n8n-nodes-listmonk`](https://github.com/loopion/n8n-nodes-listmonk)\n- Forked and extended by [Martin Fenner](https://blog.front-matter.de) at [`front-matter/n8n-nodes-listmonk`](https://github.com/front-matter/n8n-nodes-listmonk)\n- Forked and extended by [Sven Huijbrechts](https://dotsndots.be) at [`toSvenson/n8n-nodes-listmonk`](https://github.com/toSvenson/n8n-nodes-listmonk)\n- Forked and rebranded by [David Szpunar](https://david.szpunar.com) as [`@dszp/n8n-nodes-listmonk`](https://github.com/dszp/n8n-nodes-listmonk)\n\n## Resources\n\n- [Listmonk Documentation](https://listmonk.app/docs/)\n- [Listmonk API Reference](https://listmonk.app/docs/apis/apis/)\n- [Changelog](CHANGELOG.md)\n- [TODO](TODO.md)\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}