n8n-nodes-cribops 0.1.24 → 0.2.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/README.md CHANGED
@@ -1,174 +1,160 @@
1
1
  # n8n-nodes-cribops
2
2
 
3
- This is an n8n community node. It lets you use Cribops in your n8n workflows.
3
+ This is an n8n community node that provides reliable webhook processing capabilities through the [Cribops](https://cribops.com) platform.
4
4
 
5
- Cribops is the platform where teams build, deploy, and scale AI-powered automation agents for customer service, support, and business operations.
6
-
7
- > **Note**: This integration requires an active subscription with [Cribops.com](https://cribops.com). Sign up for an account to obtain your API credentials.
5
+ Cribops is a webhook processing service that ensures reliable delivery, intelligent routing, and comprehensive monitoring of webhooks. This node package allows you to integrate Cribops' powerful webhook infrastructure directly into your n8n workflows.
8
6
 
9
7
  ## Features
10
8
 
11
- - **Scalable Automation**: Build resilient workflows with AI agents that handle customer interactions at scale
12
- - **AWS Service Integration**: Leverage AWS SQS queues and SNS topics for enterprise-grade message processing
13
- - **Real-time Communication**: HTTP webhooks enable instant bidirectional messaging between n8n and Cribops agents
14
- - **Smart Agent Routing**: Dynamic agent selection ensures messages reach the right automation specialist
15
- - **Context Preservation**: Maintains full conversation history across complex multi-step workflows
16
- - **Enterprise Security**: Dual authentication with API tokens and AWS credentials for secure cloud operations
17
- - **File Processing**: Handle documents, images, and attachments through S3 presigned URLs
18
- - **Event-Driven Triggers**: Filter and respond to specific event types for targeted automation
19
-
20
- ## Nodes Included
21
-
22
- ### 1. Cribops Node
23
- Execute operations on Cribops automation agents:
24
- - **Send Messages**: Dispatch requests to AI agents with file attachments and metadata
25
- - **Manage Conversations**: Reply to ongoing conversations while maintaining full context
26
- - **Agent Operations**: List available agents, retrieve agent details, and route dynamically
27
- - **Real-time Status**: Send typing indicators to show processing activity
28
- - **Custom Properties**: Attach metadata for workflow-specific data handling
29
-
30
- ### 2. Cribops Trigger Node
31
- Receive and process events from Cribops automation platform:
32
- - **Webhook Reception**: Instantly receive messages from users and agents
33
- - **Smart Filtering**: Process only relevant events (user messages, agent responses, attachments)
34
- - **Secure Validation**: Verify webhook authenticity with secret tokens
35
- - **Data Enrichment**: Automatically include routing information for seamless replies
36
- - **Queue Integration**: Future support for AWS SQS polling for guaranteed message delivery
37
- - **Topic Subscriptions**: Future support for AWS SNS for event broadcasting
9
+ ### 🚀 Webhook Reception & Processing
10
+ - **N8N as Webhook Destination**: Receive webhooks FROM Cribops at a controlled rate
11
+ - **Performance Tracking**: Built-in performance metrics for every webhook processed
12
+ - **Error Reporting**: Automatic error reporting back to Cribops for monitoring
13
+ - **Progress Updates**: Send progress updates for long-running workflows
14
+
15
+ ### 📊 Advanced Monitoring & Reporting
16
+ - **Error Reporting**: Report workflow errors with detailed context and stack traces
17
+ - **Performance Metrics**: Send processing time, memory usage, and success rates
18
+ - **Callbacks**: Send completion callbacks for long-running processes
19
+ - **Progress Tracking**: Update Cribops on workflow progress in real-time
20
+
21
+ ### 🔧 Workflow Optimization
22
+ - **Workflow Analysis**: Send workflow definitions to get optimization recommendations
23
+ - **Scalability Insights**: Get recommendations on when to migrate to Oban Pro or Step Functions
24
+ - **Performance Scoring**: Understand your workflow's scalability potential
25
+ - **Cost Optimization**: Receive cost reduction estimates for optimized workflows
26
+
27
+ ### 🔄 Integration Architecture
28
+ - **Phoenix as Front Door**: Cribops Phoenix receives and stores all webhooks
29
+ - **Controlled Delivery**: N8N receives webhooks at a manageable rate
30
+ - **Hybrid Processing**: Combine N8N's flexibility with Oban Pro's power
31
+ - **Multi-Destination Routing**: Route webhooks to N8N, GHL, custom endpoints, or Oban workers
38
32
 
39
33
  ## Installation
40
34
 
41
- ### Prerequisites
42
- - Node.js >= 20.15
43
- - n8n >= 1.0.0
44
- - Active Cribops subscription (visit [cribops.com](https://cribops.com) to sign up)
45
- - Cribops API access token (available in your Cribops dashboard)
35
+ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.
36
+
37
+ ### npm
46
38
 
47
- ### Via npm (Recommended)
48
39
  ```bash
49
40
  npm install n8n-nodes-cribops
50
41
  ```
51
42
 
52
- ### Via n8n GUI (For verified community nodes)
53
- 1. Go to **Settings** → **Community Nodes**
54
- 2. Click **Install a Community Node**
55
- 3. Enter: `n8n-nodes-cribops`
56
- 4. Click **Install**
57
-
58
- ### Manual Installation
59
- ```bash
60
- # Clone the repository
61
- git clone https://github.com/CloudBedrock/n8n-nodes-cribops.git
62
- cd n8n-nodes-cribops
43
+ ## Nodes
63
44
 
64
- # Install dependencies
65
- npm install
45
+ This package includes two powerful nodes:
66
46
 
67
- # Build the package
68
- npm run build
47
+ ### 1. Cribops Webhook Trigger
48
+ Receive webhooks FROM Cribops at a controlled rate:
49
+ - Registers your N8N workflow as a webhook destination
50
+ - Receives webhooks with Cribops metadata (queue info, tracking ID, etc.)
51
+ - Automatic performance tracking
52
+ - Built-in error reporting
53
+ - Signature validation for security
69
54
 
70
- # Link globally for testing
71
- npm link
72
- ```
55
+ ### 2. Cribops Webhook
56
+ Report back to Cribops and optimize your workflows:
57
+ - **Report Error**: Send detailed error information back to Cribops
58
+ - **Report Performance**: Track processing time, memory usage, and success rates
59
+ - **Send Callback**: Notify Cribops when long-running workflows complete
60
+ - **Send Progress**: Update progress for workflows processing large batches
61
+ - **Analyze Workflow**: Get optimization recommendations and scalability insights
73
62
 
74
63
  ## Configuration
75
64
 
76
- ### 1. Cribops API Credentials
77
- Create a new credential in n8n:
78
- - **Credential Type**: Cribops API
79
- - **API Token**: Your Cribops API token (Required)
80
- - **Base URL**: Your Cribops instance URL (e.g., `https://api.cribops.com`)
81
- - **Account ID**: (Optional) Account ID for AWS service integration
82
- - **Account Secret**: (Optional) Secret key for AWS service integration
83
- - **Region**: (Optional) AWS region for cloud services (default: us-east-1)
65
+ ### Credentials
84
66
 
85
- ### 2. Agent Selection
86
- The nodes automatically populate available agents from your Cribops instance. Select the appropriate agent from the dropdown when configuring each node.
67
+ 1. Create an account at [Cribops](https://cribops.com)
68
+ 2. Generate an API token from your dashboard
69
+ 3. In n8n, create new Cribops credentials:
70
+ - **Base URL**: Your Cribops instance URL (e.g., `https://api.cribops.com`)
71
+ - **API Token**: Your generated API token
87
72
 
88
73
  ## Usage Examples
89
74
 
90
- ### Customer Support Automation
91
- ```
92
- [Cribops Trigger] [Sentiment Analysis] [Route to Agent] → [Cribops Response]
93
- ```
94
- Automatically analyze customer sentiment and route to specialized AI agents based on urgency and topic.
95
-
96
- ### Document Processing Pipeline
97
- ```
98
- [Cribops Trigger] [Extract Attachment] → [OCR/Parse] → [Database] → [Cribops Response]
99
- ```
100
- Process incoming documents, extract data, store in database, and respond with confirmation.
101
-
102
- ### Multi-Channel Integration
103
- ```
104
- [Slack] [Format Message] [Cribops Agent] → [Process] → [Email/SMS/Slack]
105
- ```
106
- Receive requests from any channel, process with Cribops agents, and respond across multiple platforms.
107
-
108
- ### Escalation Workflow
109
- ```
110
- [Cribops Trigger] [Check Complexity] → [If Complex] → [Human Review] → [Cribops Response]
111
- ```
112
- Automatically escalate complex requests while handling routine inquiries with AI agents.
113
-
114
- ## API Integration
115
-
116
- ### Cribops Platform Endpoints
117
- - `GET /api/v1/agents` - Agent selection and retrieval
118
- - `GET /api/v1/agents/{agent_id}` - Get specific agent details
119
- - `POST /webhooks/agents/{agent_id}/message` - HTTP webhook endpoint
120
- - `POST /api/v1/agents/{agent_id}/files` - File uploads
121
- - `POST /api/v1/agents/{agent_id}/typing` - Send typing indicators
122
- - Response webhook URL provided in incoming messages for replies
123
- - AWS SQS queue endpoints (when configured with AWS credentials)
124
- - AWS SNS topic endpoints (when configured with AWS credentials)
125
-
126
- ### Message Formats
127
-
128
- #### Incoming User Message
129
- ```json
130
- {
131
- "conversation_id": "uuid-v4",
132
- "content": "Hello, I need help with...",
133
- "message_id": "uuid-v4",
134
- "user_id": "uuid-v4",
135
- "organization_id": "uuid-v4",
136
- "timestamp": "2025-01-10T16:00:00Z",
137
- "response_webhook": "https://api.cribops.com/webhooks/response/uuid-v4",
138
- "type": "user_message",
139
- "attachments": [
140
- {
141
- "type": "image",
142
- "url": "https://s3.amazonaws.com/...",
143
- "filename": "screenshot.png",
144
- "size": 1024000,
145
- "mime_type": "image/png"
146
- }
147
- ]
148
- }
149
- ```
150
-
151
- #### Outgoing Agent Response
152
- ```json
153
- {
154
- "conversation_id": "uuid-v4",
155
- "content": "I can help you with that...",
156
- "message_id": "external-id-123",
157
- "timestamp": "2025-01-10T16:01:00Z",
158
- "attachments": [
159
- {
160
- "type": "file",
161
- "url": "https://s3.amazonaws.com/...",
162
- "filename": "report.pdf",
163
- "size": 2048000,
164
- "mime_type": "application/pdf"
165
- }
166
- ]
167
- }
168
- ```
75
+ ### Basic Webhook Reception from Cribops
76
+
77
+ 1. Add a **Cribops Webhook Trigger** node
78
+ 2. Set a webhook path (e.g., `process-stripe-payments`)
79
+ 3. Configure options:
80
+ - Include Cribops Metadata: Yes (to get tracking info)
81
+ - Report Performance: Yes (automatic metrics)
82
+ - Report Errors: Yes (automatic error tracking)
83
+ 4. Save and activate your workflow
84
+ 5. The node registers with Cribops and receives webhooks at a controlled rate
85
+
86
+ ### Error Reporting
87
+
88
+ 1. Add error handling to your workflow
89
+ 2. On error, add a **Cribops Webhook** node
90
+ 3. Select "Report Error" operation
91
+ 4. Map error details:
92
+ - Error message and type
93
+ - Stack trace for debugging
94
+ - Node that failed
95
+ - Whether retry is recommended
96
+
97
+ ### Performance Tracking
98
+
99
+ 1. At the end of your workflow, add a **Cribops Webhook** node
100
+ 2. Select "Report Performance" operation
101
+ 3. Track metrics:
102
+ - Processing time
103
+ - Items processed
104
+ - Memory usage
105
+ - Success/failure status
106
+
107
+ ### Long-Running Process with Progress Updates
108
+
109
+ 1. For batch processing, add periodic **Cribops Webhook** nodes
110
+ 2. Select "Send Progress" operation
111
+ 3. Update progress percentage and message
112
+ 4. At completion, use "Send Callback" operation with results
113
+
114
+ ## Common Use Cases
115
+
116
+ ### 1. Controlled Webhook Processing
117
+ - Cribops Phoenix receives webhooks from Stripe, GitHub, etc.
118
+ - Stores them reliably in Oban Pro
119
+ - Delivers to your N8N workflow at a manageable rate
120
+ - N8N processes and reports back performance/errors
121
+
122
+ ### 2. Long-Running Batch Processing
123
+ - Receive large webhook with 10,000 items
124
+ - Send initial progress update: "Starting processing"
125
+ - Process in batches, sending progress updates
126
+ - On completion, send callback with summary
127
+ - Cribops tracks entire lifecycle
128
+
129
+ ### 3. Intelligent Error Handling
130
+ - When workflow fails, report detailed error to Cribops
131
+ - Cribops analyzes error patterns
132
+ - Suggests retry strategies or routing changes
133
+ - Maintains error dashboard for monitoring
134
+
135
+ ### 4. Workflow Optimization Path
136
+ - Start with N8N for rapid prototyping
137
+ - Use "Analyze Workflow" to get optimization insights
138
+ - When volume increases, get recommendations to:
139
+ - Migrate to Oban Pro workers
140
+ - Use AWS Step Functions
141
+ - Optimize specific bottlenecks
142
+ - Gradual migration with A/B testing
143
+
144
+ ## Best Practices
145
+
146
+ 1. **Always Report Errors**: Enable error reporting in trigger nodes
147
+ 2. **Track Performance**: Send performance metrics to identify bottlenecks
148
+ 3. **Use Progress Updates**: For long-running workflows, send regular progress
149
+ 4. **Analyze Workflows**: Periodically analyze workflows for optimization opportunities
150
+ 5. **Handle Errors Gracefully**: Report errors with context to improve retry strategies
169
151
 
170
152
  ## Development
171
153
 
154
+ ### Prerequisites
155
+ - Node.js >= 20.15
156
+ - n8n >= 1.0.0
157
+
172
158
  ### Setup
173
159
  ```bash
174
160
  # Clone repository
@@ -201,119 +187,37 @@ npm run test
201
187
 
202
188
  # Test with local n8n instance
203
189
  npm link
204
- npm link n8n-nodes-cribops
205
190
  N8N_CUSTOM_EXTENSIONS=n8n-nodes-cribops n8n start
206
191
  ```
207
192
 
208
- ## Configuration Examples
209
-
210
- ### Environment Variables
211
- ```bash
212
- # For local development
213
- export CRIBOPS_API_URL=http://localhost:4000
214
-
215
- # AWS configuration (optional)
216
- export AWS_REGION=us-east-1
217
- export AWS_ACCESS_KEY_ID=your_access_key
218
- export AWS_SECRET_ACCESS_KEY=your_secret_key
219
-
220
- # For n8n configuration
221
- export N8N_CUSTOM_EXTENSIONS=n8n-nodes-cribops
222
- export N8N_NODES_INCLUDE=n8n-nodes-cribops
223
- ```
224
-
225
- ### Docker Configuration
226
- ```dockerfile
227
- FROM n8nio/n8n:latest
228
-
229
- # Install the community node
230
- RUN npm install -g n8n-nodes-cribops
231
-
232
- # Set environment variables
233
- ENV N8N_CUSTOM_EXTENSIONS=n8n-nodes-cribops
234
- ```
235
-
236
- ## Troubleshooting
237
-
238
- ### Common Issues
239
-
240
- #### Node Not Appearing in n8n
241
- 1. Ensure the package is properly installed
242
- 2. Check that `N8N_CUSTOM_EXTENSIONS` is set correctly
243
- 3. Restart n8n after installation
244
-
245
- #### Webhook Connection Issues
246
- 1. Verify webhook URL is correctly configured
247
- 2. Check bearer token authentication
248
- 3. Ensure Cribops platform can reach your n8n instance
249
-
250
- #### File Upload Problems
251
- 1. Verify S3 configuration in Cribops platform
252
- 2. Check file size limits
253
- 3. Ensure proper MIME type handling
254
-
255
- ### Debug Mode
256
- Enable debug logging in n8n:
257
- ```bash
258
- export N8N_LOG_LEVEL=debug
259
- n8n start
260
- ```
261
-
262
- ## Contributing
263
-
264
- 1. Fork the repository
265
- 2. Create a feature branch (`git checkout -b feature/amazing-feature`)
266
- 3. Commit your changes (`git commit -m 'Add amazing feature'`)
267
- 4. Push to the branch (`git push origin feature/amazing-feature`)
268
- 5. Open a Pull Request
193
+ ## Support
269
194
 
270
- ### Development Guidelines
271
- - Follow TypeScript best practices
272
- - Add tests for new functionality
273
- - Update documentation as needed
274
- - Follow n8n community node guidelines
195
+ - **Documentation**: [Cribops Docs](https://docs.cribops.com)
196
+ - **Issues**: [GitHub Issues](https://github.com/CloudBedrock/n8n-nodes-cribops/issues)
197
+ - **Community**: [n8n Community Forum](https://community.n8n.io)
275
198
 
276
199
  ## License
277
200
 
278
- This n8n community node is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
201
+ [MIT](https://github.com/CloudBedrock/n8n-nodes-cribops/blob/master/LICENSE)
279
202
 
280
203
  **Important License Clarification:**
281
204
  - The MIT license applies **only** to this n8n node integration code
282
- - Cribops platform, services, and AI agents are licensed separately by CloudBedrock
205
+ - Cribops platform and services are licensed separately by CloudBedrock
283
206
  - Use of Cribops services requires an active subscription and acceptance of Cribops Terms of Service
284
- - CloudBedrock proprietary components and APIs remain under CloudBedrock's commercial license
285
207
  - This open-source node is a client interface and does not grant any license to use Cribops services beyond your subscription terms
286
208
 
287
- ## Support
288
-
289
- - **Documentation**: [GitHub Wiki](https://github.com/CloudBedrock/n8n-nodes-cribops/wiki)
290
- - **Issues**: [GitHub Issues](https://github.com/CloudBedrock/n8n-nodes-cribops/issues)
291
- - **Community**: [n8n Community](https://community.n8n.io)
292
- - **Cribops Platform**: [cribops.com](https://cribops.com)
293
-
294
209
  ## Changelog
295
210
 
296
- ### Version 0.1.5
297
- - Initial release
298
- - HTTP webhook support for sending and receiving messages
299
- - File attachment handling with S3 presigned URLs
300
- - Dynamic agent selection with search functionality
301
- - Reply to conversation functionality with webhook context
302
- - Typing indicator support
303
- - Event type filtering for trigger node
304
- - AWS credentials support for future SQS/SNS integration
305
- - Secret token validation for webhooks
306
- - Message metadata support
307
-
308
- ## Related Projects
309
-
310
- - [n8n](https://github.com/n8n-io/n8n) - Workflow automation platform
311
- - [Cribops AI](https://cribops.com) - AI agent platform
312
-
313
- ---
314
-
315
- **Note**: This is a community-maintained package that requires an active Cribops subscription. For official support, please contact the Cribops AI team at [cribops.com](https://cribops.com).
316
-
317
- ## Disclaimer
318
-
319
- This n8n node is provided as an open-source integration tool. CloudBedrock and Cribops are registered trademarks of CloudBedrock, Inc. The use of these trademarks in this project is for identification purposes only and does not imply endorsement.
211
+ ### Version 0.2.0
212
+ - Complete architectural shift: N8N as webhook destination, not source
213
+ - Removed chat/conversation features (moved to separate package)
214
+ - Added error reporting operation for workflow monitoring
215
+ - Added performance metrics reporting
216
+ - Added callback operation for long-running workflows
217
+ - Added progress tracking for batch processing
218
+ - Added workflow analysis for optimization recommendations
219
+ - Updated trigger to receive webhooks FROM Cribops
220
+ - Integration with Cribops' intelligent routing system
221
+
222
+ ### Version 0.1.x
223
+ - Initial releases with chat functionality (deprecated)
@@ -15,13 +15,13 @@ class CribopsApi {
15
15
  },
16
16
  default: '',
17
17
  required: true,
18
- description: 'The API token for authenticating with Cribops platform',
18
+ description: 'The API token for authenticating with Cribops webhook service',
19
19
  },
20
20
  {
21
21
  displayName: 'Base URL',
22
22
  name: 'baseUrl',
23
23
  type: 'string',
24
- default: 'https://cribops.com',
24
+ default: 'https://api.cribops.com',
25
25
  required: true,
26
26
  description: 'Base URL of the Cribops API',
27
27
  },
@@ -37,7 +37,7 @@ class CribopsApi {
37
37
  test = {
38
38
  request: {
39
39
  baseURL: '={{$credentials.baseUrl}}',
40
- url: '/api/v1/agents',
40
+ url: '/api/v1/health',
41
41
  method: 'GET',
42
42
  },
43
43
  };
@@ -0,0 +1,7 @@
1
+ import { ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class HiveApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ documentationUrl: string;
6
+ properties: INodeProperties[];
7
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HiveApi = void 0;
4
+ class HiveApi {
5
+ name = 'hiveApi';
6
+ displayName = 'Hive Accelerator';
7
+ documentationUrl = 'https://docs.cribops.com/hive';
8
+ properties = [
9
+ {
10
+ displayName: 'Host',
11
+ name: 'host',
12
+ type: 'string',
13
+ default: 'localhost',
14
+ required: true,
15
+ description: 'Hive server hostname or IP address',
16
+ },
17
+ {
18
+ displayName: 'Port',
19
+ name: 'port',
20
+ type: 'number',
21
+ default: 6379,
22
+ required: true,
23
+ description: 'Hive server port (Redis protocol)',
24
+ },
25
+ {
26
+ displayName: 'Password',
27
+ name: 'password',
28
+ type: 'string',
29
+ typeOptions: {
30
+ password: true,
31
+ },
32
+ default: '',
33
+ description: 'Optional password for Hive authentication',
34
+ },
35
+ {
36
+ displayName: 'Use TLS',
37
+ name: 'tls',
38
+ type: 'boolean',
39
+ default: false,
40
+ description: 'Whether to use TLS encryption for the connection',
41
+ },
42
+ ];
43
+ }
44
+ exports.HiveApi = HiveApi;
@@ -1,10 +1,5 @@
1
- import { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription, ILoadOptionsFunctions, INodeListSearchResult } from 'n8n-workflow';
1
+ import { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
2
2
  export declare class Cribops implements INodeType {
3
3
  description: INodeTypeDescription;
4
- methods: {
5
- listSearch: {
6
- searchAgents: (this: ILoadOptionsFunctions, filter?: string) => Promise<INodeListSearchResult>;
7
- };
8
- };
9
4
  execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
10
5
  }