n8n-nodes-ninjapipe 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/INSTALL.md +14 -10
- package/LICENSE +21 -0
- package/README.md +79 -42
- package/SECURITY.md +20 -0
- package/docs/RELEASE-NOTES-0.8.0.md +20 -0
- package/examples/np-form-contact-deal-task-validated.json +1087 -0
- package/nodes/NinjaPipe/NinjaPipe.node.js +187 -36
- package/nodes/NinjaPipeTrigger/NinjaPipeTrigger.node.js +29 -4
- package/package.json +16 -5
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.8.0
|
|
4
|
+
- embedded the updated NinjaPipe SVG logo in both nodes
|
|
5
|
+
- bumped the action node to version 5 and the trigger to version 2
|
|
6
|
+
- added stronger validation for contacts, companies, deals, tasks, budgets, dates, and email format
|
|
7
|
+
- added friendlier error messages for common NinjaPipe API failures
|
|
8
|
+
- added company upsert by exact company name
|
|
9
|
+
- added pipeline stage lookup after selecting a pipeline
|
|
10
|
+
- added owner lookup support with safe fallback behavior
|
|
11
|
+
- hardened advanced paths to block full URLs and path traversal
|
|
12
|
+
- improved field discovery output with inferred field types
|
|
13
|
+
- improved npm metadata, install docs, and update guidance
|
package/INSTALL.md
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
# Install
|
|
1
|
+
# Install n8n-nodes-ninjapipe
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## Community Nodes GUI
|
|
4
|
+
Install:
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
## Local publish
|
|
6
|
+
```text
|
|
7
|
+
n8n-nodes-ninjapipe@0.8.0
|
|
8
|
+
```
|
|
10
9
|
|
|
10
|
+
## Local development
|
|
11
11
|
```bash
|
|
12
|
+
cd ~/Desktop/n8n-nodes-ninjapipe
|
|
12
13
|
npm install
|
|
13
|
-
npm
|
|
14
|
+
npm link
|
|
15
|
+
mkdir -p ~/.n8n/custom
|
|
16
|
+
cd ~/.n8n/custom
|
|
17
|
+
npm init -y
|
|
18
|
+
npm link n8n-nodes-ninjapipe
|
|
19
|
+
n8n start
|
|
14
20
|
```
|
|
15
|
-
|
|
16
|
-
After updating the package, refresh or restart n8n if the UI doesn't immediately show the new labels or icon.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Michael Hemmersbach
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,71 +1,108 @@
|
|
|
1
1
|
# n8n-nodes-ninjapipe
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Production-ready NinjaPipe community nodes for n8n.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
This package focuses on **clean UX**, **safer defaults**, and **update-friendly structure**. Instead of scattering NinjaPipe actions across many separate node variants, it keeps the package intentionally simple:
|
|
6
6
|
|
|
7
|
-
- **NinjaPipe**
|
|
8
|
-
- **NinjaPipe Trigger**
|
|
7
|
+
- **NinjaPipe** for actions
|
|
8
|
+
- **NinjaPipe Trigger** for polling-based event workflows
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## Highlights
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
- one action node and one trigger node
|
|
13
|
+
- guided fields for core NinjaPipe resources
|
|
14
|
+
- safer validation before requests are sent
|
|
15
|
+
- friendlier error messages for common API failures
|
|
16
|
+
- select boxes for pipelines, contacts, companies, projects, countries, states, currencies, and deal status
|
|
17
|
+
- optional pipeline stage lookup after choosing a pipeline
|
|
18
|
+
- contact upsert by email
|
|
19
|
+
- company upsert by exact company name
|
|
20
|
+
- custom fields as flexible repeatable entries
|
|
21
|
+
- safer advanced mode with relative-path validation
|
|
22
|
+
- bundled example workflows for forms and lead processing
|
|
23
|
+
|
|
24
|
+
## Included resources
|
|
25
|
+
|
|
26
|
+
- Contacts
|
|
27
|
+
- Companies
|
|
28
|
+
- Deals
|
|
29
|
+
- Products
|
|
30
|
+
- Projects
|
|
31
|
+
- Tasks
|
|
32
|
+
- Budgets
|
|
33
|
+
- Lists
|
|
34
|
+
- Pipelines
|
|
35
|
+
- Pipeline Items
|
|
36
|
+
- Invoices
|
|
37
|
+
- Orders
|
|
38
|
+
- Databins
|
|
39
|
+
- Custom API Request
|
|
40
|
+
|
|
41
|
+
## Included examples
|
|
13
42
|
|
|
14
|
-
|
|
15
|
-
Choose:
|
|
43
|
+
See the `examples` folder:
|
|
16
44
|
|
|
17
|
-
-
|
|
18
|
-
-
|
|
45
|
+
- `databin-lead-to-contact.json`
|
|
46
|
+
- `np-form-simple-contact-upsert.json`
|
|
47
|
+
- `np-form-multipage-branching.json`
|
|
48
|
+
- `np-form-contact-deal-task-validated.json`
|
|
19
49
|
|
|
20
|
-
|
|
50
|
+
## Install in n8n
|
|
21
51
|
|
|
22
|
-
###
|
|
23
|
-
|
|
52
|
+
### From npm in the GUI
|
|
53
|
+
Install this package in **Settings → Community Nodes**:
|
|
24
54
|
|
|
25
|
-
|
|
26
|
-
-
|
|
27
|
-
|
|
55
|
+
```text
|
|
56
|
+
n8n-nodes-ninjapipe@0.8.0
|
|
57
|
+
```
|
|
28
58
|
|
|
29
|
-
|
|
59
|
+
n8n expects community node packages to include the `n8n-community-node-package` keyword and to declare node and credential files in the `n8n` section of `package.json`. citeturn189812search0turn189812search3
|
|
30
60
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
- guided fields for core resources
|
|
34
|
-
- pipeline, contact, company, and project lookups
|
|
35
|
-
- deal status select box
|
|
36
|
-
- country and state select boxes for DACH-friendly setups
|
|
37
|
-
- custom fields as flexible entries
|
|
38
|
-
- custom API request fallback
|
|
39
|
-
- example workflow templates included
|
|
61
|
+
### Run locally from a custom folder
|
|
62
|
+
n8n loads custom nodes from `~/.n8n/custom` by default, or from paths provided via `N8N_CUSTOM_EXTENSIONS`. citeturn189812search1turn189812search12
|
|
40
63
|
|
|
41
|
-
|
|
64
|
+
### Link a local development copy
|
|
65
|
+
For local development, n8n documents `npm link` in the custom nodes directory. citeturn189812search4
|
|
42
66
|
|
|
43
|
-
|
|
67
|
+
## Update policy
|
|
44
68
|
|
|
45
|
-
|
|
46
|
-
- `np-form-multipage-branching.json`
|
|
69
|
+
This package follows semantic versioning so breaking changes can be released in a predictable way. npm recommends publishing updated versions using SemVer so downstream users can understand the impact of a change. citeturn189812search2turn189812search13
|
|
47
70
|
|
|
48
|
-
|
|
71
|
+
### Practical release rules
|
|
49
72
|
|
|
50
|
-
|
|
73
|
+
- patch = bug fixes and non-breaking improvements
|
|
74
|
+
- minor = new actions or fields without breaking existing flows
|
|
75
|
+
- major = breaking UI or payload changes
|
|
51
76
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
77
|
+
## Security notes
|
|
78
|
+
|
|
79
|
+
- credentials are stored in n8n credentials, not inside workflows
|
|
80
|
+
- advanced path overrides only accept **relative API paths**
|
|
81
|
+
- full URLs are blocked in custom request paths
|
|
82
|
+
- friendly validation runs before common create and update calls
|
|
83
|
+
- custom fields remain flexible, but guided validation protects common mistakes
|
|
84
|
+
|
|
85
|
+
See `SECURITY.md` for operational guidance.
|
|
55
86
|
|
|
56
|
-
##
|
|
87
|
+
## Known limitations
|
|
88
|
+
|
|
89
|
+
- owner and pipeline stage lookup depend on what the NinjaPipe workspace exposes through its API
|
|
90
|
+
- if a workspace does not expose those endpoints, the select box may remain empty
|
|
91
|
+
- in that case you can still use Additional Fields or Advanced mode for manual payload overrides
|
|
92
|
+
|
|
93
|
+
## Publish
|
|
57
94
|
|
|
58
95
|
```bash
|
|
59
96
|
npm install
|
|
60
97
|
npm publish
|
|
61
98
|
```
|
|
62
99
|
|
|
63
|
-
##
|
|
100
|
+
## Check package contents before publishing
|
|
64
101
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
102
|
+
```bash
|
|
103
|
+
npm pack --dry-run
|
|
104
|
+
```
|
|
68
105
|
|
|
69
|
-
##
|
|
106
|
+
## Maintainer
|
|
70
107
|
|
|
71
|
-
|
|
108
|
+
Michael Hemmersbach
|
package/SECURITY.md
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Security
|
|
2
|
+
|
|
3
|
+
## Supported versions
|
|
4
|
+
- 0.8.x
|
|
5
|
+
|
|
6
|
+
## Recommendations
|
|
7
|
+
- keep API keys only in n8n credentials
|
|
8
|
+
- avoid raw advanced mode unless you know the exact NinjaPipe endpoint you need
|
|
9
|
+
- prefer guided fields over raw JSON for production workflows
|
|
10
|
+
- use patch and minor releases for routine updates and reserve major releases for breaking changes
|
|
11
|
+
- test new versions with example workflows before updating production flows
|
|
12
|
+
|
|
13
|
+
## Safe update workflow
|
|
14
|
+
1. export critical workflows
|
|
15
|
+
2. install the new package version in a staging or local instance
|
|
16
|
+
3. validate contact, deal, task, and trigger flows
|
|
17
|
+
4. only then update production
|
|
18
|
+
|
|
19
|
+
## Reporting issues
|
|
20
|
+
Report packaging, security, or data handling issues through the repository issue tracker.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Release Notes 0.8.0
|
|
2
|
+
|
|
3
|
+
This release hardens the package for production use.
|
|
4
|
+
|
|
5
|
+
## UX
|
|
6
|
+
- cleaner action naming
|
|
7
|
+
- pipeline stages after pipeline selection
|
|
8
|
+
- owner lookups
|
|
9
|
+
- clearer validation and error messages
|
|
10
|
+
|
|
11
|
+
## Security
|
|
12
|
+
- safe relative-path enforcement
|
|
13
|
+
- blocked full URLs in advanced path inputs
|
|
14
|
+
- preflight validation for common create and update actions
|
|
15
|
+
|
|
16
|
+
## Update readiness
|
|
17
|
+
- semver-oriented package metadata
|
|
18
|
+
- explicit changelog
|
|
19
|
+
- security guidance
|
|
20
|
+
- node version bumps for safer future evolution
|