cxtms 1.9.13

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.
Files changed (215) hide show
  1. package/README.md +384 -0
  2. package/dist/cli.d.ts +6 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +4784 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/extractUtils.d.ts +11 -0
  7. package/dist/extractUtils.d.ts.map +1 -0
  8. package/dist/extractUtils.js +19 -0
  9. package/dist/extractUtils.js.map +1 -0
  10. package/dist/index.d.ts +7 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +11 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/types.d.ts +129 -0
  15. package/dist/types.d.ts.map +1 -0
  16. package/dist/types.js +6 -0
  17. package/dist/types.js.map +1 -0
  18. package/dist/utils/schemaLoader.d.ts +17 -0
  19. package/dist/utils/schemaLoader.d.ts.map +1 -0
  20. package/dist/utils/schemaLoader.js +134 -0
  21. package/dist/utils/schemaLoader.js.map +1 -0
  22. package/dist/validator.d.ts +72 -0
  23. package/dist/validator.d.ts.map +1 -0
  24. package/dist/validator.js +432 -0
  25. package/dist/validator.js.map +1 -0
  26. package/dist/workflowValidator.d.ts +103 -0
  27. package/dist/workflowValidator.d.ts.map +1 -0
  28. package/dist/workflowValidator.js +753 -0
  29. package/dist/workflowValidator.js.map +1 -0
  30. package/package.json +51 -0
  31. package/schemas/actions/all.json +27 -0
  32. package/schemas/actions/clipboard.json +46 -0
  33. package/schemas/actions/confirm.json +21 -0
  34. package/schemas/actions/consoleLog.json +16 -0
  35. package/schemas/actions/dialog.json +25 -0
  36. package/schemas/actions/fileDownload.json +16 -0
  37. package/schemas/actions/forEach.json +31 -0
  38. package/schemas/actions/if.json +12 -0
  39. package/schemas/actions/mutation.json +25 -0
  40. package/schemas/actions/navigate.json +18 -0
  41. package/schemas/actions/navigateBack.json +22 -0
  42. package/schemas/actions/navigateBackOrClose.json +21 -0
  43. package/schemas/actions/notification.json +19 -0
  44. package/schemas/actions/openBarcodeScanner.json +104 -0
  45. package/schemas/actions/query.json +32 -0
  46. package/schemas/actions/refresh.json +13 -0
  47. package/schemas/actions/resetDirtyState.json +22 -0
  48. package/schemas/actions/setFields.json +21 -0
  49. package/schemas/actions/setStore.json +13 -0
  50. package/schemas/actions/validateForm.json +15 -0
  51. package/schemas/actions/workflow.json +24 -0
  52. package/schemas/components/README.md +147 -0
  53. package/schemas/components/appComponent.json +58 -0
  54. package/schemas/components/barcodeScanner.json +69 -0
  55. package/schemas/components/button.json +123 -0
  56. package/schemas/components/calendar.json +489 -0
  57. package/schemas/components/card.json +176 -0
  58. package/schemas/components/collection.json +54 -0
  59. package/schemas/components/dataGrid.json +119 -0
  60. package/schemas/components/datasource.json +151 -0
  61. package/schemas/components/dropdown.json +57 -0
  62. package/schemas/components/field-collection.json +618 -0
  63. package/schemas/components/field.json +265 -0
  64. package/schemas/components/form.json +234 -0
  65. package/schemas/components/index.json +71 -0
  66. package/schemas/components/layout.json +69 -0
  67. package/schemas/components/module.json +167 -0
  68. package/schemas/components/navDropdown.json +36 -0
  69. package/schemas/components/navbar.json +78 -0
  70. package/schemas/components/navbarItem.json +28 -0
  71. package/schemas/components/navbarLink.json +36 -0
  72. package/schemas/components/row.json +31 -0
  73. package/schemas/components/slot.json +30 -0
  74. package/schemas/components/tab.json +34 -0
  75. package/schemas/components/tabs.json +35 -0
  76. package/schemas/components/timeline.json +172 -0
  77. package/schemas/components/timelineGrid.json +328 -0
  78. package/schemas/fields/README.md +66 -0
  79. package/schemas/fields/attachment.json +156 -0
  80. package/schemas/fields/autocomplete-googleplaces.json +130 -0
  81. package/schemas/fields/checkbox.json +82 -0
  82. package/schemas/fields/date.json +88 -0
  83. package/schemas/fields/datetime.json +75 -0
  84. package/schemas/fields/email.json +75 -0
  85. package/schemas/fields/index.json +53 -0
  86. package/schemas/fields/number.json +91 -0
  87. package/schemas/fields/password.json +70 -0
  88. package/schemas/fields/radio.json +94 -0
  89. package/schemas/fields/rangedatetime.json +56 -0
  90. package/schemas/fields/select-async.json +334 -0
  91. package/schemas/fields/select.json +115 -0
  92. package/schemas/fields/tel.json +79 -0
  93. package/schemas/fields/text.json +86 -0
  94. package/schemas/fields/textarea.json +95 -0
  95. package/schemas/fields/time.json +91 -0
  96. package/schemas/fields/url.json +74 -0
  97. package/schemas/schema.graphql +12248 -0
  98. package/schemas/schemas.json +610 -0
  99. package/schemas/workflows/activity.json +96 -0
  100. package/schemas/workflows/common/condition.json +48 -0
  101. package/schemas/workflows/common/expression.json +76 -0
  102. package/schemas/workflows/common/mapping.json +173 -0
  103. package/schemas/workflows/common/step.json +38 -0
  104. package/schemas/workflows/flow/aggregation.json +44 -0
  105. package/schemas/workflows/flow/entity.json +129 -0
  106. package/schemas/workflows/flow/state.json +105 -0
  107. package/schemas/workflows/flow/transition.json +143 -0
  108. package/schemas/workflows/input.json +122 -0
  109. package/schemas/workflows/output.json +61 -0
  110. package/schemas/workflows/schedule.json +26 -0
  111. package/schemas/workflows/tasks/accounting-transaction.json +95 -0
  112. package/schemas/workflows/tasks/action-event.json +65 -0
  113. package/schemas/workflows/tasks/all.json +152 -0
  114. package/schemas/workflows/tasks/appmodule.json +56 -0
  115. package/schemas/workflows/tasks/attachment.json +97 -0
  116. package/schemas/workflows/tasks/authentication.json +86 -0
  117. package/schemas/workflows/tasks/caching.json +68 -0
  118. package/schemas/workflows/tasks/charge.json +92 -0
  119. package/schemas/workflows/tasks/commodity.json +92 -0
  120. package/schemas/workflows/tasks/contact-address.json +72 -0
  121. package/schemas/workflows/tasks/contact-payment-method.json +72 -0
  122. package/schemas/workflows/tasks/contact.json +82 -0
  123. package/schemas/workflows/tasks/csv.json +81 -0
  124. package/schemas/workflows/tasks/document-render.json +105 -0
  125. package/schemas/workflows/tasks/document-send.json +84 -0
  126. package/schemas/workflows/tasks/edi.json +157 -0
  127. package/schemas/workflows/tasks/email-send.json +110 -0
  128. package/schemas/workflows/tasks/error.json +72 -0
  129. package/schemas/workflows/tasks/export.json +90 -0
  130. package/schemas/workflows/tasks/filetransfer.json +102 -0
  131. package/schemas/workflows/tasks/flow-transition.json +68 -0
  132. package/schemas/workflows/tasks/foreach.json +69 -0
  133. package/schemas/workflows/tasks/generic.json +47 -0
  134. package/schemas/workflows/tasks/graphql.json +78 -0
  135. package/schemas/workflows/tasks/httpRequest.json +161 -0
  136. package/schemas/workflows/tasks/import.json +64 -0
  137. package/schemas/workflows/tasks/inventory.json +67 -0
  138. package/schemas/workflows/tasks/job.json +88 -0
  139. package/schemas/workflows/tasks/log.json +73 -0
  140. package/schemas/workflows/tasks/map.json +58 -0
  141. package/schemas/workflows/tasks/movement.json +54 -0
  142. package/schemas/workflows/tasks/note.json +59 -0
  143. package/schemas/workflows/tasks/number.json +65 -0
  144. package/schemas/workflows/tasks/order-tracking-event.json +109 -0
  145. package/schemas/workflows/tasks/order.json +139 -0
  146. package/schemas/workflows/tasks/payment.json +85 -0
  147. package/schemas/workflows/tasks/pdf-document.json +60 -0
  148. package/schemas/workflows/tasks/postal-codes.json +92 -0
  149. package/schemas/workflows/tasks/resolve-timezone.json +65 -0
  150. package/schemas/workflows/tasks/setVariable.json +76 -0
  151. package/schemas/workflows/tasks/switch.json +75 -0
  152. package/schemas/workflows/tasks/template.json +73 -0
  153. package/schemas/workflows/tasks/tracking-event.json +137 -0
  154. package/schemas/workflows/tasks/transmission.json +185 -0
  155. package/schemas/workflows/tasks/unzip-file.json +68 -0
  156. package/schemas/workflows/tasks/user.json +70 -0
  157. package/schemas/workflows/tasks/validation.json +99 -0
  158. package/schemas/workflows/tasks/while.json +53 -0
  159. package/schemas/workflows/tasks/workflow-execute.json +82 -0
  160. package/schemas/workflows/trigger.json +90 -0
  161. package/schemas/workflows/variable.json +46 -0
  162. package/schemas/workflows/workflow.json +335 -0
  163. package/scripts/postinstall.js +291 -0
  164. package/scripts/setup-vscode.js +80 -0
  165. package/skills/cxtms-developer/SKILL.md +118 -0
  166. package/skills/cxtms-developer/ref-cli-auth.md +120 -0
  167. package/skills/cxtms-developer/ref-entity-accounting.md +180 -0
  168. package/skills/cxtms-developer/ref-entity-commodity.md +239 -0
  169. package/skills/cxtms-developer/ref-entity-contact.md +163 -0
  170. package/skills/cxtms-developer/ref-entity-geography.md +154 -0
  171. package/skills/cxtms-developer/ref-entity-job.md +77 -0
  172. package/skills/cxtms-developer/ref-entity-notification.md +85 -0
  173. package/skills/cxtms-developer/ref-entity-order-sub.md +160 -0
  174. package/skills/cxtms-developer/ref-entity-order.md +183 -0
  175. package/skills/cxtms-developer/ref-entity-organization.md +41 -0
  176. package/skills/cxtms-developer/ref-entity-rate.md +182 -0
  177. package/skills/cxtms-developer/ref-entity-shared.md +176 -0
  178. package/skills/cxtms-developer/ref-entity-warehouse.md +115 -0
  179. package/skills/cxtms-developer/ref-graphql-query.md +309 -0
  180. package/skills/cxtms-module-builder/SKILL.md +477 -0
  181. package/skills/cxtms-module-builder/ref-components-data.md +293 -0
  182. package/skills/cxtms-module-builder/ref-components-display.md +411 -0
  183. package/skills/cxtms-module-builder/ref-components-forms.md +369 -0
  184. package/skills/cxtms-module-builder/ref-components-interactive.md +317 -0
  185. package/skills/cxtms-module-builder/ref-components-layout.md +390 -0
  186. package/skills/cxtms-module-builder/ref-components-specialized.md +477 -0
  187. package/skills/cxtms-workflow-builder/SKILL.md +438 -0
  188. package/skills/cxtms-workflow-builder/ref-accounting.md +66 -0
  189. package/skills/cxtms-workflow-builder/ref-communication.md +169 -0
  190. package/skills/cxtms-workflow-builder/ref-entity.md +342 -0
  191. package/skills/cxtms-workflow-builder/ref-expressions-ncalc.md +128 -0
  192. package/skills/cxtms-workflow-builder/ref-expressions-template.md +161 -0
  193. package/skills/cxtms-workflow-builder/ref-filetransfer.md +80 -0
  194. package/skills/cxtms-workflow-builder/ref-flow.md +210 -0
  195. package/skills/cxtms-workflow-builder/ref-other.md +157 -0
  196. package/skills/cxtms-workflow-builder/ref-query.md +105 -0
  197. package/skills/cxtms-workflow-builder/ref-utilities.md +417 -0
  198. package/templates/module-configuration.yaml +44 -0
  199. package/templates/module-form.yaml +152 -0
  200. package/templates/module-grid.yaml +229 -0
  201. package/templates/module-select.yaml +139 -0
  202. package/templates/module.yaml +84 -0
  203. package/templates/workflow-api-tracking.yaml +189 -0
  204. package/templates/workflow-basic.yaml +76 -0
  205. package/templates/workflow-document.yaml +155 -0
  206. package/templates/workflow-entity-trigger.yaml +90 -0
  207. package/templates/workflow-ftp-edi.yaml +158 -0
  208. package/templates/workflow-ftp-tracking.yaml +161 -0
  209. package/templates/workflow-mcp-tool.yaml +112 -0
  210. package/templates/workflow-public-api.yaml +135 -0
  211. package/templates/workflow-scheduled-execute.yaml +75 -0
  212. package/templates/workflow-scheduled.yaml +125 -0
  213. package/templates/workflow-utility.yaml +96 -0
  214. package/templates/workflow-webhook.yaml +128 -0
  215. package/templates/workflow.yaml +140 -0
@@ -0,0 +1,90 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "Export Task",
4
+ "description": "Export data to various formats (CSV, XLSX, JSON)",
5
+ "type": "object",
6
+ "properties": {
7
+ "task": {
8
+ "type": "string",
9
+ "enum": ["Utilities/Export@1"],
10
+ "description": "Task type identifier"
11
+ },
12
+ "name": {
13
+ "type": "string",
14
+ "description": "Step name identifier"
15
+ },
16
+ "description": {
17
+ "type": "string",
18
+ "description": "Step description"
19
+ },
20
+ "conditions": {
21
+ "type": "array",
22
+ "items": {
23
+ "type": "object",
24
+ "properties": {
25
+ "expression": {
26
+ "type": "string"
27
+ }
28
+ },
29
+ "required": ["expression"]
30
+ }
31
+ },
32
+ "continueOnError": {
33
+ "type": "boolean"
34
+ },
35
+ "inputs": {
36
+ "type": "object",
37
+ "description": "Export inputs",
38
+ "properties": {
39
+ "data": {
40
+ "description": "Data to export"
41
+ },
42
+ "format": {
43
+ "type": "string",
44
+ "enum": ["csv", "xlsx", "json"],
45
+ "description": "Export format"
46
+ },
47
+ "fileName": {
48
+ "type": "string",
49
+ "description": "Output file name"
50
+ },
51
+ "columns": {
52
+ "type": "array",
53
+ "items": {
54
+ "type": "object",
55
+ "properties": {
56
+ "name": {
57
+ "type": "string"
58
+ },
59
+ "header": {
60
+ "type": "string"
61
+ },
62
+ "mapping": {
63
+ "type": "string"
64
+ }
65
+ }
66
+ },
67
+ "description": "Column definitions"
68
+ }
69
+ },
70
+ "additionalProperties": true
71
+ },
72
+ "outputs": {
73
+ "type": "array",
74
+ "items": {
75
+ "type": "object",
76
+ "properties": {
77
+ "name": {
78
+ "type": "string"
79
+ },
80
+ "mapping": {
81
+ "type": "string"
82
+ }
83
+ },
84
+ "required": ["name", "mapping"]
85
+ }
86
+ }
87
+ },
88
+ "required": ["task"],
89
+ "additionalProperties": true
90
+ }
@@ -0,0 +1,102 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "File Transfer Tasks",
4
+ "description": "SFTP/FTP file transfer operations",
5
+ "type": "object",
6
+ "properties": {
7
+ "task": {
8
+ "type": "string",
9
+ "enum": [
10
+ "FileTransfer/Connect@1",
11
+ "FileTransfer/Disconnect@1",
12
+ "FileTransfer/ListFiles@1",
13
+ "FileTransfer/DownloadFile@1",
14
+ "FileTransfer/UploadFile@1",
15
+ "FileTransfer/MoveFile@1",
16
+ "FileTransfer/DeleteFile@1"
17
+ ],
18
+ "description": "Task type identifier"
19
+ },
20
+ "name": {
21
+ "type": "string",
22
+ "description": "Step name identifier"
23
+ },
24
+ "description": {
25
+ "type": "string",
26
+ "description": "Step description"
27
+ },
28
+ "conditions": {
29
+ "type": "array",
30
+ "items": {
31
+ "type": "object",
32
+ "properties": {
33
+ "expression": { "type": "string" }
34
+ },
35
+ "required": ["expression"]
36
+ }
37
+ },
38
+ "continueOnError": {
39
+ "type": "boolean"
40
+ },
41
+ "inputs": {
42
+ "type": "object",
43
+ "description": "File transfer operation inputs",
44
+ "properties": {
45
+ "connection": {
46
+ "type": "string",
47
+ "description": "Connection reference from Connect step"
48
+ },
49
+ "host": {
50
+ "type": "string",
51
+ "description": "Remote host (for Connect)"
52
+ },
53
+ "port": {
54
+ "type": ["string", "integer"],
55
+ "description": "Remote port (for Connect)"
56
+ },
57
+ "username": {
58
+ "type": "string",
59
+ "description": "Username (for Connect)"
60
+ },
61
+ "password": {
62
+ "type": "string",
63
+ "description": "Password (for Connect)"
64
+ },
65
+ "protocol": {
66
+ "type": "string",
67
+ "description": "Protocol: sftp, ftp, ftps"
68
+ },
69
+ "path": {
70
+ "type": "string",
71
+ "description": "Remote file/directory path"
72
+ },
73
+ "sourcePath": {
74
+ "type": "string",
75
+ "description": "Source path (for MoveFile)"
76
+ },
77
+ "destinationPath": {
78
+ "type": "string",
79
+ "description": "Destination path (for MoveFile)"
80
+ },
81
+ "content": {
82
+ "type": "string",
83
+ "description": "File content (for UploadFile)"
84
+ }
85
+ },
86
+ "additionalProperties": true
87
+ },
88
+ "outputs": {
89
+ "type": "array",
90
+ "items": {
91
+ "type": "object",
92
+ "properties": {
93
+ "name": { "type": "string" },
94
+ "mapping": { "type": "string" }
95
+ },
96
+ "required": ["name", "mapping"]
97
+ }
98
+ }
99
+ },
100
+ "required": ["task"],
101
+ "additionalProperties": true
102
+ }
@@ -0,0 +1,68 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "Flow Transition Task",
4
+ "description": "Trigger a Flow state transition programmatically",
5
+ "type": "object",
6
+ "properties": {
7
+ "task": {
8
+ "type": "string",
9
+ "enum": [
10
+ "Flow/Transition@1"
11
+ ],
12
+ "description": "Task type identifier"
13
+ },
14
+ "name": {
15
+ "type": "string",
16
+ "description": "Step name identifier"
17
+ },
18
+ "description": {
19
+ "type": "string",
20
+ "description": "Step description"
21
+ },
22
+ "conditions": {
23
+ "type": "array",
24
+ "items": {
25
+ "type": "object",
26
+ "properties": {
27
+ "expression": { "type": "string" }
28
+ },
29
+ "required": ["expression"]
30
+ }
31
+ },
32
+ "continueOnError": {
33
+ "type": "boolean"
34
+ },
35
+ "inputs": {
36
+ "type": "object",
37
+ "description": "Flow transition inputs",
38
+ "properties": {
39
+ "entityName": {
40
+ "type": "string",
41
+ "description": "Entity type name"
42
+ },
43
+ "entityId": {
44
+ "type": "string",
45
+ "description": "Entity ID"
46
+ },
47
+ "transition": {
48
+ "type": "string",
49
+ "description": "Transition name to trigger"
50
+ }
51
+ },
52
+ "additionalProperties": true
53
+ },
54
+ "outputs": {
55
+ "type": "array",
56
+ "items": {
57
+ "type": "object",
58
+ "properties": {
59
+ "name": { "type": "string" },
60
+ "mapping": { "type": "string" }
61
+ },
62
+ "required": ["name", "mapping"]
63
+ }
64
+ }
65
+ },
66
+ "required": ["task"],
67
+ "additionalProperties": true
68
+ }
@@ -0,0 +1,69 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "ForEach Task",
4
+ "description": "Iterate over a collection and execute steps for each item",
5
+ "type": "object",
6
+ "properties": {
7
+ "task": {
8
+ "type": "string",
9
+ "const": "foreach",
10
+ "description": "Task type identifier"
11
+ },
12
+ "name": {
13
+ "type": "string",
14
+ "description": "Step name identifier"
15
+ },
16
+ "description": {
17
+ "type": "string",
18
+ "description": "Step description"
19
+ },
20
+ "collection": {
21
+ "type": "string",
22
+ "description": "Expression evaluating to array (e.g., 'activityName.stepName.items')"
23
+ },
24
+ "item": {
25
+ "type": "string",
26
+ "description": "Variable name for current item (default: 'item')"
27
+ },
28
+ "index": {
29
+ "type": "string",
30
+ "description": "Variable name for current index"
31
+ },
32
+ "conditions": {
33
+ "type": "array",
34
+ "items": {
35
+ "type": "object",
36
+ "properties": {
37
+ "expression": {
38
+ "type": "string"
39
+ }
40
+ },
41
+ "required": ["expression"]
42
+ },
43
+ "description": "Conditions for execution"
44
+ },
45
+ "continueOnError": {
46
+ "type": "boolean",
47
+ "description": "Continue on error"
48
+ },
49
+ "steps": {
50
+ "type": "array",
51
+ "description": "Steps to execute for each item",
52
+ "items": {
53
+ "$ref": "generic.json"
54
+ },
55
+ "minItems": 1
56
+ },
57
+ "parallel": {
58
+ "type": "boolean",
59
+ "description": "Execute iterations in parallel"
60
+ },
61
+ "maxParallelism": {
62
+ "type": "integer",
63
+ "minimum": 1,
64
+ "description": "Maximum parallel executions"
65
+ }
66
+ },
67
+ "required": ["task", "collection", "steps"],
68
+ "additionalProperties": true
69
+ }
@@ -0,0 +1,47 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "Generic Workflow Task",
4
+ "description": "Generic task schema for unrecognized task types - validates basic structure",
5
+ "type": "object",
6
+ "properties": {
7
+ "task": {
8
+ "type": "string",
9
+ "description": "Task type identifier"
10
+ },
11
+ "name": {
12
+ "type": "string",
13
+ "description": "Step name identifier"
14
+ },
15
+ "description": {
16
+ "type": "string",
17
+ "description": "Step description"
18
+ },
19
+ "conditions": {
20
+ "type": "array",
21
+ "items": {
22
+ "type": "object",
23
+ "properties": {
24
+ "expression": {
25
+ "type": "string"
26
+ }
27
+ }
28
+ }
29
+ },
30
+ "continueOnError": {
31
+ "type": "boolean"
32
+ },
33
+ "inputs": {
34
+ "type": "object",
35
+ "additionalProperties": true
36
+ },
37
+ "outputs": {
38
+ "type": "array",
39
+ "items": {
40
+ "type": "object",
41
+ "additionalProperties": true
42
+ }
43
+ }
44
+ },
45
+ "required": ["task"],
46
+ "additionalProperties": true
47
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "GraphQL Query Task",
4
+ "description": "Execute GraphQL queries",
5
+ "type": "object",
6
+ "properties": {
7
+ "task": {
8
+ "type": "string",
9
+ "enum": ["Query/GraphQL", "Query/GraphQL@1"],
10
+ "description": "Task type identifier"
11
+ },
12
+ "name": {
13
+ "type": "string",
14
+ "description": "Step name identifier"
15
+ },
16
+ "description": {
17
+ "type": "string",
18
+ "description": "Step description"
19
+ },
20
+ "conditions": {
21
+ "type": "array",
22
+ "items": {
23
+ "type": "object",
24
+ "properties": {
25
+ "expression": {
26
+ "type": "string"
27
+ }
28
+ },
29
+ "required": ["expression"]
30
+ }
31
+ },
32
+ "continueOnError": {
33
+ "type": "boolean"
34
+ },
35
+ "inputs": {
36
+ "type": "object",
37
+ "description": "GraphQL query inputs",
38
+ "properties": {
39
+ "query": {
40
+ "type": "string",
41
+ "description": "GraphQL query string"
42
+ },
43
+ "variables": {
44
+ "type": "object",
45
+ "description": "Query variables (can contain expressions)",
46
+ "additionalProperties": true
47
+ },
48
+ "cacheKey": {
49
+ "type": "string",
50
+ "description": "Cache key for query results"
51
+ },
52
+ "cacheDuration": {
53
+ "type": "string",
54
+ "description": "Cache duration (e.g., '5m', '1h', 'EndOfDay|EST')"
55
+ }
56
+ },
57
+ "required": ["query"],
58
+ "additionalProperties": true
59
+ },
60
+ "outputs": {
61
+ "type": "array",
62
+ "items": {
63
+ "type": "object",
64
+ "properties": {
65
+ "name": {
66
+ "type": "string"
67
+ },
68
+ "mapping": {
69
+ "type": "string"
70
+ }
71
+ },
72
+ "required": ["name", "mapping"]
73
+ }
74
+ }
75
+ },
76
+ "required": ["task"],
77
+ "additionalProperties": true
78
+ }
@@ -0,0 +1,161 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "HTTP Request Task",
4
+ "description": "Make HTTP API requests",
5
+ "type": "object",
6
+ "properties": {
7
+ "task": {
8
+ "type": "string",
9
+ "enum": ["Utilities/HttpRequest@1"],
10
+ "description": "Task type identifier"
11
+ },
12
+ "name": {
13
+ "type": "string",
14
+ "description": "Step name identifier"
15
+ },
16
+ "description": {
17
+ "type": "string",
18
+ "description": "Step description"
19
+ },
20
+ "conditions": {
21
+ "type": "array",
22
+ "items": {
23
+ "type": "object",
24
+ "properties": {
25
+ "expression": {
26
+ "type": "string"
27
+ }
28
+ },
29
+ "required": ["expression"]
30
+ }
31
+ },
32
+ "continueOnError": {
33
+ "type": "boolean"
34
+ },
35
+ "inputs": {
36
+ "type": "object",
37
+ "description": "HTTP request inputs",
38
+ "properties": {
39
+ "url": {
40
+ "type": "string",
41
+ "description": "Request URL"
42
+ },
43
+ "method": {
44
+ "type": "string",
45
+ "enum": ["GET", "POST", "PUT", "PATCH", "DELETE"],
46
+ "description": "HTTP method"
47
+ },
48
+ "contentType": {
49
+ "type": "string",
50
+ "description": "Content-Type header value"
51
+ },
52
+ "headers": {
53
+ "type": "array",
54
+ "items": {
55
+ "type": "object",
56
+ "properties": {
57
+ "name": {
58
+ "type": "string"
59
+ },
60
+ "value": {}
61
+ },
62
+ "required": ["name", "value"]
63
+ },
64
+ "description": "Request headers"
65
+ },
66
+ "body": {
67
+ "description": "Request body (can be string or object)"
68
+ },
69
+ "retryOptions": {
70
+ "type": "object",
71
+ "properties": {
72
+ "limit": {
73
+ "type": "integer",
74
+ "description": "Number of retry attempts"
75
+ },
76
+ "codes": {
77
+ "type": "array",
78
+ "items": {
79
+ "type": "integer"
80
+ },
81
+ "description": "HTTP status codes that trigger a retry (e.g. [429, 502, 503])"
82
+ }
83
+ },
84
+ "description": "Retry configuration with exponential backoff"
85
+ },
86
+ "circuitBreaker": {
87
+ "type": "boolean",
88
+ "default": true,
89
+ "description": "Enable circuit breaker for the target host (default: true). When open, serves stale cache or throws."
90
+ },
91
+ "responseContentType": {
92
+ "type": "string",
93
+ "description": "Expected response content type (e.g., application/pdf, application/json)"
94
+ },
95
+ "actionEvents": {
96
+ "type": "object",
97
+ "description": "Enable action events when the request operates on a specific entity",
98
+ "properties": {
99
+ "enabled": {
100
+ "type": "boolean",
101
+ "description": "Enable action event tracking"
102
+ },
103
+ "eventName": {
104
+ "type": "string",
105
+ "description": "Event name identifier (e.g., carrier.sendParcelInfo)"
106
+ },
107
+ "eventDataExt": {
108
+ "type": "object",
109
+ "description": "Extended event data linking to entity (e.g., orderId)",
110
+ "additionalProperties": true
111
+ }
112
+ }
113
+ },
114
+ "saveToFile": {
115
+ "type": "boolean",
116
+ "description": "When true, saves response body to a temp file instead of returning it in memory. Response returns { StatusCode, Headers, FilePath } instead of body content."
117
+ },
118
+ "cache": {
119
+ "type": "object",
120
+ "properties": {
121
+ "enabled": {
122
+ "type": "boolean",
123
+ "default": true,
124
+ "description": "Enable response caching"
125
+ },
126
+ "duration": {
127
+ "type": "string",
128
+ "default": "1h",
129
+ "description": "Cache duration (e.g. '30s', '5m', '1h', '2d', 'EndOfDay', 'EndOfDay|America/Chicago')"
130
+ },
131
+ "useSlidingExpiration": {
132
+ "type": "boolean",
133
+ "default": false,
134
+ "description": "Use sliding expiration instead of absolute"
135
+ }
136
+ },
137
+ "description": "Response caching configuration. Cache key is auto-generated from url + method + headers + body."
138
+ }
139
+ },
140
+ "required": ["url", "method"],
141
+ "additionalProperties": true
142
+ },
143
+ "outputs": {
144
+ "type": "array",
145
+ "items": {
146
+ "type": "object",
147
+ "properties": {
148
+ "name": {
149
+ "type": "string"
150
+ },
151
+ "mapping": {
152
+ "type": "string"
153
+ }
154
+ },
155
+ "required": ["name", "mapping"]
156
+ }
157
+ }
158
+ },
159
+ "required": ["task", "inputs"],
160
+ "additionalProperties": true
161
+ }
@@ -0,0 +1,64 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "Import Tasks",
4
+ "description": "Data import operations",
5
+ "type": "object",
6
+ "properties": {
7
+ "task": {
8
+ "type": "string",
9
+ "enum": [
10
+ "Utilities/Import@1"
11
+ ],
12
+ "description": "Task type identifier"
13
+ },
14
+ "name": {
15
+ "type": "string",
16
+ "description": "Step name identifier"
17
+ },
18
+ "description": {
19
+ "type": "string",
20
+ "description": "Step description"
21
+ },
22
+ "conditions": {
23
+ "type": "array",
24
+ "items": {
25
+ "type": "object",
26
+ "properties": {
27
+ "expression": { "type": "string" }
28
+ },
29
+ "required": ["expression"]
30
+ }
31
+ },
32
+ "continueOnError": {
33
+ "type": "boolean"
34
+ },
35
+ "inputs": {
36
+ "type": "object",
37
+ "description": "Import operation inputs",
38
+ "properties": {
39
+ "content": {
40
+ "type": "string",
41
+ "description": "File content to import"
42
+ },
43
+ "format": {
44
+ "type": "string",
45
+ "description": "Import format (e.g., csv)"
46
+ }
47
+ },
48
+ "additionalProperties": true
49
+ },
50
+ "outputs": {
51
+ "type": "array",
52
+ "items": {
53
+ "type": "object",
54
+ "properties": {
55
+ "name": { "type": "string" },
56
+ "mapping": { "type": "string" }
57
+ },
58
+ "required": ["name", "mapping"]
59
+ }
60
+ }
61
+ },
62
+ "required": ["task"],
63
+ "additionalProperties": true
64
+ }