@manyos/smileconnect-api 1.72.0 → 1.72.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/conf/clients.json CHANGED
@@ -2706,7 +2706,9 @@
2706
2706
  "description": "Login ID"
2707
2707
  }
2708
2708
  },
2709
- "required": ["loginid"]
2709
+ "required": [
2710
+ "loginid"
2711
+ ]
2710
2712
  },
2711
2713
  "responseSchema": {
2712
2714
  "type": "object",
@@ -2716,8 +2718,11 @@
2716
2718
  "description": "Approver username"
2717
2719
  }
2718
2720
  },
2719
- "required": ["approver"]
2720
- }
2721
+ "required": [
2722
+ "approver"
2723
+ ]
2724
+ },
2725
+ "description": "Run scripts associated with this endpoint"
2721
2726
  }
2722
2727
  },
2723
2728
  "scripts": [
@@ -2728,4 +2733,4 @@
2728
2733
  }
2729
2734
  }
2730
2735
  }
2731
- ]
2736
+ ]
package/docs/releases.md CHANGED
@@ -1,7 +1,10 @@
1
1
  # Release Notes
2
2
 
3
3
  ## API
4
- ### 1.72.0 - 13.11.25
4
+ ### 1.72.2 - 14.11.25
5
+ Remove cmdbObjects from openApi spec when no fields are defined.
6
+
7
+ ### 1.72.1 - 13.11.25
5
8
  Improve OpenAPI Documentation generation. Add requestBody for POST and put requests. Allow custom definition for scriptendpoints.
6
9
 
7
10
  ### 1.71.8 - 22.10.25
@@ -294,6 +297,10 @@ Update Record added to [Remedy Adapter](adapter#remedy).
294
297
  The eventmanager will check all outbound webhooks for an event. If one fails, the whole Event will be set to error and the details will be added to the error message.
295
298
 
296
299
  ## GUI
300
+ ### 1.15.0 - 14.11.25
301
+
302
+ Feat: Add Open API Specs Configuration to ScriptEndpoints
303
+
297
304
  ### 1.14.1 - 25.03.25
298
305
 
299
306
  Feat: Add Script Endpoints Config
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@manyos/smileconnect-api",
3
- "version": "1.72.0",
3
+ "version": "1.72.2",
4
4
  "description": "A proxy and abstraction layer for BMCs IT Service Management Suite",
5
5
  "main": "app.js",
6
6
  "scripts": {
package/util/config.js CHANGED
@@ -323,6 +323,35 @@ function checkClientConfig(client) {
323
323
  updateRequired = true;
324
324
  }
325
325
 
326
+ const scriptEnpointKeys = Object.keys(clientConfig.scriptEndpoints);
327
+ scriptEnpointKeys.forEach(scriptEnpointKey => {
328
+ const scriptEnpointConfig = clientConfig.scriptEndpoints[scriptEnpointKey];
329
+ if (!scriptEnpointConfig.options) {
330
+ scriptEnpointConfig.options = {};
331
+ updateRequired = true;
332
+ }
333
+ if (!scriptEnpointConfig.options.openAPISpec) {
334
+ scriptEnpointConfig.options.openAPISpec = {};
335
+ updateRequired = true;
336
+ }
337
+ if (!scriptEnpointConfig.options.openAPISpec.summary) {
338
+ scriptEnpointConfig.options.openAPISpec.summary = "Run scripts associated with this endpoint";
339
+ updateRequired = true;
340
+ }
341
+ if (!scriptEnpointConfig.options.openAPISpec.description) {
342
+ scriptEnpointConfig.options.openAPISpec.description = "Run scripts associated with this endpoint";
343
+ updateRequired = true;
344
+ }
345
+ if (!scriptEnpointConfig.options.openAPISpec.requestSchema) {
346
+ scriptEnpointConfig.options.openAPISpec.requestSchema = {};
347
+ updateRequired = true;
348
+ }
349
+ if (!scriptEnpointConfig.options.openAPISpec.responseSchema) {
350
+ scriptEnpointConfig.options.openAPISpec.responseSchema = {};
351
+ updateRequired = true;
352
+ }
353
+ });
354
+
326
355
  if (clientConfig.options.translateSelectionFields === undefined) {
327
356
  clientConfig.options.translateSelectionFields = true;
328
357
  updateRequired = true;
@@ -492,11 +521,10 @@ async function getDesignPackage(clientId) {
492
521
  //generate docs for cmdb
493
522
  const cmdbMapping = getDeprecatedMappingAsCustom('cmdbobject')
494
523
 
495
- if (clientConfig.cmdbobject && clientConfig.cmdbobject.fields) {
524
+ if (clientConfig.cmdbobject && clientConfig.cmdbobject.fields && clientConfig.cmdbobject.fields.length > 0) {
496
525
  schemas['cmdbobject'] = await getObjectSchema(clientConfig.cmdbobject.fields, cmdbMapping, 'AST:BaseElement')
497
526
  schemas['cmdbobject_create_update'] = await getObjectSchema(clientConfig.cmdbobject.fields, cmdbMapping, 'AST:BaseElement', true)
498
527
 
499
-
500
528
  const cmdbdef = Object.keys(clientConfig.cmdbobject)
501
529
  const classConfigs = cmdbdef.filter(item => item.startsWith('fields_'))
502
530
  const cmdbSchemaList = ['cmdbobject']