@joshuanode/n8n-nodes-scalepad 0.0.4 → 0.0.5
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 +41 -121
- package/dist/nodes/ScalePadCore/ScalePadCore.node.js +798 -11
- package/dist/nodes/ScalePadCore/descriptions/ActionItemDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/ActionItemDescription.js +306 -0
- package/dist/nodes/ScalePadCore/descriptions/AssessmentDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/AssessmentDescription.js +291 -0
- package/dist/nodes/ScalePadCore/descriptions/AssessmentTemplateDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/AssessmentTemplateDescription.js +59 -0
- package/dist/nodes/ScalePadCore/descriptions/ContractDescription.js +242 -21
- package/dist/nodes/ScalePadCore/descriptions/GoalDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/GoalDescription.js +468 -0
- package/dist/nodes/ScalePadCore/descriptions/HardwareLifecycleDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/HardwareLifecycleDescription.js +81 -0
- package/dist/nodes/ScalePadCore/descriptions/InitiativeDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/InitiativeDescription.js +565 -0
- package/dist/nodes/ScalePadCore/descriptions/LmContractDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/LmContractDescription.js +342 -0
- package/dist/nodes/ScalePadCore/descriptions/MeetingDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/MeetingDescription.js +501 -0
- package/dist/nodes/ScalePadCore/descriptions/NoteDescription.d.ts +3 -0
- package/dist/nodes/ScalePadCore/descriptions/NoteDescription.js +289 -0
- package/dist/nodes/ScalePadLifecycleManager/ScalePadLifecycleManager.node.d.ts +6 -0
- package/dist/nodes/ScalePadLifecycleManager/ScalePadLifecycleManager.node.js +837 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/ActionItemDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/ActionItemDescription.js +306 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/AssessmentDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/AssessmentDescription.js +291 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/AssessmentTemplateDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/AssessmentTemplateDescription.js +59 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/ContractDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/ContractDescription.js +342 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/GoalDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/GoalDescription.js +468 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/HardwareLifecycleDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/HardwareLifecycleDescription.js +81 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/InitiativeDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/InitiativeDescription.js +565 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/MeetingDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/MeetingDescription.js +501 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/NoteDescription.d.ts +3 -0
- package/dist/nodes/ScalePadLifecycleManager/descriptions/NoteDescription.js +289 -0
- package/dist/nodes/ScalePadLifecycleManager/scalepad.svg +17 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# n8n-nodes-scalepad
|
|
2
2
|
|
|
3
|
-
This is an n8n community node for **ScalePad Core API
|
|
3
|
+
This is an n8n community node for the **ScalePad Core API**. It provides integration with ScalePad's operational and financial insights platform for MSPs.
|
|
4
4
|
|
|
5
5
|
[Installation](#installation) | [Operations](#operations) | [Credentials](#credentials) | [Usage](#usage) | [Resources](#resources)
|
|
6
6
|
|
|
@@ -28,186 +28,106 @@ npm install @joshuanode/n8n-nodes-scalepad
|
|
|
28
28
|
|
|
29
29
|
This node provides access to the following ScalePad resources:
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
| Resource | Description | Operations |
|
|
31
|
+
| Resource | API Endpoint | Operations |
|
|
34
32
|
|----------|-------------|------------|
|
|
35
|
-
| **Clients** |
|
|
36
|
-
| **Contacts** |
|
|
37
|
-
| **Contracts** |
|
|
38
|
-
| **Hardware Assets** |
|
|
39
|
-
| **
|
|
40
|
-
| **
|
|
41
|
-
| **
|
|
42
|
-
| **
|
|
43
|
-
| **Tickets** | Support ticket records | Get, Get Many |
|
|
44
|
-
|
|
45
|
-
### Operations
|
|
33
|
+
| **Clients** | `/core/v1/clients` | Get, Get Many |
|
|
34
|
+
| **Contacts** | `/core/v1/contacts` | Get, Get Many |
|
|
35
|
+
| **Contracts** | `/core/v1/service/contracts` | Get, Get Many |
|
|
36
|
+
| **Hardware Assets** | `/core/v1/assets/hardware` | Get, Get Many |
|
|
37
|
+
| **Members** | `/core/v1/members` | Get, Get Many |
|
|
38
|
+
| **Opportunities** | `/core/v1/opportunities` | Get, Get Many |
|
|
39
|
+
| **SaaS** | `/core/v1/assets/saas` | Get, Get Many |
|
|
40
|
+
| **Tickets** | `/core/v1/service/tickets` | Get, Get Many |
|
|
46
41
|
|
|
47
42
|
- **Get** - Retrieve a single record by ID
|
|
48
|
-
- **Get Many** - Retrieve multiple records with filtering
|
|
43
|
+
- **Get Many** - Retrieve multiple records with optional filtering and pagination
|
|
49
44
|
|
|
50
45
|
### Features
|
|
51
46
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
47
|
+
- Automatic cursor-based pagination (up to 200 records per page)
|
|
48
|
+
- Filtering support per resource
|
|
49
|
+
- Sorting support (clients)
|
|
50
|
+
- Rate limit error handling (50 req/5sec)
|
|
51
|
+
- Production and Sandbox environment support
|
|
57
52
|
|
|
58
53
|
## Credentials
|
|
59
54
|
|
|
60
|
-
###
|
|
55
|
+
### API Key Authentication
|
|
61
56
|
|
|
62
57
|
**Requirements:**
|
|
63
58
|
- ScalePad Partner account
|
|
64
59
|
- Administrator permissions
|
|
65
60
|
|
|
66
|
-
**Setup
|
|
61
|
+
**Setup:**
|
|
67
62
|
|
|
68
63
|
1. Sign in to [ScalePad Hub](https://hub.scalepad.com)
|
|
69
64
|
2. Navigate to **API (BETA)** in the top menu
|
|
70
65
|
3. Click **+ Generate** to create a new API key
|
|
71
|
-
4.
|
|
72
|
-
5. Set expiry (default: 2 years)
|
|
73
|
-
6. Copy the API key immediately (won't be shown again)
|
|
66
|
+
4. Copy the API key immediately (it won't be shown again)
|
|
74
67
|
|
|
75
|
-
**
|
|
68
|
+
**In n8n:**
|
|
76
69
|
|
|
77
70
|
- **API Key**: Your generated API key
|
|
78
|
-
- **Environment**:
|
|
79
|
-
- `Production` - https://api.scalepad.com
|
|
80
|
-
- `Sandbox` - https://api-sandbox.scalepad.com
|
|
71
|
+
- **Environment**: `Production` or `Sandbox`
|
|
81
72
|
|
|
82
73
|
## Usage
|
|
83
74
|
|
|
84
|
-
###
|
|
75
|
+
### Get All Clients
|
|
85
76
|
|
|
86
77
|
```
|
|
87
78
|
Resource: Client
|
|
88
79
|
Operation: Get Many
|
|
89
80
|
Return All: true
|
|
90
|
-
Additional Fields:
|
|
91
|
-
Filter:
|
|
92
|
-
- Field: status
|
|
93
|
-
- Operator: eq
|
|
94
|
-
- Value: active
|
|
95
81
|
```
|
|
96
82
|
|
|
97
|
-
###
|
|
83
|
+
### Get a Client's Contacts
|
|
98
84
|
|
|
99
85
|
```
|
|
100
|
-
Resource:
|
|
86
|
+
Resource: Contact
|
|
101
87
|
Operation: Get Many
|
|
102
|
-
Return All: true
|
|
103
88
|
Additional Fields:
|
|
104
|
-
|
|
89
|
+
Client ID: <client-uuid>
|
|
105
90
|
```
|
|
106
91
|
|
|
107
|
-
###
|
|
92
|
+
### Get Open Tickets for a Client
|
|
108
93
|
|
|
109
94
|
```
|
|
110
95
|
Resource: Ticket
|
|
111
96
|
Operation: Get Many
|
|
112
|
-
Return All: false
|
|
113
97
|
Limit: 50
|
|
114
98
|
Additional Fields:
|
|
115
|
-
Client ID:
|
|
99
|
+
Client ID: <client-uuid>
|
|
116
100
|
Status: open
|
|
117
|
-
Priority: high
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
### Example 4: List Expiring Warranties
|
|
121
|
-
|
|
122
|
-
```
|
|
123
|
-
Resource: Hardware Lifecycle
|
|
124
|
-
Operation: Get Many
|
|
125
|
-
Return All: true
|
|
126
|
-
Additional Fields:
|
|
127
|
-
Warranty Status: expiring_soon
|
|
128
101
|
```
|
|
129
102
|
|
|
130
103
|
## API Limits
|
|
131
104
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
### Pagination
|
|
139
|
-
|
|
140
|
-
- **Maximum**: 200 records per request
|
|
141
|
-
- **Type**: Cursor-based pagination
|
|
142
|
-
- **Auto-pagination**: Enable "Return All" to automatically fetch all pages
|
|
143
|
-
|
|
144
|
-
### Performance Tips
|
|
145
|
-
|
|
146
|
-
1. **Use filters** to reduce data transfer
|
|
147
|
-
```
|
|
148
|
-
Additional Fields > Client ID: specific-client-id
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
2. **Limit results** for large datasets
|
|
152
|
-
```
|
|
153
|
-
Return All: false
|
|
154
|
-
Limit: 100
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
3. **Apply sorting** for ordered results
|
|
158
|
-
```
|
|
159
|
-
Sort Field: created_at
|
|
160
|
-
Sort Direction: DESC
|
|
161
|
-
```
|
|
105
|
+
| Limit | Value |
|
|
106
|
+
|-------|-------|
|
|
107
|
+
| Rate limit | 50 requests per 5 seconds |
|
|
108
|
+
| Page size | Up to 200 records per request |
|
|
109
|
+
| Pagination | Cursor-based (automatic with "Return All") |
|
|
162
110
|
|
|
163
111
|
## Error Handling
|
|
164
112
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
|
168
|
-
|
|
169
|
-
| **
|
|
170
|
-
| **404** | Resource not found | Verify resource ID and access permissions |
|
|
171
|
-
| **429** | Rate limit exceeded | Reduce request frequency or add delays |
|
|
172
|
-
| **500** | Server error | Retry request or contact ScalePad support |
|
|
173
|
-
|
|
174
|
-
All errors include:
|
|
175
|
-
- HTTP status code
|
|
176
|
-
- Error message
|
|
177
|
-
- Detailed description
|
|
178
|
-
- Suggested resolution
|
|
113
|
+
| Code | Meaning | Resolution |
|
|
114
|
+
|------|---------|------------|
|
|
115
|
+
| **401** | Authentication failed | Check API key validity |
|
|
116
|
+
| **404** | Resource not found | Verify resource ID |
|
|
117
|
+
| **429** | Rate limit exceeded | Reduce request frequency |
|
|
179
118
|
|
|
180
119
|
## API Status
|
|
181
120
|
|
|
182
|
-
**
|
|
183
|
-
|
|
184
|
-
The ScalePad Core API is currently in beta with read-only access (GET operations only). Full CRUD operations (POST, PATCH, DELETE) will be available in future releases based on partner feedback.
|
|
121
|
+
The ScalePad Core API is currently in **beta** with **read-only** access (GET operations only).
|
|
185
122
|
|
|
186
123
|
## Resources
|
|
187
124
|
|
|
188
|
-
- [ScalePad
|
|
189
|
-
- [
|
|
190
|
-
- [n8n Documentation](https://docs.n8n.io/)
|
|
191
|
-
|
|
192
|
-
## Version History
|
|
193
|
-
|
|
194
|
-
### 0.0.1
|
|
195
|
-
- Initial release
|
|
196
|
-
- ScalePad Core API support (read-only)
|
|
197
|
-
- Lifecycle Manager integration
|
|
198
|
-
- 9 resources with Get and Get Many operations
|
|
199
|
-
- Automatic pagination
|
|
200
|
-
- Advanced filtering and sorting
|
|
201
|
-
- Comprehensive error handling
|
|
202
|
-
|
|
203
|
-
## Support
|
|
204
|
-
|
|
205
|
-
- **GitHub Issues**: [Report a bug](https://github.com/ajoshuasmith/n8n-nodes-scalepad/issues)
|
|
206
|
-
- **ScalePad Community**: [community.scalepad.com](https://community.scalepad.com/)
|
|
125
|
+
- [ScalePad API Documentation](https://developer.scalepad.com/)
|
|
126
|
+
- [n8n Community Nodes Documentation](https://docs.n8n.io/integrations/community-nodes/)
|
|
207
127
|
|
|
208
128
|
## Contributing
|
|
209
129
|
|
|
210
|
-
Contributions
|
|
130
|
+
Contributions welcome. Open an issue or submit a pull request on [GitHub](https://github.com/ajoshuasmith/n8n-nodes-scalepad).
|
|
211
131
|
|
|
212
132
|
## License
|
|
213
133
|
|