n8n-nodes-logicmonitor 0.1.3 → 0.1.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.
@@ -1 +1 @@
1
- {"version":3,"file":"apiRequest.d.ts","sourceRoot":"","sources":["../../../../nodes/LogicMonitor/helpers/apiRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,MAAM,cAAc,CAAC;AA2CtB,wBAAsB,UAAU,CAC/B,IAAI,EAAE,iBAAiB,GAAG,cAAc,GAAG,qBAAqB,EAChE,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,WAAgB,EACtB,KAAK,GAAE,WAAgB,GACrB,OAAO,CAAC,GAAG,CAAC,CA+Dd;AAED,wBAAsB,kBAAkB,CACvC,IAAI,EAAE,iBAAiB,GAAG,qBAAqB,EAC/C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,WAAgB,EACtB,KAAK,GAAE,WAAgB,GACrB,OAAO,CAAC,GAAG,EAAE,CAAC,CA0BhB"}
1
+ {"version":3,"file":"apiRequest.d.ts","sourceRoot":"","sources":["../../../../nodes/LogicMonitor/helpers/apiRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,MAAM,cAAc,CAAC;AA2CtB,wBAAsB,UAAU,CAC/B,IAAI,EAAE,iBAAiB,GAAG,cAAc,GAAG,qBAAqB,EAChE,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,WAAgB,EACtB,KAAK,GAAE,WAAgB,GACrB,OAAO,CAAC,GAAG,CAAC,CAoEd;AAED,wBAAsB,kBAAkB,CACvC,IAAI,EAAE,iBAAiB,GAAG,qBAAqB,EAC/C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,WAAgB,EACtB,KAAK,GAAE,WAAgB,GACrB,OAAO,CAAC,GAAG,EAAE,CAAC,CA0BhB"}
@@ -46,14 +46,14 @@ const errorHandler_1 = require("./errorHandler");
46
46
  * - epochMs is the current time in milliseconds
47
47
  * - requestBody is empty string for GET/DELETE
48
48
  * - resourcePath is the path only, e.g. /device/devices (no /santaba/rest prefix)
49
+ * - Signature = base64( hexdigest(HMAC-SHA256) ) — NOT base64(raw bytes)
49
50
  */
50
51
  function generateLMv1Header(method, resourcePath, body, accessId, accessKey, debug = false) {
51
52
  const timestamp = Date.now();
52
53
  const requestVars = `${method.toUpperCase()}${timestamp}${body}${resourcePath}`;
53
- const signature = crypto
54
- .createHmac('sha256', accessKey)
55
- .update(requestVars)
56
- .digest('base64');
54
+ // LM requires base64 of the hex digest string, not base64 of raw bytes
55
+ const hexDigest = crypto.createHmac('sha256', accessKey).update(requestVars).digest('hex');
56
+ const signature = Buffer.from(hexDigest).toString('base64');
57
57
  if (debug) {
58
58
  console.log('[LogicMonitor] LMv1 debug:');
59
59
  console.log(' method:', method.toUpperCase());
@@ -81,21 +81,26 @@ async function apiRequest(method, endpoint, body = {}, query = {}) {
81
81
  // resourcePath is the endpoint only — no /santaba/rest prefix
82
82
  authorization = generateLMv1Header(method, endpoint, bodyString, credentials.accessId, credentials.accessKey, debug);
83
83
  }
84
- // Build query string
85
- const queryParams = new URLSearchParams();
84
+ // Strip empty values from query params
85
+ const qs = {};
86
86
  for (const [key, value] of Object.entries(query)) {
87
87
  if (value !== undefined && value !== null && value !== '') {
88
- queryParams.append(key, String(value));
88
+ qs[key] = value;
89
89
  }
90
90
  }
91
- const queryString = queryParams.toString();
92
- const url = `${baseUrl}${endpoint}${queryString ? `?${queryString}` : ''}`;
91
+ const url = `${baseUrl}${endpoint}`;
93
92
  if (debug) {
94
93
  console.log('[LogicMonitor] Request:', method.toUpperCase(), url);
94
+ if (Object.keys(qs).length)
95
+ console.log('[LogicMonitor] Query params:', qs);
95
96
  }
96
97
  const options = {
97
98
  method: method.toUpperCase(),
98
99
  url,
100
+ // Pass query params as qs object so request handles encoding correctly.
101
+ // URLSearchParams over-encodes characters like " and = that LM's RSQL
102
+ // filter parser requires unescaped.
103
+ qs,
99
104
  headers: {
100
105
  Authorization: authorization,
101
106
  'Content-Type': 'application/json',
@@ -1 +1 @@
1
- {"version":3,"file":"apiRequest.js","sourceRoot":"","sources":["../../../../nodes/LogicMonitor/helpers/apiRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apiRequest.js","sourceRoot":"","sources":["../../../../nodes/LogicMonitor/helpers/apiRequest.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n-nodes-logicmonitor",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "description": "n8n community node for LogicMonitor API integration",
5
5
  "keywords": [
6
6
  "n8n-community-node-package",