n8n-nodes-clientify 0.2.1 → 0.2.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/README.md CHANGED
@@ -124,54 +124,68 @@ This node dynamically supports **26 operations** from the Clientify MCP API:
124
124
 
125
125
  ## Trigger Events
126
126
 
127
- **NEW in v0.2.0!** The Clientify Trigger node enables automatic workflow execution when events occur in Clientify CRM.
128
-
129
- 📚 **For complete trigger documentation with payload examples and webhook URLs, see [TRIGGERS_REFERENCE.md](TRIGGERS_REFERENCE.md)**
130
-
131
- ### Available Triggers
132
-
133
- #### 👥 Contact Triggers
134
- - **Contact Created** - Fires when a new contact is added to Clientify
135
- - **Contact Updated** - Fires when contact details are modified
136
- - **Contact Deleted** - Fires when a contact is removed
137
-
138
- #### 📊 Company Triggers
139
- - **Company Created** - Fires when a new company is added to Clientify
140
- - **Company Updated** - Fires when company details are modified
141
- - **Company Deleted** - Fires when a company is removed
142
-
143
- #### 💼 Deal Triggers
144
- - **Deal Created** - Fires when a new deal is created
145
- - **Deal Updated** - Fires when deal details are modified
146
- - **Deal Won** - Fires when a deal is marked as won
147
- - **Deal Lost** - Fires when a deal is marked as lost
148
- - **Deal Stage Changed** - Fires when a deal moves to a different pipeline stage
149
- - **Deal Deleted** - Fires when a deal is removed
150
-
151
- #### Task Triggers
152
- - **Task Created** - Fires when a new task is created
153
- - **Task Completed** - Fires when a task is marked as completed
154
- - **Task Due Soon** - Fires when a task is approaching its due date
155
- - **Task Overdue** - Fires when a task passes its due date
156
-
157
- ### Setting Up Webhooks
158
-
159
- 1. **Add Clientify Trigger node** to your workflow in n8n
160
- 2. **Select the event** you want to listen for (e.g., "Contact Created")
161
- 3. **Save and activate** the workflow to generate webhook URL
162
- 4. **Copy the webhook URL** from the trigger node
163
- 5. **Configure webhook in Clientify:**
164
- - Go to Clientify Settings → Webhooks
165
- - Add new webhook
166
- - Paste the n8n webhook URL
167
- - Select the corresponding event type
168
- - Save the webhook configuration
169
-
170
- ### Webhook Data Structure
171
-
172
- When a webhook triggers your workflow, the data is automatically flattened for easy access:
173
-
174
- **Contact Created Example:**
127
+ **NEW in v0.2.0!** The Clientify Trigger node enables automatic workflow execution when events occur in Clientify CRM. With 16 event types covering contacts, companies, deals, and tasks, you can automate workflows instantly when things happen in your CRM.
128
+
129
+ ### How It Works
130
+
131
+ 1. Add "Clientify Trigger" node to your n8n workflow
132
+ 2. Select which event should start the workflow (e.g., "Contact Created")
133
+ 3. Activate the workflow to get your unique webhook URL
134
+ 4. Configure the webhook in Clientify to point to your n8n URL
135
+ 5. When the event happens in Clientify, your workflow runs automatically with the data
136
+
137
+ ### 16 Available Triggers
138
+
139
+ | Event | Trigger Name | When It Fires | Common Use Cases |
140
+ |-------|--------------|---------------|------------------|
141
+ | 👥 **Contacts** | | | |
142
+ | | Contact Created | New contact added | Welcome email, create follow-up task, add to CRM |
143
+ | | Contact Updated | Contact details changed | Sync to other systems, log changes, update records |
144
+ | | Contact Deleted | Contact removed | Archive data, remove from email lists, cleanup |
145
+ | 📊 **Companies** | | | |
146
+ | | Company Created | New company added | Research company, assign account manager, notify team |
147
+ | | Company Updated | Company details changed | Update external systems, track changes |
148
+ | | Company Deleted | Company removed | Clean up related data, archive records |
149
+ | 💼 **Deals** | | | |
150
+ | | Deal Created | New deal/opportunity created | Notify sales team, create tasks, log in analytics |
151
+ | | Deal Updated | Deal details changed | Track value changes, update forecasts, log activity |
152
+ | | Deal Won | Deal closed successfully | Send celebration, create invoice, start onboarding |
153
+ | | Deal Lost | Deal closed unsuccessfully | Add to nurture campaign, analyze loss reason |
154
+ | | Deal Stage Changed | Deal moved to different stage | Stage-specific actions (send pricing, generate contract) |
155
+ | | Deal Deleted | Deal removed | Log deletion, archive data |
156
+ | ✅ **Tasks** | | | |
157
+ | | Task Created | New task added | Add to calendar, notify assignee, sync to project tools |
158
+ | | Task Completed | Task marked complete | Log activity, update metrics, trigger next steps |
159
+ | | Task Due Soon | Task approaching due date | Send reminder to assignee |
160
+ | | Task Overdue | Task past due date | Escalate to manager, send urgent notification |
161
+
162
+ ### Setup Instructions
163
+
164
+ **In n8n:**
165
+ 1. Add "Clientify Trigger" node to your workflow
166
+ 2. Select the event from the dropdown
167
+ 3. Choose your Clientify MCP credentials
168
+ 4. Save and **activate** the workflow (toggle ON)
169
+ 5. Click the trigger node → Expand "Webhook URLs"
170
+ 6. Switch to "Production URL" tab
171
+ 7. Copy the webhook URL
172
+
173
+ **In Clientify:**
174
+ 1. Go to Settings → Webhooks
175
+ 2. Click "Add Webhook"
176
+ 3. Select the matching event (e.g., "contact.created")
177
+ 4. Paste your n8n webhook URL
178
+ 5. Set status to "Active"
179
+ 6. Save
180
+
181
+ **Test It:**
182
+ Create a contact, deal, or task in Clientify → Check n8n executions → Your workflow should have run!
183
+
184
+ ### Data You'll Receive
185
+
186
+ All webhook data is automatically flattened so you can easily access it in your workflow. Here's what you get for each event type:
187
+
188
+ **Contact Events** (`contact.created`, `contact.updated`, `contact.deleted`)
175
189
  ```json
176
190
  {
177
191
  "event": "contact.created",
@@ -182,25 +196,71 @@ When a webhook triggers your workflow, the data is automatically flattened for e
182
196
  "email": "john.doe@example.com",
183
197
  "phone": "+1234567890",
184
198
  "company_id": 456,
185
- "company_name": "Acme Corp"
199
+ "company_name": "Acme Corp",
200
+ "changes": { /* only for .updated events */ }
186
201
  }
187
202
  ```
203
+ Access with: `{{$json.first_name}}`, `{{$json.email}}`, `{{$json.company_name}}`
188
204
 
189
- **Deal Won Example:**
205
+ **Company Events** (`company.created`, `company.updated`, `company.deleted`)
206
+ ```json
207
+ {
208
+ "event": "company.created",
209
+ "timestamp": "2025-10-02T18:00:00Z",
210
+ "company_id": 999,
211
+ "name": "Tech Startup Inc",
212
+ "domain": "techstartup.com",
213
+ "industry": "Technology",
214
+ "size": "50-100",
215
+ "country": "USA"
216
+ }
217
+ ```
218
+ Access with: `{{$json.name}}`, `{{$json.domain}}`, `{{$json.industry}}`
219
+
220
+ **Deal Events** (`deal.created`, `deal.updated`, `deal.won`, `deal.lost`, `deal.stage_changed`, `deal.deleted`)
190
221
  ```json
191
222
  {
192
223
  "event": "deal.won",
193
- "timestamp": "2025-10-02T17:00:00Z",
224
+ "timestamp": "2025-10-02T23:00:00Z",
194
225
  "deal_id": 98765,
195
226
  "title": "Enterprise License Sale",
196
- "value": 50000,
227
+ "value": 60000,
197
228
  "currency": "USD",
198
229
  "contact_id": 12345,
199
230
  "contact_name": "John Doe",
200
- "company_id": 789,
201
- "company_name": "New Corp"
231
+ "company_id": 999,
232
+ "company_name": "Tech Startup Inc",
233
+ "stage_name": "Won",
234
+ "won_at": "2025-10-02T23:00:00Z"
235
+ }
236
+ ```
237
+ Access with: `{{$json.title}}`, `{{$json.value}}`, `{{$json.contact_name}}`
238
+
239
+ **Task Events** (`task.created`, `task.completed`, `task.due_soon`, `task.overdue`)
240
+ ```json
241
+ {
242
+ "event": "task.created",
243
+ "timestamp": "2025-10-03T03:00:00Z",
244
+ "task_id": 5555,
245
+ "title": "Follow up with John Doe",
246
+ "description": "Discuss pricing options",
247
+ "type": "call",
248
+ "contact_id": 12345,
249
+ "contact_name": "John Doe",
250
+ "deal_id": 98765,
251
+ "assigned_to_name": "Sales Rep",
252
+ "due_date": "2025-10-05"
202
253
  }
203
254
  ```
255
+ Access with: `{{$json.title}}`, `{{$json.contact_name}}`, `{{$json.due_date}}`
256
+
257
+ ### Important Notes
258
+
259
+ - **Event names are case-sensitive**: Use exact names like `contact.created` (not `Contact.Created`)
260
+ - **Webhook URLs are unique** per workflow - if you recreate a workflow, you'll get a new URL
261
+ - **Workflows must be active** for webhooks to work - inactive workflows won't receive events
262
+ - **All data includes `_raw`** field with the original payload for advanced use cases
263
+ - **Update events include `changes`** object showing what changed (old/new values)
204
264
 
205
265
  ## Usage Examples
206
266
 
package/dist/README.md CHANGED
@@ -124,54 +124,68 @@ This node dynamically supports **26 operations** from the Clientify MCP API:
124
124
 
125
125
  ## Trigger Events
126
126
 
127
- **NEW in v0.2.0!** The Clientify Trigger node enables automatic workflow execution when events occur in Clientify CRM.
128
-
129
- 📚 **For complete trigger documentation with payload examples and webhook URLs, see [TRIGGERS_REFERENCE.md](TRIGGERS_REFERENCE.md)**
130
-
131
- ### Available Triggers
132
-
133
- #### 👥 Contact Triggers
134
- - **Contact Created** - Fires when a new contact is added to Clientify
135
- - **Contact Updated** - Fires when contact details are modified
136
- - **Contact Deleted** - Fires when a contact is removed
137
-
138
- #### 📊 Company Triggers
139
- - **Company Created** - Fires when a new company is added to Clientify
140
- - **Company Updated** - Fires when company details are modified
141
- - **Company Deleted** - Fires when a company is removed
142
-
143
- #### 💼 Deal Triggers
144
- - **Deal Created** - Fires when a new deal is created
145
- - **Deal Updated** - Fires when deal details are modified
146
- - **Deal Won** - Fires when a deal is marked as won
147
- - **Deal Lost** - Fires when a deal is marked as lost
148
- - **Deal Stage Changed** - Fires when a deal moves to a different pipeline stage
149
- - **Deal Deleted** - Fires when a deal is removed
150
-
151
- #### Task Triggers
152
- - **Task Created** - Fires when a new task is created
153
- - **Task Completed** - Fires when a task is marked as completed
154
- - **Task Due Soon** - Fires when a task is approaching its due date
155
- - **Task Overdue** - Fires when a task passes its due date
156
-
157
- ### Setting Up Webhooks
158
-
159
- 1. **Add Clientify Trigger node** to your workflow in n8n
160
- 2. **Select the event** you want to listen for (e.g., "Contact Created")
161
- 3. **Save and activate** the workflow to generate webhook URL
162
- 4. **Copy the webhook URL** from the trigger node
163
- 5. **Configure webhook in Clientify:**
164
- - Go to Clientify Settings → Webhooks
165
- - Add new webhook
166
- - Paste the n8n webhook URL
167
- - Select the corresponding event type
168
- - Save the webhook configuration
169
-
170
- ### Webhook Data Structure
171
-
172
- When a webhook triggers your workflow, the data is automatically flattened for easy access:
173
-
174
- **Contact Created Example:**
127
+ **NEW in v0.2.0!** The Clientify Trigger node enables automatic workflow execution when events occur in Clientify CRM. With 16 event types covering contacts, companies, deals, and tasks, you can automate workflows instantly when things happen in your CRM.
128
+
129
+ ### How It Works
130
+
131
+ 1. Add "Clientify Trigger" node to your n8n workflow
132
+ 2. Select which event should start the workflow (e.g., "Contact Created")
133
+ 3. Activate the workflow to get your unique webhook URL
134
+ 4. Configure the webhook in Clientify to point to your n8n URL
135
+ 5. When the event happens in Clientify, your workflow runs automatically with the data
136
+
137
+ ### 16 Available Triggers
138
+
139
+ | Event | Trigger Name | When It Fires | Common Use Cases |
140
+ |-------|--------------|---------------|------------------|
141
+ | 👥 **Contacts** | | | |
142
+ | | Contact Created | New contact added | Welcome email, create follow-up task, add to CRM |
143
+ | | Contact Updated | Contact details changed | Sync to other systems, log changes, update records |
144
+ | | Contact Deleted | Contact removed | Archive data, remove from email lists, cleanup |
145
+ | 📊 **Companies** | | | |
146
+ | | Company Created | New company added | Research company, assign account manager, notify team |
147
+ | | Company Updated | Company details changed | Update external systems, track changes |
148
+ | | Company Deleted | Company removed | Clean up related data, archive records |
149
+ | 💼 **Deals** | | | |
150
+ | | Deal Created | New deal/opportunity created | Notify sales team, create tasks, log in analytics |
151
+ | | Deal Updated | Deal details changed | Track value changes, update forecasts, log activity |
152
+ | | Deal Won | Deal closed successfully | Send celebration, create invoice, start onboarding |
153
+ | | Deal Lost | Deal closed unsuccessfully | Add to nurture campaign, analyze loss reason |
154
+ | | Deal Stage Changed | Deal moved to different stage | Stage-specific actions (send pricing, generate contract) |
155
+ | | Deal Deleted | Deal removed | Log deletion, archive data |
156
+ | ✅ **Tasks** | | | |
157
+ | | Task Created | New task added | Add to calendar, notify assignee, sync to project tools |
158
+ | | Task Completed | Task marked complete | Log activity, update metrics, trigger next steps |
159
+ | | Task Due Soon | Task approaching due date | Send reminder to assignee |
160
+ | | Task Overdue | Task past due date | Escalate to manager, send urgent notification |
161
+
162
+ ### Setup Instructions
163
+
164
+ **In n8n:**
165
+ 1. Add "Clientify Trigger" node to your workflow
166
+ 2. Select the event from the dropdown
167
+ 3. Choose your Clientify MCP credentials
168
+ 4. Save and **activate** the workflow (toggle ON)
169
+ 5. Click the trigger node → Expand "Webhook URLs"
170
+ 6. Switch to "Production URL" tab
171
+ 7. Copy the webhook URL
172
+
173
+ **In Clientify:**
174
+ 1. Go to Settings → Webhooks
175
+ 2. Click "Add Webhook"
176
+ 3. Select the matching event (e.g., "contact.created")
177
+ 4. Paste your n8n webhook URL
178
+ 5. Set status to "Active"
179
+ 6. Save
180
+
181
+ **Test It:**
182
+ Create a contact, deal, or task in Clientify → Check n8n executions → Your workflow should have run!
183
+
184
+ ### Data You'll Receive
185
+
186
+ All webhook data is automatically flattened so you can easily access it in your workflow. Here's what you get for each event type:
187
+
188
+ **Contact Events** (`contact.created`, `contact.updated`, `contact.deleted`)
175
189
  ```json
176
190
  {
177
191
  "event": "contact.created",
@@ -182,25 +196,71 @@ When a webhook triggers your workflow, the data is automatically flattened for e
182
196
  "email": "john.doe@example.com",
183
197
  "phone": "+1234567890",
184
198
  "company_id": 456,
185
- "company_name": "Acme Corp"
199
+ "company_name": "Acme Corp",
200
+ "changes": { /* only for .updated events */ }
186
201
  }
187
202
  ```
203
+ Access with: `{{$json.first_name}}`, `{{$json.email}}`, `{{$json.company_name}}`
188
204
 
189
- **Deal Won Example:**
205
+ **Company Events** (`company.created`, `company.updated`, `company.deleted`)
206
+ ```json
207
+ {
208
+ "event": "company.created",
209
+ "timestamp": "2025-10-02T18:00:00Z",
210
+ "company_id": 999,
211
+ "name": "Tech Startup Inc",
212
+ "domain": "techstartup.com",
213
+ "industry": "Technology",
214
+ "size": "50-100",
215
+ "country": "USA"
216
+ }
217
+ ```
218
+ Access with: `{{$json.name}}`, `{{$json.domain}}`, `{{$json.industry}}`
219
+
220
+ **Deal Events** (`deal.created`, `deal.updated`, `deal.won`, `deal.lost`, `deal.stage_changed`, `deal.deleted`)
190
221
  ```json
191
222
  {
192
223
  "event": "deal.won",
193
- "timestamp": "2025-10-02T17:00:00Z",
224
+ "timestamp": "2025-10-02T23:00:00Z",
194
225
  "deal_id": 98765,
195
226
  "title": "Enterprise License Sale",
196
- "value": 50000,
227
+ "value": 60000,
197
228
  "currency": "USD",
198
229
  "contact_id": 12345,
199
230
  "contact_name": "John Doe",
200
- "company_id": 789,
201
- "company_name": "New Corp"
231
+ "company_id": 999,
232
+ "company_name": "Tech Startup Inc",
233
+ "stage_name": "Won",
234
+ "won_at": "2025-10-02T23:00:00Z"
235
+ }
236
+ ```
237
+ Access with: `{{$json.title}}`, `{{$json.value}}`, `{{$json.contact_name}}`
238
+
239
+ **Task Events** (`task.created`, `task.completed`, `task.due_soon`, `task.overdue`)
240
+ ```json
241
+ {
242
+ "event": "task.created",
243
+ "timestamp": "2025-10-03T03:00:00Z",
244
+ "task_id": 5555,
245
+ "title": "Follow up with John Doe",
246
+ "description": "Discuss pricing options",
247
+ "type": "call",
248
+ "contact_id": 12345,
249
+ "contact_name": "John Doe",
250
+ "deal_id": 98765,
251
+ "assigned_to_name": "Sales Rep",
252
+ "due_date": "2025-10-05"
202
253
  }
203
254
  ```
255
+ Access with: `{{$json.title}}`, `{{$json.contact_name}}`, `{{$json.due_date}}`
256
+
257
+ ### Important Notes
258
+
259
+ - **Event names are case-sensitive**: Use exact names like `contact.created` (not `Contact.Created`)
260
+ - **Webhook URLs are unique** per workflow - if you recreate a workflow, you'll get a new URL
261
+ - **Workflows must be active** for webhooks to work - inactive workflows won't receive events
262
+ - **All data includes `_raw`** field with the original payload for advanced use cases
263
+ - **Update events include `changes`** object showing what changed (old/new values)
204
264
 
205
265
  ## Usage Examples
206
266
 
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n-nodes-clientify",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "N8N node for Clientify CRM integration",
5
5
  "keywords": [
6
6
  "n8n-node",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n-nodes-clientify",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "N8N node for Clientify CRM integration",
5
5
  "keywords": [
6
6
  "n8n-node",