@ixiam/n8n-nodes-civicrm 1.0.0 → 1.0.2
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/.eslintrc.cjs +6 -4
- package/README.md +95 -55
- package/package.json +5 -4
package/.eslintrc.cjs
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
module.exports = {
|
|
2
|
-
root: true,
|
|
3
2
|
parser: '@typescript-eslint/parser',
|
|
4
|
-
plugins: ['@typescript-eslint'
|
|
3
|
+
plugins: ['@typescript-eslint'],
|
|
5
4
|
extends: [
|
|
5
|
+
'eslint:recommended',
|
|
6
6
|
'plugin:@typescript-eslint/recommended',
|
|
7
|
-
'plugin:n8n-nodes-base/community'
|
|
8
7
|
],
|
|
9
|
-
|
|
8
|
+
rules: {
|
|
9
|
+
'@typescript-eslint/no-unused-vars': 'off',
|
|
10
|
+
'@typescript-eslint/no-explicit-any': 'off',
|
|
11
|
+
},
|
|
10
12
|
};
|
package/README.md
CHANGED
|
@@ -1,89 +1,84 @@
|
|
|
1
1
|
# n8n-nodes-civicrm
|
|
2
|
+
|
|
3
|
+

|
|
4
|
+

|
|
5
|
+

|
|
6
|
+
|
|
2
7
|
Community Node for **CiviCRM API v4** (Civi-Go compatible)
|
|
3
8
|
Developed and maintained by **Ixiam Global Solutions**.
|
|
4
9
|
|
|
5
|
-
This
|
|
10
|
+
This package provides integration between **n8n** and **CiviCRM API v4**, supporting create, update, delete operations, advanced filtering, dynamic location types, and structured sub-entities (email, phone, address).
|
|
11
|
+
Custom fields are **not** supported.
|
|
6
12
|
|
|
7
|
-
|
|
13
|
+
---
|
|
8
14
|
|
|
9
|
-
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
1. In your n8n instance, open:
|
|
10
18
|
**Settings → Community Nodes → Install**
|
|
11
19
|
2. Enter the package name:
|
|
12
20
|
|
|
13
21
|
```
|
|
14
|
-
n8n-nodes-civicrm
|
|
22
|
+
@ixiam/n8n-nodes-civicrm
|
|
15
23
|
```
|
|
16
24
|
|
|
17
|
-
3.
|
|
25
|
+
3. Confirm installation and enable Community Nodes.
|
|
26
|
+
4. If running n8n via Docker, restart/rebuild for the node to load.
|
|
27
|
+
|
|
28
|
+
---
|
|
18
29
|
|
|
19
|
-
##
|
|
30
|
+
## Credentials
|
|
20
31
|
|
|
21
|
-
|
|
32
|
+
Authentication uses **Bearer Token**.
|
|
22
33
|
|
|
23
34
|
| Field | Description |
|
|
24
35
|
|-------|-------------|
|
|
25
|
-
| **Base URL** |
|
|
36
|
+
| **Base URL** | Root URL of your CiviCRM instance (no trailing slash). Example: `https://crm.example.org` |
|
|
26
37
|
| **API Token** | Sent as header `X-Civi-Auth: Bearer <token>` |
|
|
27
38
|
|
|
28
|
-
|
|
39
|
+
---
|
|
29
40
|
|
|
30
|
-
##
|
|
41
|
+
## Supported Entities
|
|
31
42
|
|
|
32
|
-
|
|
43
|
+
This node implements API v4 operations for:
|
|
33
44
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
| **Activity** | get, getMany, create, update, delete |
|
|
41
|
-
| **Custom API Call** | full custom API4 request |
|
|
45
|
+
- Contact
|
|
46
|
+
- Membership
|
|
47
|
+
- Group
|
|
48
|
+
- Relationship
|
|
49
|
+
- Activity
|
|
50
|
+
- Custom API Call (raw API4 request)
|
|
42
51
|
|
|
43
|
-
|
|
52
|
+
Each entity supports:
|
|
53
|
+
- get
|
|
54
|
+
- getMany
|
|
55
|
+
- create
|
|
56
|
+
- update
|
|
57
|
+
- delete
|
|
44
58
|
|
|
45
|
-
|
|
46
|
-
Supports any standard or custom field:
|
|
59
|
+
---
|
|
47
60
|
|
|
48
|
-
|
|
49
|
-
first_name = John
|
|
50
|
-
last_name = Doe
|
|
51
|
-
custom_45 = Blue
|
|
52
|
-
```
|
|
61
|
+
## Features
|
|
53
62
|
|
|
54
|
-
###
|
|
55
|
-
Two
|
|
63
|
+
### Email, phone and address with location types
|
|
64
|
+
Two mapping modes:
|
|
56
65
|
|
|
57
|
-
|
|
66
|
+
Simple:
|
|
58
67
|
```
|
|
59
68
|
email = test@example.org
|
|
60
|
-
phone.mobile = 600123456
|
|
61
69
|
address.city = Barcelona
|
|
62
70
|
```
|
|
63
71
|
|
|
64
|
-
|
|
72
|
+
With location prefixes:
|
|
65
73
|
```
|
|
66
74
|
work.email = user@company.org
|
|
67
|
-
billing.address.postal_code =
|
|
75
|
+
billing.address.postal_code = 08014
|
|
68
76
|
home.phone.phone_type_id = 2
|
|
69
77
|
```
|
|
70
78
|
|
|
71
|
-
###
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
### **4. Birth Date Normalization**
|
|
75
|
-
Accepted input formats:
|
|
76
|
-
|
|
77
|
-
- YYYY-MM-DD
|
|
78
|
-
- DD/MM/YYYY
|
|
79
|
-
- DD-MM-YYYY
|
|
80
|
-
- YYYY/MM/DD
|
|
81
|
-
- YYYY.MM.DD
|
|
82
|
-
|
|
83
|
-
Auto-normalized to `YYYY-MM-DD`.
|
|
84
|
-
|
|
85
|
-
### **5. GET MANY with JSON Filters**
|
|
86
|
-
```
|
|
79
|
+
### GET MANY with JSON filters
|
|
80
|
+
Example:
|
|
81
|
+
```json
|
|
87
82
|
[
|
|
88
83
|
["first_name", "LIKE", "Ju%"],
|
|
89
84
|
["birth_date", ">", "1990-01-01"],
|
|
@@ -91,8 +86,19 @@ Auto-normalized to `YYYY-MM-DD`.
|
|
|
91
86
|
]
|
|
92
87
|
```
|
|
93
88
|
|
|
94
|
-
###
|
|
95
|
-
|
|
89
|
+
### Birth date normalization
|
|
90
|
+
Accepted input formats:
|
|
91
|
+
- YYYY-MM-DD
|
|
92
|
+
- DD/MM/YYYY
|
|
93
|
+
- DD-MM-YYYY
|
|
94
|
+
- YYYY/MM/DD
|
|
95
|
+
- YYYY.MM.DD
|
|
96
|
+
|
|
97
|
+
Normalized to `YYYY-MM-DD`.
|
|
98
|
+
|
|
99
|
+
### Custom API Call
|
|
100
|
+
Example:
|
|
101
|
+
```json
|
|
96
102
|
{
|
|
97
103
|
"entity": "Contact",
|
|
98
104
|
"action": "get",
|
|
@@ -100,11 +106,45 @@ Auto-normalized to `YYYY-MM-DD`.
|
|
|
100
106
|
}
|
|
101
107
|
```
|
|
102
108
|
|
|
103
|
-
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## Compatibility
|
|
112
|
+
|
|
113
|
+
- **n8n version:** 1.0.0 or higher
|
|
114
|
+
- **Node.js:** 18 or higher
|
|
115
|
+
- **CiviCRM:** API v4 compatible (including Civi-Go)
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## Development
|
|
120
|
+
|
|
121
|
+
Clone the repository and run:
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
npm install
|
|
125
|
+
npm run dev
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
Build:
|
|
129
|
+
|
|
130
|
+
```
|
|
131
|
+
npm run build
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Contributions
|
|
137
|
+
|
|
138
|
+
Pull requests and issues are welcome in the GitHub repository.
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## About Ixiam Global Solutions
|
|
143
|
+
Website: https://www.ixiam.com
|
|
144
|
+
Email: info@ixiam.com
|
|
104
145
|
|
|
105
|
-
|
|
106
|
-
Contact: **info@ixiam.com**
|
|
146
|
+
---
|
|
107
147
|
|
|
108
|
-
##
|
|
148
|
+
## License
|
|
109
149
|
|
|
110
150
|
MIT License
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ixiam/n8n-nodes-civicrm",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Full-featured CiviCRM API v4 integration for n8n with support for Contacts, Memberships, Groups, Relationships, Activities and structured sub-entities like Email, Phone, and Address.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"keywords": [
|
|
@@ -16,17 +16,18 @@
|
|
|
16
16
|
"dev": "n8n-node dev",
|
|
17
17
|
"build": "n8n-node build",
|
|
18
18
|
"lint": "n8n-node lint",
|
|
19
|
-
"release": "n8n-node release"
|
|
19
|
+
"release": "n8n-node release",
|
|
20
|
+
"test": "npm run build"
|
|
20
21
|
},
|
|
21
22
|
"repository": {
|
|
22
23
|
"type": "git",
|
|
23
|
-
"url": "https://github.com/ixiam/n8n-nodes-civicrm.git"
|
|
24
|
+
"url": "git+https://github.com/ixiam/n8n-nodes-civicrm.git"
|
|
24
25
|
},
|
|
25
26
|
"homepage": "https://ixiam.com",
|
|
26
27
|
"bugs": {
|
|
27
28
|
"url": "https://github.com/ixiam/n8n-nodes-civicrm/issues"
|
|
28
29
|
},
|
|
29
|
-
"author": "Ixiam
|
|
30
|
+
"author": "Ixiam/Julian Reartes <info@ixiam.com> (https://www.ixiam.com)",
|
|
30
31
|
"engines": {
|
|
31
32
|
"node": ">=18"
|
|
32
33
|
},
|