n8n-nodes-idb2b 1.8.0 → 1.9.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.
@@ -1293,6 +1293,28 @@ class IDB2B {
1293
1293
  if (typeof additionalFields.favorites === 'boolean') {
1294
1294
  body.favorites = additionalFields.favorites;
1295
1295
  }
1296
+ // Add CRM fields
1297
+ if (additionalFields.company) {
1298
+ body.company = additionalFields.company;
1299
+ }
1300
+ if (additionalFields.company_id) {
1301
+ body.company_id = additionalFields.company_id;
1302
+ }
1303
+ if (additionalFields.status) {
1304
+ body.status = additionalFields.status;
1305
+ }
1306
+ if (additionalFields.priority) {
1307
+ body.priority = additionalFields.priority;
1308
+ }
1309
+ if (additionalFields.estimated_value) {
1310
+ body.estimated_value = additionalFields.estimated_value;
1311
+ }
1312
+ if (additionalFields.account_owner) {
1313
+ body.account_owner = additionalFields.account_owner;
1314
+ }
1315
+ if (additionalFields.position) {
1316
+ body.position = additionalFields.position;
1317
+ }
1296
1318
  // Process tags if provided
1297
1319
  if (additionalFields.tags && additionalFields.tags.tag) {
1298
1320
  body.tags = additionalFields.tags.tag.map((tag) => ({
@@ -82,6 +82,68 @@ exports.contactFields = [
82
82
  },
83
83
  },
84
84
  options: [
85
+ {
86
+ displayName: 'Company',
87
+ name: 'company',
88
+ type: 'string',
89
+ default: '',
90
+ description: 'Company name (for CRM integration)',
91
+ },
92
+ {
93
+ displayName: 'Company ID',
94
+ name: 'company_id',
95
+ type: 'string',
96
+ default: '',
97
+ description: 'ID of the company/lead to associate with this contact',
98
+ },
99
+ {
100
+ displayName: 'Status',
101
+ name: 'status',
102
+ type: 'options',
103
+ default: 'Lead',
104
+ description: 'Contact status in sales pipeline',
105
+ options: [
106
+ { name: 'Lead', value: 'Lead' },
107
+ { name: 'Qualified', value: 'Qualified' },
108
+ { name: 'Proposal', value: 'Proposal' },
109
+ { name: 'Negotiation', value: 'Negotiation' },
110
+ { name: 'Closed', value: 'Closed' },
111
+ { name: 'Lost', value: 'Lost' },
112
+ ],
113
+ },
114
+ {
115
+ displayName: 'Priority',
116
+ name: 'priority',
117
+ type: 'options',
118
+ default: 'Medium',
119
+ description: 'Contact priority level',
120
+ options: [
121
+ { name: 'High', value: 'High' },
122
+ { name: 'Medium', value: 'Medium' },
123
+ { name: 'Low', value: 'Low' },
124
+ ],
125
+ },
126
+ {
127
+ displayName: 'Estimated Value',
128
+ name: 'estimated_value',
129
+ type: 'number',
130
+ default: 0,
131
+ description: 'Estimated deal value',
132
+ },
133
+ {
134
+ displayName: 'Account Owner',
135
+ name: 'account_owner',
136
+ type: 'string',
137
+ default: '',
138
+ description: 'Sales representative or account owner',
139
+ },
140
+ {
141
+ displayName: 'Position',
142
+ name: 'position',
143
+ type: 'string',
144
+ default: '',
145
+ description: 'Job title or position',
146
+ },
85
147
  {
86
148
  displayName: 'User ID',
87
149
  name: 'user_id',
@@ -94,7 +156,7 @@ exports.contactFields = [
94
156
  name: 'lead_id',
95
157
  type: 'string',
96
158
  default: '',
97
- description: 'ID of the lead to associate with this contact',
159
+ description: 'ID of the lead to associate with this contact (optional)',
98
160
  },
99
161
  {
100
162
  displayName: 'Favorites',
@@ -186,6 +248,38 @@ exports.contactFields = [
186
248
  name: 'Phone Number',
187
249
  value: 'phone_number',
188
250
  },
251
+ {
252
+ name: 'Company',
253
+ value: 'company',
254
+ },
255
+ {
256
+ name: 'Company ID',
257
+ value: 'company_id',
258
+ },
259
+ {
260
+ name: 'Status',
261
+ value: 'status',
262
+ },
263
+ {
264
+ name: 'Priority',
265
+ value: 'priority',
266
+ },
267
+ {
268
+ name: 'Estimated Value',
269
+ value: 'estimated_value',
270
+ },
271
+ {
272
+ name: 'Account Owner',
273
+ value: 'account_owner',
274
+ },
275
+ {
276
+ name: 'Position',
277
+ value: 'position',
278
+ },
279
+ {
280
+ name: 'Lead ID',
281
+ value: 'lead_id',
282
+ },
189
283
  {
190
284
  name: 'Organization ID',
191
285
  value: 'organization_id',
@@ -1,16 +1,23 @@
1
1
  export interface IDB2BContact {
2
- id: string;
3
- organization_id: string;
2
+ id?: string;
3
+ organization_id?: string;
4
4
  name: string;
5
5
  phone_number?: string;
6
6
  email?: string;
7
- user_id: string;
7
+ user_id?: string;
8
8
  lead_id?: string;
9
- created_at: string;
10
- updated_at: string;
9
+ company?: string;
10
+ company_id?: string;
11
+ status?: 'Lost' | 'Qualified' | 'Proposal' | 'Closed' | 'Lead' | 'Negotiation';
12
+ priority?: 'High' | 'Medium' | 'Low';
13
+ estimated_value?: number;
14
+ account_owner?: string;
15
+ position?: string;
16
+ created_at?: string;
17
+ updated_at?: string;
11
18
  lead?: any;
12
- favorites: boolean;
13
- tags: Array<{
19
+ favorites?: boolean;
20
+ tags?: Array<{
14
21
  id: string;
15
22
  organization_id: string;
16
23
  name: string;
@@ -1,5 +1,6 @@
1
1
  export interface IDB2BLead {
2
2
  id?: string;
3
+ organization_id?: string;
3
4
  owner_id?: string;
4
5
  name: string;
5
6
  website?: string;
@@ -9,10 +10,6 @@ export interface IDB2BLead {
9
10
  size_id?: string;
10
11
  industry_id?: string;
11
12
  main_contact_id?: string;
12
- contact_name?: string;
13
- contact_email?: string;
14
- contact_phone_number?: string;
15
- organization_id?: string;
16
13
  created_at?: string;
17
14
  updated_at?: string;
18
15
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "n8n-nodes-idb2b",
3
- "version": "1.8.0",
4
- "description": "n8n community node for IDB2B CRM",
3
+ "version": "1.9.0",
4
+ "description": "n8n community node for IDB2B - WhatsApp AI Agents",
5
5
  "main": "index.js",
6
6
  "scripts": {
7
7
  "build": "tsc && gulp build:icons",