@camunda/connectors-element-templates 1.0.5 → 1.0.7

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 (85) hide show
  1. package/package.json +1 -1
  2. package/src/build_element_template_array_json_files.sh +9 -0
  3. package/src/connectors.js +4 -2
  4. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +171 -13
  5. package/src/element-templates/agenticai-aiagent-job-worker.json +1618 -0
  6. package/src/element-templates/agenticai-aiagent-outbound-connector.json +3064 -300
  7. package/src/element-templates/agenticai-mcp-client-outbound-connector.json +1 -1
  8. package/src/element-templates/agenticai-mcp-remote-client-outbound-connector.json +2 -1
  9. package/src/element-templates/asana-connector.json +8 -8
  10. package/src/element-templates/automation-anywhere-outbound-connector.json +1185 -1179
  11. package/src/element-templates/aws-dynamodb-outbound-connector.json +77 -77
  12. package/src/element-templates/aws-eventbridge-connector-boundary.json +20 -20
  13. package/src/element-templates/aws-eventbridge-connector-intermediate.json +38 -38
  14. package/src/element-templates/aws-eventbridge-connector-message-start.json +10 -10
  15. package/src/element-templates/aws-eventbridge-connector-start-event.json +18 -15
  16. package/src/element-templates/aws-eventbridge-outbound-connector.json +50 -50
  17. package/src/element-templates/aws-lambda-outbound-connector.json +279 -279
  18. package/src/element-templates/aws-s3-outbound-connector.json +30 -30
  19. package/src/element-templates/aws-sagemaker-outbound-connector.json +50 -50
  20. package/src/element-templates/aws-sns-inbound-boundary.json +486 -486
  21. package/src/element-templates/aws-sns-inbound-intermediate.json +491 -491
  22. package/src/element-templates/aws-sns-inbound-message-start.json +98 -98
  23. package/src/element-templates/aws-sns-inbound-start-event.json +133 -133
  24. package/src/element-templates/aws-sns-outbound-connector.json +423 -423
  25. package/src/element-templates/aws-sqs-boundary-connector.json +58 -58
  26. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +523 -523
  27. package/src/element-templates/aws-sqs-outbound-connector.json +692 -692
  28. package/src/element-templates/aws-sqs-start-event-connector.json +709 -709
  29. package/src/element-templates/aws-sqs-start-message.json +460 -460
  30. package/src/element-templates/azure-blobstorage-outbound-connector.json +1 -1
  31. package/src/element-templates/blue-prism-connector.json +53 -53
  32. package/src/element-templates/csv-outbound-connector.json +804 -0
  33. package/src/element-templates/easy-post-connector.json +151 -151
  34. package/src/element-templates/email-inbound-connector-intermediate.json +19 -19
  35. package/src/element-templates/email-message-start-event-connector.json +19 -19
  36. package/src/element-templates/email-outbound-connector.json +199 -199
  37. package/src/element-templates/embeddings-vector-database-outbound-connector.json +3478 -170
  38. package/src/element-templates/github-connector.json +277 -277
  39. package/src/element-templates/github-webhook-connector-intermediate.json +44 -44
  40. package/src/element-templates/github-webhook-connector-start-event.json +29 -26
  41. package/src/element-templates/gitlab-connector.json +990 -990
  42. package/src/element-templates/google-drive-outbound-connector.json +423 -423
  43. package/src/element-templates/google-gemini-outbound-connector.json +32 -32
  44. package/src/element-templates/google-maps-platform-connector.json +17 -17
  45. package/src/element-templates/google-sheets-outbound-connector.json +2550 -2550
  46. package/src/element-templates/graphql-outbound-connector.json +1179 -1179
  47. package/src/element-templates/http-json-connector.json +2280 -2280
  48. package/src/element-templates/http-polling-boundary-catch-event-connector.json +256 -553
  49. package/src/element-templates/http-polling-connector.json +262 -559
  50. package/src/element-templates/hugging-face-connector.json +34 -34
  51. package/src/element-templates/jdbc-outbound-connector.json +402 -0
  52. package/src/element-templates/kafka-inbound-connector-boundary.json +1052 -1052
  53. package/src/element-templates/kafka-inbound-connector-intermediate.json +1088 -1088
  54. package/src/element-templates/kafka-inbound-connector-start-message.json +112 -112
  55. package/src/element-templates/kafka-inbound-connector.json +3 -0
  56. package/src/element-templates/kafka-outbound-connector.json +617 -617
  57. package/src/element-templates/microsoft-office365-mail-connector.json +32 -32
  58. package/src/element-templates/microsoft-teams-outbound-connector.json +1783 -1783
  59. package/src/element-templates/openai-connector.json +144 -144
  60. package/src/element-templates/operate-connector.json +66 -62
  61. package/src/element-templates/power-automate-connector.json +10 -10
  62. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +439 -439
  63. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +474 -474
  64. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +11 -11
  65. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +597 -597
  66. package/src/element-templates/rabbitmq-outbound-connector.json +622 -622
  67. package/src/element-templates/salesforce-connector.json +44 -44
  68. package/src/element-templates/sendgrid-outbound-connector.json +633 -633
  69. package/src/element-templates/slack-inbound-boundary.json +184 -184
  70. package/src/element-templates/slack-inbound-intermediate.json +168 -168
  71. package/src/element-templates/slack-inbound-message-start.json +201 -201
  72. package/src/element-templates/slack-inbound-start-event.json +320 -317
  73. package/src/element-templates/slack-outbound-connector.json +1185 -1185
  74. package/src/element-templates/twilio-connector.json +26 -26
  75. package/src/element-templates/twilio-webhook-boundary-connector.json +28 -28
  76. package/src/element-templates/twilio-webhook-connector.json +3 -0
  77. package/src/element-templates/twilio-webhook-intermediate-connector.json +31 -31
  78. package/src/element-templates/twilio-webhook-message-start-connector.json +8 -8
  79. package/src/element-templates/uipath-connector.json +10 -10
  80. package/src/element-templates/webhook-connector-boundary.json +629 -629
  81. package/src/element-templates/webhook-connector-intermediate.json +268 -268
  82. package/src/element-templates/webhook-connector-start-event.json +1563 -1560
  83. package/src/element-templates/webhook-connector-start-message.json +1258 -1258
  84. package/src/element-templates/whatsapp-connector.json +39 -39
  85. package/src/element-templates/idp-extraction-outbound-connector.json +0 -932
@@ -4,8 +4,11 @@
4
4
  "name": "Slack Outbound Connector",
5
5
  "id": "io.camunda.connectors.Slack.v1",
6
6
  "description": "Create a channel or send a message to a channel or user",
7
+ "metadata": {
8
+ "keywords": []
9
+ },
7
10
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
8
- "version": 3,
11
+ "version": 7,
9
12
  "category": {
10
13
  "id": "connectors",
11
14
  "name": "Connectors"
@@ -14,6 +17,9 @@
14
17
  "elementType": {
15
18
  "value": "bpmn:ServiceTask"
16
19
  },
20
+ "engines": {
21
+ "camunda": "^8.3"
22
+ },
17
23
  "groups": [
18
24
  {
19
25
  "id": "authentication",
@@ -35,6 +41,10 @@
35
41
  "id": "invite",
36
42
  "label": "Invite"
37
43
  },
44
+ {
45
+ "id": "connector",
46
+ "label": "Connector"
47
+ },
38
48
  {
39
49
  "id": "output",
40
50
  "label": "Output mapping"
@@ -193,6 +203,24 @@
193
203
  },
194
204
  "type": "String"
195
205
  },
206
+ {
207
+ "id": "data.documents",
208
+ "label": "attachments",
209
+ "description": "<a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">Camunda documents</a> can be added as attachments",
210
+ "optional": true,
211
+ "feel": "required",
212
+ "group": "message",
213
+ "binding": {
214
+ "name": "data.documents",
215
+ "type": "zeebe:input"
216
+ },
217
+ "condition": {
218
+ "property": "method",
219
+ "equals": "chat.postMessage",
220
+ "type": "simple"
221
+ },
222
+ "type": "String"
223
+ },
196
224
  {
197
225
  "id": "data.channel",
198
226
  "label": "Channel/user name/email",
@@ -213,6 +241,23 @@
213
241
  },
214
242
  "type": "String"
215
243
  },
244
+ {
245
+ "id": "data.thread",
246
+ "label": "Thread",
247
+ "optional": true,
248
+ "feel": "optional",
249
+ "group": "channel",
250
+ "binding": {
251
+ "name": "data.thread",
252
+ "type": "zeebe:input"
253
+ },
254
+ "condition": {
255
+ "property": "method",
256
+ "equals": "chat.postMessage",
257
+ "type": "simple"
258
+ },
259
+ "type": "String"
260
+ },
216
261
  {
217
262
  "id": "data.newChannelName",
218
263
  "label": "Channel name",
@@ -220,7 +265,7 @@
220
265
  "constraints": {
221
266
  "notEmpty": true,
222
267
  "pattern": {
223
- "value": "^(=|[-_a-z0-9]{1,80}$)",
268
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
224
269
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
225
270
  }
226
271
  },
@@ -267,6 +312,42 @@
267
312
  }
268
313
  ]
269
314
  },
315
+ {
316
+ "id": "data.channelType",
317
+ "label": "Invite By",
318
+ "optional": false,
319
+ "value": "channelId",
320
+ "group": "invite",
321
+ "binding": {
322
+ "name": "data.channelType",
323
+ "type": "zeebe:input"
324
+ },
325
+ "condition": {
326
+ "allMatch": [
327
+ {
328
+ "property": "method",
329
+ "equals": "conversations.invite",
330
+ "type": "simple"
331
+ },
332
+ {
333
+ "property": "method",
334
+ "equals": "conversations.invite",
335
+ "type": "simple"
336
+ }
337
+ ]
338
+ },
339
+ "type": "Dropdown",
340
+ "choices": [
341
+ {
342
+ "name": "Channel ID",
343
+ "value": "channelId"
344
+ },
345
+ {
346
+ "name": "Channel name",
347
+ "value": "channelName"
348
+ }
349
+ ]
350
+ },
270
351
  {
271
352
  "id": "data.channelName",
272
353
  "label": "Channel name",
@@ -274,7 +355,7 @@
274
355
  "constraints": {
275
356
  "notEmpty": true,
276
357
  "pattern": {
277
- "value": "^(=|[-_a-z0-9]{1,80}$)",
358
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
278
359
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
279
360
  }
280
361
  },
@@ -285,9 +366,51 @@
285
366
  "type": "zeebe:input"
286
367
  },
287
368
  "condition": {
288
- "property": "method",
289
- "equals": "conversations.invite",
290
- "type": "simple"
369
+ "allMatch": [
370
+ {
371
+ "property": "data.channelType",
372
+ "equals": "channelName",
373
+ "type": "simple"
374
+ },
375
+ {
376
+ "property": "method",
377
+ "equals": "conversations.invite",
378
+ "type": "simple"
379
+ }
380
+ ]
381
+ },
382
+ "type": "String"
383
+ },
384
+ {
385
+ "id": "data.channelId",
386
+ "label": "Channel ID",
387
+ "optional": false,
388
+ "constraints": {
389
+ "notEmpty": true,
390
+ "pattern": {
391
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
392
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
393
+ }
394
+ },
395
+ "feel": "optional",
396
+ "group": "invite",
397
+ "binding": {
398
+ "name": "data.channelId",
399
+ "type": "zeebe:input"
400
+ },
401
+ "condition": {
402
+ "allMatch": [
403
+ {
404
+ "property": "data.channelType",
405
+ "equals": "channelId",
406
+ "type": "simple"
407
+ },
408
+ {
409
+ "property": "method",
410
+ "equals": "conversations.invite",
411
+ "type": "simple"
412
+ }
413
+ ]
291
414
  },
292
415
  "type": "String"
293
416
  },
@@ -312,6 +435,30 @@
312
435
  },
313
436
  "type": "String"
314
437
  },
438
+ {
439
+ "id": "version",
440
+ "label": "Version",
441
+ "description": "Version of the element template",
442
+ "value": "7",
443
+ "group": "connector",
444
+ "binding": {
445
+ "key": "elementTemplateVersion",
446
+ "type": "zeebe:taskHeader"
447
+ },
448
+ "type": "Hidden"
449
+ },
450
+ {
451
+ "id": "id",
452
+ "label": "ID",
453
+ "description": "ID of the element template",
454
+ "value": "io.camunda.connectors.Slack.v1",
455
+ "group": "connector",
456
+ "binding": {
457
+ "key": "elementTemplateId",
458
+ "type": "zeebe:taskHeader"
459
+ },
460
+ "type": "Hidden"
461
+ },
315
462
  {
316
463
  "id": "resultVariable",
317
464
  "label": "Result variable",
@@ -365,7 +512,6 @@
365
512
  "label": "Retry backoff",
366
513
  "description": "ISO-8601 duration to wait between retries",
367
514
  "value": "PT0S",
368
- "feel": "optional",
369
515
  "group": "retries",
370
516
  "binding": {
371
517
  "key": "retryBackoff",
@@ -376,9 +522,6 @@
376
522
  ],
377
523
  "icon": {
378
524
  "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
379
- },
380
- "engines": {
381
- "camunda": "^8.5"
382
525
  }
383
526
  },
384
527
  {
@@ -640,9 +783,12 @@
640
783
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
641
784
  "name": "Slack Outbound Connector",
642
785
  "id": "io.camunda.connectors.Slack.v1",
786
+ "version": 2,
643
787
  "description": "Create a channel or send a message to a channel or user",
644
788
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
645
- "version": 4,
789
+ "icon": {
790
+ "contents": "data:image/svg+xml;utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20%20viewBox%3D%220%200%20127%20127%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%3Cpath%20d%3D%22M27.2%2080c0%207.3-5.9%2013.2-13.2%2013.2C6.7%2093.2.8%2087.3.8%2080c0-7.3%205.9-13.2%2013.2-13.2h13.2V80zm6.6%200c0-7.3%205.9-13.2%2013.2-13.2%207.3%200%2013.2%205.9%2013.2%2013.2v33c0%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V80z%22%20fill%3D%22%23E01E5A%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M47%2027c-7.3%200-13.2-5.9-13.2-13.2C33.8%206.5%2039.7.6%2047%20.6c7.3%200%2013.2%205.9%2013.2%2013.2V27H47zm0%206.7c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H13.9C6.6%2060.1.7%2054.2.7%2046.9c0-7.3%205.9-13.2%2013.2-13.2H47z%22%20fill%3D%22%2336C5F0%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M99.9%2046.9c0-7.3%205.9-13.2%2013.2-13.2%207.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H99.9V46.9zm-6.6%200c0%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V13.8C66.9%206.5%2072.8.6%2080.1.6c7.3%200%2013.2%205.9%2013.2%2013.2v33.1z%22%20fill%3D%22%232EB67D%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M80.1%2099.8c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V99.8h13.2zm0-6.6c-7.3%200-13.2-5.9-13.2-13.2%200-7.3%205.9-13.2%2013.2-13.2h33.1c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H80.1z%22%20fill%3D%22%23ECB22E%22%2F%3E%0A%3C%2Fsvg%3E%0A"
791
+ },
646
792
  "category": {
647
793
  "id": "connectors",
648
794
  "name": "Connectors"
@@ -652,14 +798,14 @@
652
798
  "value": "bpmn:ServiceTask"
653
799
  },
654
800
  "groups": [
655
- {
656
- "id": "authentication",
657
- "label": "Authentication"
658
- },
659
801
  {
660
802
  "id": "method",
661
803
  "label": "Method"
662
804
  },
805
+ {
806
+ "id": "authentication",
807
+ "label": "Authentication"
808
+ },
663
809
  {
664
810
  "id": "message",
665
811
  "label": "Message"
@@ -677,48 +823,25 @@
677
823
  "label": "Output mapping"
678
824
  },
679
825
  {
680
- "id": "error",
826
+ "id": "errors",
681
827
  "label": "Error handling"
682
- },
683
- {
684
- "id": "retries",
685
- "label": "Retries"
686
828
  }
687
829
  ],
688
830
  "properties": [
689
831
  {
832
+ "type": "Hidden",
690
833
  "value": "io.camunda:slack:1",
691
834
  "binding": {
692
- "property": "type",
693
- "type": "zeebe:taskDefinition"
694
- },
695
- "type": "Hidden"
696
- },
697
- {
698
- "id": "token",
699
- "label": "OAuth token",
700
- "optional": false,
701
- "constraints": {
702
- "notEmpty": true
703
- },
704
- "feel": "optional",
705
- "group": "authentication",
706
- "binding": {
707
- "name": "token",
708
- "type": "zeebe:input"
709
- },
710
- "type": "String"
835
+ "type": "zeebe:taskDefinition",
836
+ "property": "type"
837
+ }
711
838
  },
712
839
  {
713
- "id": "method",
714
840
  "label": "Method",
715
- "value": "chat.postMessage",
716
841
  "group": "method",
717
- "binding": {
718
- "name": "method",
719
- "type": "zeebe:input"
720
- },
842
+ "id": "method",
721
843
  "type": "Dropdown",
844
+ "value": "chat.postMessage",
722
845
  "choices": [
723
846
  {
724
847
  "name": "Post message",
@@ -732,23 +855,298 @@
732
855
  "name": "Invite to channel",
733
856
  "value": "conversations.invite"
734
857
  }
735
- ]
858
+ ],
859
+ "binding": {
860
+ "type": "zeebe:input",
861
+ "name": "method"
862
+ }
736
863
  },
737
864
  {
738
- "id": "data.messageType",
739
- "label": "Message type",
740
- "optional": false,
741
- "value": "plainText",
742
- "group": "message",
865
+ "label": "OAuth token",
866
+ "group": "authentication",
867
+ "type": "String",
868
+ "feel": "optional",
743
869
  "binding": {
744
- "name": "data.messageType",
745
- "type": "zeebe:input"
870
+ "type": "zeebe:input",
871
+ "name": "token"
872
+ },
873
+ "constraints": {
874
+ "notEmpty": true
875
+ }
876
+ },
877
+ {
878
+ "label": "Channel/user name/email",
879
+ "group": "channel",
880
+ "type": "String",
881
+ "feel": "optional",
882
+ "binding": {
883
+ "type": "zeebe:input",
884
+ "name": "data.channel"
885
+ },
886
+ "constraints": {
887
+ "notEmpty": true,
888
+ "pattern": {
889
+ "value": "(^(#|@|=).*)|(^.+[@].+[.].{2,4}$)",
890
+ "message": "Must be a #channel, @user, email or FEEL expression."
891
+ }
746
892
  },
747
893
  "condition": {
748
- "allMatch": [
749
- {
750
- "property": "method",
751
- "equals": "chat.postMessage",
894
+ "property": "method",
895
+ "equals": "chat.postMessage"
896
+ }
897
+ },
898
+ {
899
+ "label": "New channel name",
900
+ "group": "channel",
901
+ "type": "String",
902
+ "feel": "optional",
903
+ "binding": {
904
+ "type": "zeebe:input",
905
+ "name": "data.newChannelName"
906
+ },
907
+ "constraints": {
908
+ "notEmpty": true,
909
+ "pattern": {
910
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
911
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
912
+ }
913
+ },
914
+ "condition": {
915
+ "property": "method",
916
+ "equals": "conversations.create"
917
+ }
918
+ },
919
+ {
920
+ "label": "Visibility",
921
+ "group": "channel",
922
+ "type": "Dropdown",
923
+ "value": "PUBLIC",
924
+ "optional": false,
925
+ "choices": [
926
+ {
927
+ "name": "Private",
928
+ "value": "PRIVATE"
929
+ },
930
+ {
931
+ "name": "Public",
932
+ "value": "PUBLIC"
933
+ }
934
+ ],
935
+ "binding": {
936
+ "type": "zeebe:input",
937
+ "name": "data.visibility"
938
+ },
939
+ "condition": {
940
+ "property": "method",
941
+ "equals": "conversations.create"
942
+ }
943
+ },
944
+ {
945
+ "label": "Message",
946
+ "group": "message",
947
+ "type": "Text",
948
+ "feel": "optional",
949
+ "binding": {
950
+ "type": "zeebe:input",
951
+ "name": "data.text"
952
+ },
953
+ "constraints": {
954
+ "notEmpty": true
955
+ },
956
+ "condition": {
957
+ "property": "method",
958
+ "equals": "chat.postMessage"
959
+ }
960
+ },
961
+ {
962
+ "label": "Channel name",
963
+ "group": "invite",
964
+ "type": "String",
965
+ "feel": "optional",
966
+ "binding": {
967
+ "type": "zeebe:input",
968
+ "name": "data.channelName"
969
+ },
970
+ "constraints": {
971
+ "notEmpty": true,
972
+ "pattern": {
973
+ "value": "^(=|[-_a-z0-9]{1,80}$)",
974
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
975
+ }
976
+ },
977
+ "condition": {
978
+ "property": "method",
979
+ "equals": "conversations.invite"
980
+ }
981
+ },
982
+ {
983
+ "label": "Users",
984
+ "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
985
+ "group": "invite",
986
+ "type": "String",
987
+ "feel": "optional",
988
+ "binding": {
989
+ "type": "zeebe:input",
990
+ "name": "data.users"
991
+ },
992
+ "constraints": {
993
+ "notEmpty": true
994
+ },
995
+ "condition": {
996
+ "property": "method",
997
+ "equals": "conversations.invite"
998
+ }
999
+ },
1000
+ {
1001
+ "label": "Result variable",
1002
+ "description": "Name of variable to store the response in. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-variable\" target=\"_blank\">documentation</a>",
1003
+ "group": "output",
1004
+ "type": "String",
1005
+ "binding": {
1006
+ "type": "zeebe:taskHeader",
1007
+ "key": "resultVariable"
1008
+ }
1009
+ },
1010
+ {
1011
+ "label": "Result expression",
1012
+ "description": "Expression to map the response into process variables. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-expression\" target=\"_blank\">documentation</a>",
1013
+ "group": "output",
1014
+ "type": "Text",
1015
+ "feel": "required",
1016
+ "binding": {
1017
+ "type": "zeebe:taskHeader",
1018
+ "key": "resultExpression"
1019
+ }
1020
+ },
1021
+ {
1022
+ "label": "Error expression",
1023
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#bpmn-errors\" target=\"_blank\">documentation</a>",
1024
+ "group": "errors",
1025
+ "type": "Text",
1026
+ "feel": "required",
1027
+ "binding": {
1028
+ "type": "zeebe:taskHeader",
1029
+ "key": "errorExpression"
1030
+ }
1031
+ }
1032
+ ],
1033
+ "engines": {
1034
+ "camunda": "^8.2"
1035
+ }
1036
+ },
1037
+ {
1038
+ "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1039
+ "name": "Slack Outbound Connector",
1040
+ "id": "io.camunda.connectors.Slack.v1",
1041
+ "description": "Create a channel or send a message to a channel or user",
1042
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1043
+ "version": 3,
1044
+ "category": {
1045
+ "id": "connectors",
1046
+ "name": "Connectors"
1047
+ },
1048
+ "appliesTo": ["bpmn:Task"],
1049
+ "elementType": {
1050
+ "value": "bpmn:ServiceTask"
1051
+ },
1052
+ "groups": [
1053
+ {
1054
+ "id": "authentication",
1055
+ "label": "Authentication"
1056
+ },
1057
+ {
1058
+ "id": "method",
1059
+ "label": "Method"
1060
+ },
1061
+ {
1062
+ "id": "message",
1063
+ "label": "Message"
1064
+ },
1065
+ {
1066
+ "id": "channel",
1067
+ "label": "Channel"
1068
+ },
1069
+ {
1070
+ "id": "invite",
1071
+ "label": "Invite"
1072
+ },
1073
+ {
1074
+ "id": "output",
1075
+ "label": "Output mapping"
1076
+ },
1077
+ {
1078
+ "id": "error",
1079
+ "label": "Error handling"
1080
+ },
1081
+ {
1082
+ "id": "retries",
1083
+ "label": "Retries"
1084
+ }
1085
+ ],
1086
+ "properties": [
1087
+ {
1088
+ "value": "io.camunda:slack:1",
1089
+ "binding": {
1090
+ "property": "type",
1091
+ "type": "zeebe:taskDefinition"
1092
+ },
1093
+ "type": "Hidden"
1094
+ },
1095
+ {
1096
+ "id": "token",
1097
+ "label": "OAuth token",
1098
+ "optional": false,
1099
+ "constraints": {
1100
+ "notEmpty": true
1101
+ },
1102
+ "feel": "optional",
1103
+ "group": "authentication",
1104
+ "binding": {
1105
+ "name": "token",
1106
+ "type": "zeebe:input"
1107
+ },
1108
+ "type": "String"
1109
+ },
1110
+ {
1111
+ "id": "method",
1112
+ "label": "Method",
1113
+ "value": "chat.postMessage",
1114
+ "group": "method",
1115
+ "binding": {
1116
+ "name": "method",
1117
+ "type": "zeebe:input"
1118
+ },
1119
+ "type": "Dropdown",
1120
+ "choices": [
1121
+ {
1122
+ "name": "Post message",
1123
+ "value": "chat.postMessage"
1124
+ },
1125
+ {
1126
+ "name": "Create channel",
1127
+ "value": "conversations.create"
1128
+ },
1129
+ {
1130
+ "name": "Invite to channel",
1131
+ "value": "conversations.invite"
1132
+ }
1133
+ ]
1134
+ },
1135
+ {
1136
+ "id": "data.messageType",
1137
+ "label": "Message type",
1138
+ "optional": false,
1139
+ "value": "plainText",
1140
+ "group": "message",
1141
+ "binding": {
1142
+ "name": "data.messageType",
1143
+ "type": "zeebe:input"
1144
+ },
1145
+ "condition": {
1146
+ "allMatch": [
1147
+ {
1148
+ "property": "method",
1149
+ "equals": "chat.postMessage",
752
1150
  "type": "simple"
753
1151
  },
754
1152
  {
@@ -850,23 +1248,6 @@
850
1248
  },
851
1249
  "type": "String"
852
1250
  },
853
- {
854
- "id": "data.thread",
855
- "label": "Thread",
856
- "optional": true,
857
- "feel": "optional",
858
- "group": "channel",
859
- "binding": {
860
- "name": "data.thread",
861
- "type": "zeebe:input"
862
- },
863
- "condition": {
864
- "property": "method",
865
- "equals": "chat.postMessage",
866
- "type": "simple"
867
- },
868
- "type": "String"
869
- },
870
1251
  {
871
1252
  "id": "data.newChannelName",
872
1253
  "label": "Channel name",
@@ -874,7 +1255,7 @@
874
1255
  "constraints": {
875
1256
  "notEmpty": true,
876
1257
  "pattern": {
877
- "value": "^(=|([-_a-z0-9]{1,80}$))",
1258
+ "value": "^(=|[-_a-z0-9]{1,80}$)",
878
1259
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
879
1260
  }
880
1261
  },
@@ -928,7 +1309,7 @@
928
1309
  "constraints": {
929
1310
  "notEmpty": true,
930
1311
  "pattern": {
931
- "value": "^(=|([-_a-z0-9]{1,80}$))",
1312
+ "value": "^(=|[-_a-z0-9]{1,80}$)",
932
1313
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
933
1314
  }
934
1315
  },
@@ -1032,19 +1413,19 @@
1032
1413
  "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
1033
1414
  },
1034
1415
  "engines": {
1035
- "camunda": "^8.6"
1416
+ "camunda": "^8.5"
1036
1417
  }
1037
1418
  },
1038
1419
  {
1039
1420
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1040
1421
  "name": "Slack Outbound Connector",
1041
1422
  "id": "io.camunda.connectors.Slack.v1",
1042
- "version": 2,
1043
1423
  "description": "Create a channel or send a message to a channel or user",
1044
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1045
- "icon": {
1046
- "contents": "data:image/svg+xml;utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20%20viewBox%3D%220%200%20127%20127%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%3Cpath%20d%3D%22M27.2%2080c0%207.3-5.9%2013.2-13.2%2013.2C6.7%2093.2.8%2087.3.8%2080c0-7.3%205.9-13.2%2013.2-13.2h13.2V80zm6.6%200c0-7.3%205.9-13.2%2013.2-13.2%207.3%200%2013.2%205.9%2013.2%2013.2v33c0%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V80z%22%20fill%3D%22%23E01E5A%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M47%2027c-7.3%200-13.2-5.9-13.2-13.2C33.8%206.5%2039.7.6%2047%20.6c7.3%200%2013.2%205.9%2013.2%2013.2V27H47zm0%206.7c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H13.9C6.6%2060.1.7%2054.2.7%2046.9c0-7.3%205.9-13.2%2013.2-13.2H47z%22%20fill%3D%22%2336C5F0%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M99.9%2046.9c0-7.3%205.9-13.2%2013.2-13.2%207.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H99.9V46.9zm-6.6%200c0%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V13.8C66.9%206.5%2072.8.6%2080.1.6c7.3%200%2013.2%205.9%2013.2%2013.2v33.1z%22%20fill%3D%22%232EB67D%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M80.1%2099.8c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V99.8h13.2zm0-6.6c-7.3%200-13.2-5.9-13.2-13.2%200-7.3%205.9-13.2%2013.2-13.2h33.1c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H80.1z%22%20fill%3D%22%23ECB22E%22%2F%3E%0A%3C%2Fsvg%3E%0A"
1424
+ "metadata": {
1425
+ "keywords": []
1047
1426
  },
1427
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1428
+ "version": 6,
1048
1429
  "category": {
1049
1430
  "id": "connectors",
1050
1431
  "name": "Connectors"
@@ -1053,15 +1434,18 @@
1053
1434
  "elementType": {
1054
1435
  "value": "bpmn:ServiceTask"
1055
1436
  },
1437
+ "engines": {
1438
+ "camunda": "^8.3"
1439
+ },
1056
1440
  "groups": [
1057
- {
1058
- "id": "method",
1059
- "label": "Method"
1060
- },
1061
1441
  {
1062
1442
  "id": "authentication",
1063
1443
  "label": "Authentication"
1064
1444
  },
1445
+ {
1446
+ "id": "method",
1447
+ "label": "Method"
1448
+ },
1065
1449
  {
1066
1450
  "id": "message",
1067
1451
  "label": "Message"
@@ -1079,25 +1463,48 @@
1079
1463
  "label": "Output mapping"
1080
1464
  },
1081
1465
  {
1082
- "id": "errors",
1466
+ "id": "error",
1083
1467
  "label": "Error handling"
1468
+ },
1469
+ {
1470
+ "id": "retries",
1471
+ "label": "Retries"
1084
1472
  }
1085
1473
  ],
1086
1474
  "properties": [
1087
1475
  {
1088
- "type": "Hidden",
1089
1476
  "value": "io.camunda:slack:1",
1090
1477
  "binding": {
1091
- "type": "zeebe:taskDefinition",
1092
- "property": "type"
1093
- }
1478
+ "property": "type",
1479
+ "type": "zeebe:taskDefinition"
1480
+ },
1481
+ "type": "Hidden"
1482
+ },
1483
+ {
1484
+ "id": "token",
1485
+ "label": "OAuth token",
1486
+ "optional": false,
1487
+ "constraints": {
1488
+ "notEmpty": true
1489
+ },
1490
+ "feel": "optional",
1491
+ "group": "authentication",
1492
+ "binding": {
1493
+ "name": "token",
1494
+ "type": "zeebe:input"
1495
+ },
1496
+ "type": "String"
1094
1497
  },
1095
1498
  {
1499
+ "id": "method",
1096
1500
  "label": "Method",
1501
+ "value": "chat.postMessage",
1097
1502
  "group": "method",
1098
- "id": "method",
1503
+ "binding": {
1504
+ "name": "method",
1505
+ "type": "zeebe:input"
1506
+ },
1099
1507
  "type": "Dropdown",
1100
- "value": "chat.postMessage",
1101
1508
  "choices": [
1102
1509
  {
1103
1510
  "name": "Post message",
@@ -1111,55 +1518,163 @@
1111
1518
  "name": "Invite to channel",
1112
1519
  "value": "conversations.invite"
1113
1520
  }
1114
- ],
1521
+ ]
1522
+ },
1523
+ {
1524
+ "id": "data.messageType",
1525
+ "label": "Message type",
1526
+ "optional": false,
1527
+ "value": "plainText",
1528
+ "group": "message",
1115
1529
  "binding": {
1116
- "type": "zeebe:input",
1117
- "name": "method"
1118
- }
1530
+ "name": "data.messageType",
1531
+ "type": "zeebe:input"
1532
+ },
1533
+ "condition": {
1534
+ "allMatch": [
1535
+ {
1536
+ "property": "method",
1537
+ "equals": "chat.postMessage",
1538
+ "type": "simple"
1539
+ },
1540
+ {
1541
+ "property": "method",
1542
+ "equals": "chat.postMessage",
1543
+ "type": "simple"
1544
+ }
1545
+ ]
1546
+ },
1547
+ "type": "Dropdown",
1548
+ "choices": [
1549
+ {
1550
+ "name": "Plain text",
1551
+ "value": "plainText"
1552
+ },
1553
+ {
1554
+ "name": "Message block",
1555
+ "value": "messageBlock"
1556
+ }
1557
+ ]
1119
1558
  },
1120
1559
  {
1121
- "label": "OAuth token",
1122
- "group": "authentication",
1123
- "type": "String",
1560
+ "id": "data.text",
1561
+ "label": "Message",
1562
+ "optional": false,
1563
+ "constraints": {
1564
+ "notEmpty": true
1565
+ },
1124
1566
  "feel": "optional",
1567
+ "group": "message",
1125
1568
  "binding": {
1126
- "type": "zeebe:input",
1127
- "name": "token"
1569
+ "name": "data.text",
1570
+ "type": "zeebe:input"
1571
+ },
1572
+ "condition": {
1573
+ "allMatch": [
1574
+ {
1575
+ "property": "data.messageType",
1576
+ "equals": "plainText",
1577
+ "type": "simple"
1578
+ },
1579
+ {
1580
+ "property": "method",
1581
+ "equals": "chat.postMessage",
1582
+ "type": "simple"
1583
+ }
1584
+ ]
1128
1585
  },
1586
+ "type": "Text"
1587
+ },
1588
+ {
1589
+ "id": "data.blockContent",
1590
+ "label": "Message block",
1591
+ "description": "An array of rich message content blocks. Learn more at the <a href=\"https://api.slack.com/reference/surfaces/formatting#stack_of_blocks\" target=\"_blank\">official Slack documentation page</a>",
1592
+ "optional": false,
1593
+ "value": "=[\n\t{\n\t\t\"type\": \"header\",\n\t\t\"text\": {\n\t\t\t\"type\": \"plain_text\",\n\t\t\t\"text\": \"New request\"\n\t\t}\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"fields\": [\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*Type:*\\nPaid Time Off\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*Created by:*\\n<example.com|John Doe>\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"fields\": [\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*When:*\\nAug 10 - Aug 13\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"text\": {\n\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\"text\": \"<https://example.com|View request>\"\n\t\t}\n\t}\n]",
1129
1594
  "constraints": {
1130
1595
  "notEmpty": true
1131
- }
1596
+ },
1597
+ "feel": "required",
1598
+ "group": "message",
1599
+ "binding": {
1600
+ "name": "data.blockContent",
1601
+ "type": "zeebe:input"
1602
+ },
1603
+ "condition": {
1604
+ "allMatch": [
1605
+ {
1606
+ "property": "data.messageType",
1607
+ "equals": "messageBlock",
1608
+ "type": "simple"
1609
+ },
1610
+ {
1611
+ "property": "method",
1612
+ "equals": "chat.postMessage",
1613
+ "type": "simple"
1614
+ }
1615
+ ]
1616
+ },
1617
+ "type": "String"
1132
1618
  },
1133
1619
  {
1134
- "label": "Channel/user name/email",
1135
- "group": "channel",
1136
- "type": "String",
1137
- "feel": "optional",
1620
+ "id": "data.documents",
1621
+ "label": "attachments",
1622
+ "description": "<a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">Camunda documents</a> can be added as attachments",
1623
+ "optional": true,
1624
+ "feel": "required",
1625
+ "group": "message",
1138
1626
  "binding": {
1139
- "type": "zeebe:input",
1140
- "name": "data.channel"
1627
+ "name": "data.documents",
1628
+ "type": "zeebe:input"
1141
1629
  },
1630
+ "condition": {
1631
+ "property": "method",
1632
+ "equals": "chat.postMessage",
1633
+ "type": "simple"
1634
+ },
1635
+ "type": "String"
1636
+ },
1637
+ {
1638
+ "id": "data.channel",
1639
+ "label": "Channel/user name/email",
1640
+ "optional": false,
1142
1641
  "constraints": {
1143
- "notEmpty": true,
1144
- "pattern": {
1145
- "value": "(^(#|@|=).*)|(^.+[@].+[.].{2,4}$)",
1146
- "message": "Must be a #channel, @user, email or FEEL expression."
1147
- }
1642
+ "notEmpty": true
1643
+ },
1644
+ "feel": "optional",
1645
+ "group": "channel",
1646
+ "binding": {
1647
+ "name": "data.channel",
1648
+ "type": "zeebe:input"
1148
1649
  },
1149
1650
  "condition": {
1150
1651
  "property": "method",
1151
- "equals": "chat.postMessage"
1152
- }
1652
+ "equals": "chat.postMessage",
1653
+ "type": "simple"
1654
+ },
1655
+ "type": "String"
1153
1656
  },
1154
1657
  {
1155
- "label": "New channel name",
1156
- "group": "channel",
1157
- "type": "String",
1658
+ "id": "data.thread",
1659
+ "label": "Thread",
1660
+ "optional": true,
1158
1661
  "feel": "optional",
1662
+ "group": "channel",
1159
1663
  "binding": {
1160
- "type": "zeebe:input",
1161
- "name": "data.newChannelName"
1664
+ "name": "data.thread",
1665
+ "type": "zeebe:input"
1162
1666
  },
1667
+ "condition": {
1668
+ "property": "method",
1669
+ "equals": "chat.postMessage",
1670
+ "type": "simple"
1671
+ },
1672
+ "type": "String"
1673
+ },
1674
+ {
1675
+ "id": "data.newChannelName",
1676
+ "label": "Channel name",
1677
+ "optional": false,
1163
1678
  "constraints": {
1164
1679
  "notEmpty": true,
1165
1680
  "pattern": {
@@ -1167,136 +1682,247 @@
1167
1682
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1168
1683
  }
1169
1684
  },
1685
+ "feel": "optional",
1686
+ "group": "channel",
1687
+ "binding": {
1688
+ "name": "data.newChannelName",
1689
+ "type": "zeebe:input"
1690
+ },
1170
1691
  "condition": {
1171
1692
  "property": "method",
1172
- "equals": "conversations.create"
1173
- }
1693
+ "equals": "conversations.create",
1694
+ "type": "simple"
1695
+ },
1696
+ "type": "String"
1174
1697
  },
1175
1698
  {
1699
+ "id": "data.visibility",
1176
1700
  "label": "Visibility",
1701
+ "optional": false,
1702
+ "value": "PUBLIC",
1703
+ "constraints": {
1704
+ "notEmpty": true
1705
+ },
1177
1706
  "group": "channel",
1707
+ "binding": {
1708
+ "name": "data.visibility",
1709
+ "type": "zeebe:input"
1710
+ },
1711
+ "condition": {
1712
+ "property": "method",
1713
+ "equals": "conversations.create",
1714
+ "type": "simple"
1715
+ },
1178
1716
  "type": "Dropdown",
1179
- "value": "PUBLIC",
1180
- "optional": false,
1181
1717
  "choices": [
1182
- {
1183
- "name": "Private",
1184
- "value": "PRIVATE"
1185
- },
1186
1718
  {
1187
1719
  "name": "Public",
1188
1720
  "value": "PUBLIC"
1721
+ },
1722
+ {
1723
+ "name": "Private",
1724
+ "value": "PRIVATE"
1189
1725
  }
1190
- ],
1191
- "binding": {
1192
- "type": "zeebe:input",
1193
- "name": "data.visibility"
1194
- },
1195
- "condition": {
1196
- "property": "method",
1197
- "equals": "conversations.create"
1198
- }
1726
+ ]
1199
1727
  },
1200
1728
  {
1201
- "label": "Message",
1202
- "group": "message",
1203
- "type": "Text",
1204
- "feel": "optional",
1729
+ "id": "data.channelType",
1730
+ "label": "Invite By",
1731
+ "optional": false,
1732
+ "value": "channelId",
1733
+ "group": "invite",
1205
1734
  "binding": {
1206
- "type": "zeebe:input",
1207
- "name": "data.text"
1208
- },
1209
- "constraints": {
1210
- "notEmpty": true
1735
+ "name": "data.channelType",
1736
+ "type": "zeebe:input"
1211
1737
  },
1212
1738
  "condition": {
1213
- "property": "method",
1214
- "equals": "chat.postMessage"
1215
- }
1739
+ "allMatch": [
1740
+ {
1741
+ "property": "method",
1742
+ "equals": "conversations.invite",
1743
+ "type": "simple"
1744
+ },
1745
+ {
1746
+ "property": "method",
1747
+ "equals": "conversations.invite",
1748
+ "type": "simple"
1749
+ }
1750
+ ]
1751
+ },
1752
+ "type": "Dropdown",
1753
+ "choices": [
1754
+ {
1755
+ "name": "Channel ID",
1756
+ "value": "channelId"
1757
+ },
1758
+ {
1759
+ "name": "Channel name",
1760
+ "value": "channelName"
1761
+ }
1762
+ ]
1216
1763
  },
1217
1764
  {
1765
+ "id": "data.channelName",
1218
1766
  "label": "Channel name",
1219
- "group": "invite",
1220
- "type": "String",
1767
+ "optional": false,
1768
+ "constraints": {
1769
+ "notEmpty": true,
1770
+ "pattern": {
1771
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
1772
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1773
+ }
1774
+ },
1221
1775
  "feel": "optional",
1776
+ "group": "invite",
1222
1777
  "binding": {
1223
- "type": "zeebe:input",
1224
- "name": "data.channelName"
1778
+ "name": "data.channelName",
1779
+ "type": "zeebe:input"
1780
+ },
1781
+ "condition": {
1782
+ "allMatch": [
1783
+ {
1784
+ "property": "data.channelType",
1785
+ "equals": "channelName",
1786
+ "type": "simple"
1787
+ },
1788
+ {
1789
+ "property": "method",
1790
+ "equals": "conversations.invite",
1791
+ "type": "simple"
1792
+ }
1793
+ ]
1225
1794
  },
1795
+ "type": "String"
1796
+ },
1797
+ {
1798
+ "id": "data.channelId",
1799
+ "label": "Channel ID",
1800
+ "optional": false,
1226
1801
  "constraints": {
1227
1802
  "notEmpty": true,
1228
1803
  "pattern": {
1229
- "value": "^(=|[-_a-z0-9]{1,80}$)",
1804
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
1230
1805
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1231
1806
  }
1232
1807
  },
1808
+ "feel": "optional",
1809
+ "group": "invite",
1810
+ "binding": {
1811
+ "name": "data.channelId",
1812
+ "type": "zeebe:input"
1813
+ },
1233
1814
  "condition": {
1234
- "property": "method",
1235
- "equals": "conversations.invite"
1236
- }
1815
+ "allMatch": [
1816
+ {
1817
+ "property": "data.channelType",
1818
+ "equals": "channelId",
1819
+ "type": "simple"
1820
+ },
1821
+ {
1822
+ "property": "method",
1823
+ "equals": "conversations.invite",
1824
+ "type": "simple"
1825
+ }
1826
+ ]
1827
+ },
1828
+ "type": "String"
1237
1829
  },
1238
1830
  {
1831
+ "id": "data.users",
1239
1832
  "label": "Users",
1240
1833
  "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
1241
- "group": "invite",
1242
- "type": "String",
1243
- "feel": "optional",
1244
- "binding": {
1245
- "type": "zeebe:input",
1246
- "name": "data.users"
1247
- },
1834
+ "optional": false,
1248
1835
  "constraints": {
1249
1836
  "notEmpty": true
1250
1837
  },
1838
+ "feel": "optional",
1839
+ "group": "invite",
1840
+ "binding": {
1841
+ "name": "data.users",
1842
+ "type": "zeebe:input"
1843
+ },
1251
1844
  "condition": {
1252
1845
  "property": "method",
1253
- "equals": "conversations.invite"
1254
- }
1846
+ "equals": "conversations.invite",
1847
+ "type": "simple"
1848
+ },
1849
+ "type": "String"
1255
1850
  },
1256
1851
  {
1852
+ "id": "resultVariable",
1257
1853
  "label": "Result variable",
1258
- "description": "Name of variable to store the response in. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-variable\" target=\"_blank\">documentation</a>",
1854
+ "description": "Name of variable to store the response in",
1259
1855
  "group": "output",
1260
- "type": "String",
1261
1856
  "binding": {
1262
- "type": "zeebe:taskHeader",
1263
- "key": "resultVariable"
1264
- }
1857
+ "key": "resultVariable",
1858
+ "type": "zeebe:taskHeader"
1859
+ },
1860
+ "type": "String"
1265
1861
  },
1266
1862
  {
1863
+ "id": "resultExpression",
1267
1864
  "label": "Result expression",
1268
- "description": "Expression to map the response into process variables. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-expression\" target=\"_blank\">documentation</a>",
1269
- "group": "output",
1270
- "type": "Text",
1865
+ "description": "Expression to map the response into process variables",
1271
1866
  "feel": "required",
1867
+ "group": "output",
1272
1868
  "binding": {
1273
- "type": "zeebe:taskHeader",
1274
- "key": "resultExpression"
1275
- }
1869
+ "key": "resultExpression",
1870
+ "type": "zeebe:taskHeader"
1871
+ },
1872
+ "type": "Text"
1276
1873
  },
1277
1874
  {
1875
+ "id": "errorExpression",
1278
1876
  "label": "Error expression",
1279
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#bpmn-errors\" target=\"_blank\">documentation</a>",
1280
- "group": "errors",
1281
- "type": "Text",
1877
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
1282
1878
  "feel": "required",
1879
+ "group": "error",
1283
1880
  "binding": {
1284
- "type": "zeebe:taskHeader",
1285
- "key": "errorExpression"
1286
- }
1881
+ "key": "errorExpression",
1882
+ "type": "zeebe:taskHeader"
1883
+ },
1884
+ "type": "Text"
1885
+ },
1886
+ {
1887
+ "id": "retryCount",
1888
+ "label": "Retries",
1889
+ "description": "Number of retries",
1890
+ "value": "3",
1891
+ "feel": "optional",
1892
+ "group": "retries",
1893
+ "binding": {
1894
+ "property": "retries",
1895
+ "type": "zeebe:taskDefinition"
1896
+ },
1897
+ "type": "String"
1898
+ },
1899
+ {
1900
+ "id": "retryBackoff",
1901
+ "label": "Retry backoff",
1902
+ "description": "ISO-8601 duration to wait between retries",
1903
+ "value": "PT0S",
1904
+ "group": "retries",
1905
+ "binding": {
1906
+ "key": "retryBackoff",
1907
+ "type": "zeebe:taskHeader"
1908
+ },
1909
+ "type": "String"
1287
1910
  }
1288
1911
  ],
1289
- "engines": {
1290
- "camunda": "^8.2"
1912
+ "icon": {
1913
+ "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
1291
1914
  }
1292
1915
  },
1293
1916
  {
1294
1917
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1295
- "name": "Slack Outbound Connector",
1918
+ "name": "Slack connector",
1296
1919
  "id": "io.camunda.connectors.Slack.v1",
1920
+ "version": 1,
1297
1921
  "description": "Create a channel or send a message to a channel or user",
1298
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1299
- "version": 5,
1922
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/",
1923
+ "icon": {
1924
+ "contents": "data:image/svg+xml;utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20%20viewBox%3D%220%200%20127%20127%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%3Cpath%20d%3D%22M27.2%2080c0%207.3-5.9%2013.2-13.2%2013.2C6.7%2093.2.8%2087.3.8%2080c0-7.3%205.9-13.2%2013.2-13.2h13.2V80zm6.6%200c0-7.3%205.9-13.2%2013.2-13.2%207.3%200%2013.2%205.9%2013.2%2013.2v33c0%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V80z%22%20fill%3D%22%23E01E5A%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M47%2027c-7.3%200-13.2-5.9-13.2-13.2C33.8%206.5%2039.7.6%2047%20.6c7.3%200%2013.2%205.9%2013.2%2013.2V27H47zm0%206.7c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H13.9C6.6%2060.1.7%2054.2.7%2046.9c0-7.3%205.9-13.2%2013.2-13.2H47z%22%20fill%3D%22%2336C5F0%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M99.9%2046.9c0-7.3%205.9-13.2%2013.2-13.2%207.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H99.9V46.9zm-6.6%200c0%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V13.8C66.9%206.5%2072.8.6%2080.1.6c7.3%200%2013.2%205.9%2013.2%2013.2v33.1z%22%20fill%3D%22%232EB67D%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M80.1%2099.8c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V99.8h13.2zm0-6.6c-7.3%200-13.2-5.9-13.2-13.2%200-7.3%205.9-13.2%2013.2-13.2h33.1c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H80.1z%22%20fill%3D%22%23ECB22E%22%2F%3E%0A%3C%2Fsvg%3E%0A"
1925
+ },
1300
1926
  "category": {
1301
1927
  "id": "connectors",
1302
1928
  "name": "Connectors"
@@ -1306,14 +1932,14 @@
1306
1932
  "value": "bpmn:ServiceTask"
1307
1933
  },
1308
1934
  "groups": [
1309
- {
1310
- "id": "authentication",
1311
- "label": "Authentication"
1312
- },
1313
1935
  {
1314
1936
  "id": "method",
1315
1937
  "label": "Method"
1316
1938
  },
1939
+ {
1940
+ "id": "authentication",
1941
+ "label": "Authentication"
1942
+ },
1317
1943
  {
1318
1944
  "id": "message",
1319
1945
  "label": "Message"
@@ -1331,48 +1957,25 @@
1331
1957
  "label": "Output mapping"
1332
1958
  },
1333
1959
  {
1334
- "id": "error",
1960
+ "id": "errors",
1335
1961
  "label": "Error handling"
1336
- },
1337
- {
1338
- "id": "retries",
1339
- "label": "Retries"
1340
1962
  }
1341
1963
  ],
1342
1964
  "properties": [
1343
1965
  {
1966
+ "type": "Hidden",
1344
1967
  "value": "io.camunda:slack:1",
1345
1968
  "binding": {
1346
- "property": "type",
1347
- "type": "zeebe:taskDefinition"
1348
- },
1349
- "type": "Hidden"
1969
+ "type": "zeebe:taskDefinition",
1970
+ "property": "type"
1971
+ }
1350
1972
  },
1351
1973
  {
1352
- "id": "token",
1353
- "label": "OAuth token",
1354
- "optional": false,
1355
- "constraints": {
1356
- "notEmpty": true
1357
- },
1358
- "feel": "optional",
1359
- "group": "authentication",
1360
- "binding": {
1361
- "name": "token",
1362
- "type": "zeebe:input"
1363
- },
1364
- "type": "String"
1365
- },
1366
- {
1367
- "id": "method",
1368
1974
  "label": "Method",
1369
- "value": "chat.postMessage",
1370
1975
  "group": "method",
1371
- "binding": {
1372
- "name": "method",
1373
- "type": "zeebe:input"
1374
- },
1976
+ "id": "method",
1375
1977
  "type": "Dropdown",
1978
+ "value": "chat.postMessage",
1376
1979
  "choices": [
1377
1980
  {
1378
1981
  "name": "Post message",
@@ -1386,145 +1989,55 @@
1386
1989
  "name": "Invite to channel",
1387
1990
  "value": "conversations.invite"
1388
1991
  }
1389
- ]
1390
- },
1391
- {
1392
- "id": "data.messageType",
1393
- "label": "Message type",
1394
- "optional": false,
1395
- "value": "plainText",
1396
- "group": "message",
1992
+ ],
1397
1993
  "binding": {
1398
- "name": "data.messageType",
1399
- "type": "zeebe:input"
1400
- },
1401
- "condition": {
1402
- "allMatch": [
1403
- {
1404
- "property": "method",
1405
- "equals": "chat.postMessage",
1406
- "type": "simple"
1407
- },
1408
- {
1409
- "property": "method",
1410
- "equals": "chat.postMessage",
1411
- "type": "simple"
1412
- }
1413
- ]
1414
- },
1415
- "type": "Dropdown",
1416
- "choices": [
1417
- {
1418
- "name": "Plain text",
1419
- "value": "plainText"
1420
- },
1421
- {
1422
- "name": "Message block",
1423
- "value": "messageBlock"
1424
- }
1425
- ]
1994
+ "type": "zeebe:input",
1995
+ "name": "method"
1996
+ }
1426
1997
  },
1427
1998
  {
1428
- "id": "data.text",
1429
- "label": "Message",
1430
- "optional": false,
1431
- "constraints": {
1432
- "notEmpty": true
1433
- },
1999
+ "label": "OAuth token",
2000
+ "group": "authentication",
2001
+ "type": "String",
1434
2002
  "feel": "optional",
1435
- "group": "message",
1436
2003
  "binding": {
1437
- "name": "data.text",
1438
- "type": "zeebe:input"
1439
- },
1440
- "condition": {
1441
- "allMatch": [
1442
- {
1443
- "property": "data.messageType",
1444
- "equals": "plainText",
1445
- "type": "simple"
1446
- },
1447
- {
1448
- "property": "method",
1449
- "equals": "chat.postMessage",
1450
- "type": "simple"
1451
- }
1452
- ]
2004
+ "type": "zeebe:input",
2005
+ "name": "token"
1453
2006
  },
1454
- "type": "Text"
1455
- },
1456
- {
1457
- "id": "data.blockContent",
1458
- "label": "Message block",
1459
- "description": "An array of rich message content blocks. Learn more at the <a href=\"https://api.slack.com/reference/surfaces/formatting#stack_of_blocks\" target=\"_blank\">official Slack documentation page</a>",
1460
- "optional": false,
1461
- "value": "=[\n\t{\n\t\t\"type\": \"header\",\n\t\t\"text\": {\n\t\t\t\"type\": \"plain_text\",\n\t\t\t\"text\": \"New request\"\n\t\t}\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"fields\": [\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*Type:*\\nPaid Time Off\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*Created by:*\\n<example.com|John Doe>\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"fields\": [\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*When:*\\nAug 10 - Aug 13\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"text\": {\n\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\"text\": \"<https://example.com|View request>\"\n\t\t}\n\t}\n]",
1462
2007
  "constraints": {
1463
2008
  "notEmpty": true
1464
- },
1465
- "feel": "required",
1466
- "group": "message",
1467
- "binding": {
1468
- "name": "data.blockContent",
1469
- "type": "zeebe:input"
1470
- },
1471
- "condition": {
1472
- "allMatch": [
1473
- {
1474
- "property": "data.messageType",
1475
- "equals": "messageBlock",
1476
- "type": "simple"
1477
- },
1478
- {
1479
- "property": "method",
1480
- "equals": "chat.postMessage",
1481
- "type": "simple"
1482
- }
1483
- ]
1484
- },
1485
- "type": "String"
2009
+ }
1486
2010
  },
1487
2011
  {
1488
- "id": "data.channel",
1489
2012
  "label": "Channel/user name/email",
1490
- "optional": false,
1491
- "constraints": {
1492
- "notEmpty": true
1493
- },
1494
- "feel": "optional",
1495
2013
  "group": "channel",
2014
+ "type": "String",
2015
+ "feel": "optional",
1496
2016
  "binding": {
1497
- "name": "data.channel",
1498
- "type": "zeebe:input"
2017
+ "type": "zeebe:input",
2018
+ "name": "data.channel"
2019
+ },
2020
+ "constraints": {
2021
+ "notEmpty": true,
2022
+ "pattern": {
2023
+ "value": "(^(#|@|=).*)|(^.+[@].+[.].{2,4}$)",
2024
+ "message": "Must be a #channel, @user, email or FEEL expression."
2025
+ }
1499
2026
  },
1500
2027
  "condition": {
1501
2028
  "property": "method",
1502
- "equals": "chat.postMessage",
1503
- "type": "simple"
1504
- },
1505
- "type": "String"
2029
+ "equals": "chat.postMessage"
2030
+ }
1506
2031
  },
1507
2032
  {
1508
- "id": "data.thread",
1509
- "label": "Thread",
1510
- "optional": true,
1511
- "feel": "optional",
2033
+ "label": "New channel name",
1512
2034
  "group": "channel",
2035
+ "type": "String",
2036
+ "feel": "optional",
1513
2037
  "binding": {
1514
- "name": "data.thread",
1515
- "type": "zeebe:input"
1516
- },
1517
- "condition": {
1518
- "property": "method",
1519
- "equals": "chat.postMessage",
1520
- "type": "simple"
2038
+ "type": "zeebe:input",
2039
+ "name": "data.newChannelName"
1521
2040
  },
1522
- "type": "String"
1523
- },
1524
- {
1525
- "id": "data.newChannelName",
1526
- "label": "Channel name",
1527
- "optional": false,
1528
2041
  "constraints": {
1529
2042
  "notEmpty": true,
1530
2043
  "pattern": {
@@ -1532,500 +2045,62 @@
1532
2045
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1533
2046
  }
1534
2047
  },
1535
- "feel": "optional",
1536
- "group": "channel",
1537
- "binding": {
1538
- "name": "data.newChannelName",
1539
- "type": "zeebe:input"
1540
- },
1541
2048
  "condition": {
1542
2049
  "property": "method",
1543
- "equals": "conversations.create",
1544
- "type": "simple"
1545
- },
1546
- "type": "String"
2050
+ "equals": "conversations.create"
2051
+ }
1547
2052
  },
1548
2053
  {
1549
- "id": "data.visibility",
1550
2054
  "label": "Visibility",
1551
- "optional": false,
1552
- "value": "PUBLIC",
1553
- "constraints": {
1554
- "notEmpty": true
1555
- },
1556
2055
  "group": "channel",
1557
- "binding": {
1558
- "name": "data.visibility",
1559
- "type": "zeebe:input"
1560
- },
1561
- "condition": {
1562
- "property": "method",
1563
- "equals": "conversations.create",
1564
- "type": "simple"
1565
- },
1566
2056
  "type": "Dropdown",
2057
+ "value": "PUBLIC",
2058
+ "optional": false,
1567
2059
  "choices": [
1568
- {
1569
- "name": "Public",
1570
- "value": "PUBLIC"
1571
- },
1572
2060
  {
1573
2061
  "name": "Private",
1574
2062
  "value": "PRIVATE"
2063
+ },
2064
+ {
2065
+ "name": "Public",
2066
+ "value": "PUBLIC"
1575
2067
  }
1576
- ]
2068
+ ],
2069
+ "binding": {
2070
+ "type": "zeebe:input",
2071
+ "name": "data.visibility"
2072
+ },
2073
+ "condition": {
2074
+ "property": "method",
2075
+ "equals": "conversations.create"
2076
+ }
1577
2077
  },
1578
2078
  {
1579
- "id": "data.channelType",
1580
- "label": "Invite By",
1581
- "optional": false,
1582
- "value": "channelId",
1583
- "group": "invite",
2079
+ "label": "Message",
2080
+ "group": "message",
2081
+ "type": "Text",
2082
+ "feel": "optional",
1584
2083
  "binding": {
1585
- "name": "data.channelType",
1586
- "type": "zeebe:input"
2084
+ "type": "zeebe:input",
2085
+ "name": "data.text"
2086
+ },
2087
+ "constraints": {
2088
+ "notEmpty": true
1587
2089
  },
1588
2090
  "condition": {
1589
- "allMatch": [
1590
- {
1591
- "property": "method",
1592
- "equals": "conversations.invite",
1593
- "type": "simple"
1594
- },
1595
- {
1596
- "property": "method",
1597
- "equals": "conversations.invite",
1598
- "type": "simple"
1599
- }
1600
- ]
2091
+ "property": "method",
2092
+ "equals": "chat.postMessage"
2093
+ }
2094
+ },
2095
+ {
2096
+ "label": "Channel name",
2097
+ "group": "invite",
2098
+ "type": "String",
2099
+ "feel": "optional",
2100
+ "binding": {
2101
+ "type": "zeebe:input",
2102
+ "name": "data.channelName"
1601
2103
  },
1602
- "type": "Dropdown",
1603
- "choices": [
1604
- {
1605
- "name": "Channel ID",
1606
- "value": "channelId"
1607
- },
1608
- {
1609
- "name": "Channel name",
1610
- "value": "channelName"
1611
- }
1612
- ]
1613
- },
1614
- {
1615
- "id": "data.channelName",
1616
- "label": "Channel name",
1617
- "optional": false,
1618
- "constraints": {
1619
- "notEmpty": true,
1620
- "pattern": {
1621
- "value": "^(=|([-_a-z0-9]{1,80}$))",
1622
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1623
- }
1624
- },
1625
- "feel": "optional",
1626
- "group": "invite",
1627
- "binding": {
1628
- "name": "data.channelName",
1629
- "type": "zeebe:input"
1630
- },
1631
- "condition": {
1632
- "allMatch": [
1633
- {
1634
- "property": "data.channelType",
1635
- "equals": "channelName",
1636
- "type": "simple"
1637
- },
1638
- {
1639
- "property": "method",
1640
- "equals": "conversations.invite",
1641
- "type": "simple"
1642
- }
1643
- ]
1644
- },
1645
- "type": "String"
1646
- },
1647
- {
1648
- "id": "data.channelId",
1649
- "label": "Channel ID",
1650
- "optional": false,
1651
- "constraints": {
1652
- "notEmpty": true,
1653
- "pattern": {
1654
- "value": "^(=|([-_a-z0-9]{1,80}$))",
1655
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1656
- }
1657
- },
1658
- "feel": "optional",
1659
- "group": "invite",
1660
- "binding": {
1661
- "name": "data.channelId",
1662
- "type": "zeebe:input"
1663
- },
1664
- "condition": {
1665
- "allMatch": [
1666
- {
1667
- "property": "data.channelType",
1668
- "equals": "channelId",
1669
- "type": "simple"
1670
- },
1671
- {
1672
- "property": "method",
1673
- "equals": "conversations.invite",
1674
- "type": "simple"
1675
- }
1676
- ]
1677
- },
1678
- "type": "String"
1679
- },
1680
- {
1681
- "id": "data.users",
1682
- "label": "Users",
1683
- "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
1684
- "optional": false,
1685
- "constraints": {
1686
- "notEmpty": true
1687
- },
1688
- "feel": "optional",
1689
- "group": "invite",
1690
- "binding": {
1691
- "name": "data.users",
1692
- "type": "zeebe:input"
1693
- },
1694
- "condition": {
1695
- "property": "method",
1696
- "equals": "conversations.invite",
1697
- "type": "simple"
1698
- },
1699
- "type": "String"
1700
- },
1701
- {
1702
- "id": "resultVariable",
1703
- "label": "Result variable",
1704
- "description": "Name of variable to store the response in",
1705
- "group": "output",
1706
- "binding": {
1707
- "key": "resultVariable",
1708
- "type": "zeebe:taskHeader"
1709
- },
1710
- "type": "String"
1711
- },
1712
- {
1713
- "id": "resultExpression",
1714
- "label": "Result expression",
1715
- "description": "Expression to map the response into process variables",
1716
- "feel": "required",
1717
- "group": "output",
1718
- "binding": {
1719
- "key": "resultExpression",
1720
- "type": "zeebe:taskHeader"
1721
- },
1722
- "type": "Text"
1723
- },
1724
- {
1725
- "id": "errorExpression",
1726
- "label": "Error expression",
1727
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
1728
- "feel": "required",
1729
- "group": "error",
1730
- "binding": {
1731
- "key": "errorExpression",
1732
- "type": "zeebe:taskHeader"
1733
- },
1734
- "type": "Text"
1735
- },
1736
- {
1737
- "id": "retryCount",
1738
- "label": "Retries",
1739
- "description": "Number of retries",
1740
- "value": "3",
1741
- "feel": "optional",
1742
- "group": "retries",
1743
- "binding": {
1744
- "property": "retries",
1745
- "type": "zeebe:taskDefinition"
1746
- },
1747
- "type": "String"
1748
- },
1749
- {
1750
- "id": "retryBackoff",
1751
- "label": "Retry backoff",
1752
- "description": "ISO-8601 duration to wait between retries",
1753
- "value": "PT0S",
1754
- "feel": "optional",
1755
- "group": "retries",
1756
- "binding": {
1757
- "key": "retryBackoff",
1758
- "type": "zeebe:taskHeader"
1759
- },
1760
- "type": "String"
1761
- }
1762
- ],
1763
- "icon": {
1764
- "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
1765
- },
1766
- "engines": {
1767
- "camunda": "^8.6"
1768
- }
1769
- },
1770
- {
1771
- "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1772
- "name": "Slack Outbound Connector",
1773
- "id": "io.camunda.connectors.Slack.v1",
1774
- "description": "Create a channel or send a message to a channel or user",
1775
- "metadata": {
1776
- "keywords": []
1777
- },
1778
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1779
- "version": 6,
1780
- "category": {
1781
- "id": "connectors",
1782
- "name": "Connectors"
1783
- },
1784
- "appliesTo": ["bpmn:Task"],
1785
- "elementType": {
1786
- "value": "bpmn:ServiceTask"
1787
- },
1788
- "engines": {
1789
- "camunda": "^8.3"
1790
- },
1791
- "groups": [
1792
- {
1793
- "id": "authentication",
1794
- "label": "Authentication"
1795
- },
1796
- {
1797
- "id": "method",
1798
- "label": "Method"
1799
- },
1800
- {
1801
- "id": "message",
1802
- "label": "Message"
1803
- },
1804
- {
1805
- "id": "channel",
1806
- "label": "Channel"
1807
- },
1808
- {
1809
- "id": "invite",
1810
- "label": "Invite"
1811
- },
1812
- {
1813
- "id": "output",
1814
- "label": "Output mapping"
1815
- },
1816
- {
1817
- "id": "error",
1818
- "label": "Error handling"
1819
- },
1820
- {
1821
- "id": "retries",
1822
- "label": "Retries"
1823
- }
1824
- ],
1825
- "properties": [
1826
- {
1827
- "value": "io.camunda:slack:1",
1828
- "binding": {
1829
- "property": "type",
1830
- "type": "zeebe:taskDefinition"
1831
- },
1832
- "type": "Hidden"
1833
- },
1834
- {
1835
- "id": "token",
1836
- "label": "OAuth token",
1837
- "optional": false,
1838
- "constraints": {
1839
- "notEmpty": true
1840
- },
1841
- "feel": "optional",
1842
- "group": "authentication",
1843
- "binding": {
1844
- "name": "token",
1845
- "type": "zeebe:input"
1846
- },
1847
- "type": "String"
1848
- },
1849
- {
1850
- "id": "method",
1851
- "label": "Method",
1852
- "value": "chat.postMessage",
1853
- "group": "method",
1854
- "binding": {
1855
- "name": "method",
1856
- "type": "zeebe:input"
1857
- },
1858
- "type": "Dropdown",
1859
- "choices": [
1860
- {
1861
- "name": "Post message",
1862
- "value": "chat.postMessage"
1863
- },
1864
- {
1865
- "name": "Create channel",
1866
- "value": "conversations.create"
1867
- },
1868
- {
1869
- "name": "Invite to channel",
1870
- "value": "conversations.invite"
1871
- }
1872
- ]
1873
- },
1874
- {
1875
- "id": "data.messageType",
1876
- "label": "Message type",
1877
- "optional": false,
1878
- "value": "plainText",
1879
- "group": "message",
1880
- "binding": {
1881
- "name": "data.messageType",
1882
- "type": "zeebe:input"
1883
- },
1884
- "condition": {
1885
- "allMatch": [
1886
- {
1887
- "property": "method",
1888
- "equals": "chat.postMessage",
1889
- "type": "simple"
1890
- },
1891
- {
1892
- "property": "method",
1893
- "equals": "chat.postMessage",
1894
- "type": "simple"
1895
- }
1896
- ]
1897
- },
1898
- "type": "Dropdown",
1899
- "choices": [
1900
- {
1901
- "name": "Plain text",
1902
- "value": "plainText"
1903
- },
1904
- {
1905
- "name": "Message block",
1906
- "value": "messageBlock"
1907
- }
1908
- ]
1909
- },
1910
- {
1911
- "id": "data.text",
1912
- "label": "Message",
1913
- "optional": false,
1914
- "constraints": {
1915
- "notEmpty": true
1916
- },
1917
- "feel": "optional",
1918
- "group": "message",
1919
- "binding": {
1920
- "name": "data.text",
1921
- "type": "zeebe:input"
1922
- },
1923
- "condition": {
1924
- "allMatch": [
1925
- {
1926
- "property": "data.messageType",
1927
- "equals": "plainText",
1928
- "type": "simple"
1929
- },
1930
- {
1931
- "property": "method",
1932
- "equals": "chat.postMessage",
1933
- "type": "simple"
1934
- }
1935
- ]
1936
- },
1937
- "type": "Text"
1938
- },
1939
- {
1940
- "id": "data.blockContent",
1941
- "label": "Message block",
1942
- "description": "An array of rich message content blocks. Learn more at the <a href=\"https://api.slack.com/reference/surfaces/formatting#stack_of_blocks\" target=\"_blank\">official Slack documentation page</a>",
1943
- "optional": false,
1944
- "value": "=[\n\t{\n\t\t\"type\": \"header\",\n\t\t\"text\": {\n\t\t\t\"type\": \"plain_text\",\n\t\t\t\"text\": \"New request\"\n\t\t}\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"fields\": [\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*Type:*\\nPaid Time Off\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*Created by:*\\n<example.com|John Doe>\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"fields\": [\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*When:*\\nAug 10 - Aug 13\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"text\": {\n\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\"text\": \"<https://example.com|View request>\"\n\t\t}\n\t}\n]",
1945
- "constraints": {
1946
- "notEmpty": true
1947
- },
1948
- "feel": "required",
1949
- "group": "message",
1950
- "binding": {
1951
- "name": "data.blockContent",
1952
- "type": "zeebe:input"
1953
- },
1954
- "condition": {
1955
- "allMatch": [
1956
- {
1957
- "property": "data.messageType",
1958
- "equals": "messageBlock",
1959
- "type": "simple"
1960
- },
1961
- {
1962
- "property": "method",
1963
- "equals": "chat.postMessage",
1964
- "type": "simple"
1965
- }
1966
- ]
1967
- },
1968
- "type": "String"
1969
- },
1970
- {
1971
- "id": "data.documents",
1972
- "label": "attachments",
1973
- "description": "<a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">Camunda documents</a> can be added as attachments",
1974
- "optional": true,
1975
- "feel": "required",
1976
- "group": "message",
1977
- "binding": {
1978
- "name": "data.documents",
1979
- "type": "zeebe:input"
1980
- },
1981
- "condition": {
1982
- "property": "method",
1983
- "equals": "chat.postMessage",
1984
- "type": "simple"
1985
- },
1986
- "type": "String"
1987
- },
1988
- {
1989
- "id": "data.channel",
1990
- "label": "Channel/user name/email",
1991
- "optional": false,
1992
- "constraints": {
1993
- "notEmpty": true
1994
- },
1995
- "feel": "optional",
1996
- "group": "channel",
1997
- "binding": {
1998
- "name": "data.channel",
1999
- "type": "zeebe:input"
2000
- },
2001
- "condition": {
2002
- "property": "method",
2003
- "equals": "chat.postMessage",
2004
- "type": "simple"
2005
- },
2006
- "type": "String"
2007
- },
2008
- {
2009
- "id": "data.thread",
2010
- "label": "Thread",
2011
- "optional": true,
2012
- "feel": "optional",
2013
- "group": "channel",
2014
- "binding": {
2015
- "name": "data.thread",
2016
- "type": "zeebe:input"
2017
- },
2018
- "condition": {
2019
- "property": "method",
2020
- "equals": "chat.postMessage",
2021
- "type": "simple"
2022
- },
2023
- "type": "String"
2024
- },
2025
- {
2026
- "id": "data.newChannelName",
2027
- "label": "Channel name",
2028
- "optional": false,
2029
2104
  "constraints": {
2030
2105
  "notEmpty": true,
2031
2106
  "pattern": {
@@ -2033,247 +2108,73 @@
2033
2108
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
2034
2109
  }
2035
2110
  },
2036
- "feel": "optional",
2037
- "group": "channel",
2038
- "binding": {
2039
- "name": "data.newChannelName",
2040
- "type": "zeebe:input"
2041
- },
2042
- "condition": {
2043
- "property": "method",
2044
- "equals": "conversations.create",
2045
- "type": "simple"
2046
- },
2047
- "type": "String"
2048
- },
2049
- {
2050
- "id": "data.visibility",
2051
- "label": "Visibility",
2052
- "optional": false,
2053
- "value": "PUBLIC",
2054
- "constraints": {
2055
- "notEmpty": true
2056
- },
2057
- "group": "channel",
2058
- "binding": {
2059
- "name": "data.visibility",
2060
- "type": "zeebe:input"
2061
- },
2062
2111
  "condition": {
2063
2112
  "property": "method",
2064
- "equals": "conversations.create",
2065
- "type": "simple"
2066
- },
2067
- "type": "Dropdown",
2068
- "choices": [
2069
- {
2070
- "name": "Public",
2071
- "value": "PUBLIC"
2072
- },
2073
- {
2074
- "name": "Private",
2075
- "value": "PRIVATE"
2076
- }
2077
- ]
2078
- },
2079
- {
2080
- "id": "data.channelType",
2081
- "label": "Invite By",
2082
- "optional": false,
2083
- "value": "channelId",
2084
- "group": "invite",
2085
- "binding": {
2086
- "name": "data.channelType",
2087
- "type": "zeebe:input"
2088
- },
2089
- "condition": {
2090
- "allMatch": [
2091
- {
2092
- "property": "method",
2093
- "equals": "conversations.invite",
2094
- "type": "simple"
2095
- },
2096
- {
2097
- "property": "method",
2098
- "equals": "conversations.invite",
2099
- "type": "simple"
2100
- }
2101
- ]
2102
- },
2103
- "type": "Dropdown",
2104
- "choices": [
2105
- {
2106
- "name": "Channel ID",
2107
- "value": "channelId"
2108
- },
2109
- {
2110
- "name": "Channel name",
2111
- "value": "channelName"
2112
- }
2113
- ]
2114
- },
2115
- {
2116
- "id": "data.channelName",
2117
- "label": "Channel name",
2118
- "optional": false,
2119
- "constraints": {
2120
- "notEmpty": true,
2121
- "pattern": {
2122
- "value": "^(=|([-_a-z0-9]{1,80}$))",
2123
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
2124
- }
2125
- },
2126
- "feel": "optional",
2127
- "group": "invite",
2128
- "binding": {
2129
- "name": "data.channelName",
2130
- "type": "zeebe:input"
2131
- },
2132
- "condition": {
2133
- "allMatch": [
2134
- {
2135
- "property": "data.channelType",
2136
- "equals": "channelName",
2137
- "type": "simple"
2138
- },
2139
- {
2140
- "property": "method",
2141
- "equals": "conversations.invite",
2142
- "type": "simple"
2143
- }
2144
- ]
2145
- },
2146
- "type": "String"
2147
- },
2148
- {
2149
- "id": "data.channelId",
2150
- "label": "Channel ID",
2151
- "optional": false,
2152
- "constraints": {
2153
- "notEmpty": true,
2154
- "pattern": {
2155
- "value": "^(=|([-_a-z0-9]{1,80}$))",
2156
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
2157
- }
2158
- },
2159
- "feel": "optional",
2160
- "group": "invite",
2161
- "binding": {
2162
- "name": "data.channelId",
2163
- "type": "zeebe:input"
2164
- },
2165
- "condition": {
2166
- "allMatch": [
2167
- {
2168
- "property": "data.channelType",
2169
- "equals": "channelId",
2170
- "type": "simple"
2171
- },
2172
- {
2173
- "property": "method",
2174
- "equals": "conversations.invite",
2175
- "type": "simple"
2176
- }
2177
- ]
2178
- },
2179
- "type": "String"
2113
+ "equals": "conversations.invite"
2114
+ }
2180
2115
  },
2181
2116
  {
2182
- "id": "data.users",
2183
2117
  "label": "Users",
2184
2118
  "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
2185
- "optional": false,
2186
- "constraints": {
2187
- "notEmpty": true
2188
- },
2119
+ "group": "invite",
2120
+ "type": "String",
2189
2121
  "feel": "optional",
2190
- "group": "invite",
2191
2122
  "binding": {
2192
- "name": "data.users",
2193
- "type": "zeebe:input"
2123
+ "type": "zeebe:input",
2124
+ "name": "data.users"
2125
+ },
2126
+ "constraints": {
2127
+ "notEmpty": true
2194
2128
  },
2195
2129
  "condition": {
2196
2130
  "property": "method",
2197
- "equals": "conversations.invite",
2198
- "type": "simple"
2199
- },
2200
- "type": "String"
2131
+ "equals": "conversations.invite"
2132
+ }
2201
2133
  },
2202
2134
  {
2203
- "id": "resultVariable",
2204
2135
  "label": "Result variable",
2205
- "description": "Name of variable to store the response in",
2136
+ "description": "Name of variable to store the response in. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-variable\" target=\"_blank\">documentation</a>",
2206
2137
  "group": "output",
2138
+ "type": "String",
2207
2139
  "binding": {
2208
- "key": "resultVariable",
2209
- "type": "zeebe:taskHeader"
2210
- },
2211
- "type": "String"
2140
+ "type": "zeebe:taskHeader",
2141
+ "key": "resultVariable"
2142
+ }
2212
2143
  },
2213
2144
  {
2214
- "id": "resultExpression",
2215
2145
  "label": "Result expression",
2216
- "description": "Expression to map the response into process variables",
2217
- "feel": "required",
2146
+ "description": "Expression to map the response into process variables. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-expression\" target=\"_blank\">documentation</a>",
2218
2147
  "group": "output",
2148
+ "type": "Text",
2149
+ "feel": "required",
2219
2150
  "binding": {
2220
- "key": "resultExpression",
2221
- "type": "zeebe:taskHeader"
2222
- },
2223
- "type": "Text"
2151
+ "type": "zeebe:taskHeader",
2152
+ "key": "resultExpression"
2153
+ }
2224
2154
  },
2225
2155
  {
2226
- "id": "errorExpression",
2227
2156
  "label": "Error expression",
2228
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
2157
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#bpmn-errors\" target=\"_blank\">documentation</a>",
2158
+ "group": "errors",
2159
+ "type": "Text",
2229
2160
  "feel": "required",
2230
- "group": "error",
2231
- "binding": {
2232
- "key": "errorExpression",
2233
- "type": "zeebe:taskHeader"
2234
- },
2235
- "type": "Text"
2236
- },
2237
- {
2238
- "id": "retryCount",
2239
- "label": "Retries",
2240
- "description": "Number of retries",
2241
- "value": "3",
2242
- "feel": "optional",
2243
- "group": "retries",
2244
- "binding": {
2245
- "property": "retries",
2246
- "type": "zeebe:taskDefinition"
2247
- },
2248
- "type": "String"
2249
- },
2250
- {
2251
- "id": "retryBackoff",
2252
- "label": "Retry backoff",
2253
- "description": "ISO-8601 duration to wait between retries",
2254
- "value": "PT0S",
2255
- "group": "retries",
2256
2161
  "binding": {
2257
- "key": "retryBackoff",
2258
- "type": "zeebe:taskHeader"
2259
- },
2260
- "type": "String"
2162
+ "type": "zeebe:taskHeader",
2163
+ "key": "errorExpression"
2164
+ }
2261
2165
  }
2262
2166
  ],
2263
- "icon": {
2264
- "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
2167
+ "engines": {
2168
+ "camunda": "^8.2"
2265
2169
  }
2266
2170
  },
2267
2171
  {
2268
2172
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2269
- "name": "Slack connector",
2173
+ "name": "Slack Outbound Connector",
2270
2174
  "id": "io.camunda.connectors.Slack.v1",
2271
- "version": 1,
2272
2175
  "description": "Create a channel or send a message to a channel or user",
2273
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/",
2274
- "icon": {
2275
- "contents": "data:image/svg+xml;utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20%20viewBox%3D%220%200%20127%20127%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%3Cpath%20d%3D%22M27.2%2080c0%207.3-5.9%2013.2-13.2%2013.2C6.7%2093.2.8%2087.3.8%2080c0-7.3%205.9-13.2%2013.2-13.2h13.2V80zm6.6%200c0-7.3%205.9-13.2%2013.2-13.2%207.3%200%2013.2%205.9%2013.2%2013.2v33c0%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V80z%22%20fill%3D%22%23E01E5A%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M47%2027c-7.3%200-13.2-5.9-13.2-13.2C33.8%206.5%2039.7.6%2047%20.6c7.3%200%2013.2%205.9%2013.2%2013.2V27H47zm0%206.7c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H13.9C6.6%2060.1.7%2054.2.7%2046.9c0-7.3%205.9-13.2%2013.2-13.2H47z%22%20fill%3D%22%2336C5F0%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M99.9%2046.9c0-7.3%205.9-13.2%2013.2-13.2%207.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H99.9V46.9zm-6.6%200c0%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V13.8C66.9%206.5%2072.8.6%2080.1.6c7.3%200%2013.2%205.9%2013.2%2013.2v33.1z%22%20fill%3D%22%232EB67D%22%2F%3E%0A%20%20%3Cpath%20d%3D%22M80.1%2099.8c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2-7.3%200-13.2-5.9-13.2-13.2V99.8h13.2zm0-6.6c-7.3%200-13.2-5.9-13.2-13.2%200-7.3%205.9-13.2%2013.2-13.2h33.1c7.3%200%2013.2%205.9%2013.2%2013.2%200%207.3-5.9%2013.2-13.2%2013.2H80.1z%22%20fill%3D%22%23ECB22E%22%2F%3E%0A%3C%2Fsvg%3E%0A"
2276
- },
2176
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
2177
+ "version": 4,
2277
2178
  "category": {
2278
2179
  "id": "connectors",
2279
2180
  "name": "Connectors"
@@ -2283,14 +2184,14 @@
2283
2184
  "value": "bpmn:ServiceTask"
2284
2185
  },
2285
2186
  "groups": [
2286
- {
2287
- "id": "method",
2288
- "label": "Method"
2289
- },
2290
2187
  {
2291
2188
  "id": "authentication",
2292
2189
  "label": "Authentication"
2293
2190
  },
2191
+ {
2192
+ "id": "method",
2193
+ "label": "Method"
2194
+ },
2294
2195
  {
2295
2196
  "id": "message",
2296
2197
  "label": "Message"
@@ -2308,25 +2209,48 @@
2308
2209
  "label": "Output mapping"
2309
2210
  },
2310
2211
  {
2311
- "id": "errors",
2212
+ "id": "error",
2312
2213
  "label": "Error handling"
2214
+ },
2215
+ {
2216
+ "id": "retries",
2217
+ "label": "Retries"
2313
2218
  }
2314
2219
  ],
2315
2220
  "properties": [
2316
2221
  {
2317
- "type": "Hidden",
2318
2222
  "value": "io.camunda:slack:1",
2319
2223
  "binding": {
2320
- "type": "zeebe:taskDefinition",
2321
- "property": "type"
2322
- }
2224
+ "property": "type",
2225
+ "type": "zeebe:taskDefinition"
2226
+ },
2227
+ "type": "Hidden"
2228
+ },
2229
+ {
2230
+ "id": "token",
2231
+ "label": "OAuth token",
2232
+ "optional": false,
2233
+ "constraints": {
2234
+ "notEmpty": true
2235
+ },
2236
+ "feel": "optional",
2237
+ "group": "authentication",
2238
+ "binding": {
2239
+ "name": "token",
2240
+ "type": "zeebe:input"
2241
+ },
2242
+ "type": "String"
2323
2243
  },
2324
2244
  {
2245
+ "id": "method",
2325
2246
  "label": "Method",
2247
+ "value": "chat.postMessage",
2326
2248
  "group": "method",
2327
- "id": "method",
2249
+ "binding": {
2250
+ "name": "method",
2251
+ "type": "zeebe:input"
2252
+ },
2328
2253
  "type": "Dropdown",
2329
- "value": "chat.postMessage",
2330
2254
  "choices": [
2331
2255
  {
2332
2256
  "name": "Post message",
@@ -2340,55 +2264,145 @@
2340
2264
  "name": "Invite to channel",
2341
2265
  "value": "conversations.invite"
2342
2266
  }
2343
- ],
2267
+ ]
2268
+ },
2269
+ {
2270
+ "id": "data.messageType",
2271
+ "label": "Message type",
2272
+ "optional": false,
2273
+ "value": "plainText",
2274
+ "group": "message",
2344
2275
  "binding": {
2345
- "type": "zeebe:input",
2346
- "name": "method"
2347
- }
2276
+ "name": "data.messageType",
2277
+ "type": "zeebe:input"
2278
+ },
2279
+ "condition": {
2280
+ "allMatch": [
2281
+ {
2282
+ "property": "method",
2283
+ "equals": "chat.postMessage",
2284
+ "type": "simple"
2285
+ },
2286
+ {
2287
+ "property": "method",
2288
+ "equals": "chat.postMessage",
2289
+ "type": "simple"
2290
+ }
2291
+ ]
2292
+ },
2293
+ "type": "Dropdown",
2294
+ "choices": [
2295
+ {
2296
+ "name": "Plain text",
2297
+ "value": "plainText"
2298
+ },
2299
+ {
2300
+ "name": "Message block",
2301
+ "value": "messageBlock"
2302
+ }
2303
+ ]
2348
2304
  },
2349
2305
  {
2350
- "label": "OAuth token",
2351
- "group": "authentication",
2352
- "type": "String",
2306
+ "id": "data.text",
2307
+ "label": "Message",
2308
+ "optional": false,
2309
+ "constraints": {
2310
+ "notEmpty": true
2311
+ },
2353
2312
  "feel": "optional",
2313
+ "group": "message",
2354
2314
  "binding": {
2355
- "type": "zeebe:input",
2356
- "name": "token"
2315
+ "name": "data.text",
2316
+ "type": "zeebe:input"
2317
+ },
2318
+ "condition": {
2319
+ "allMatch": [
2320
+ {
2321
+ "property": "data.messageType",
2322
+ "equals": "plainText",
2323
+ "type": "simple"
2324
+ },
2325
+ {
2326
+ "property": "method",
2327
+ "equals": "chat.postMessage",
2328
+ "type": "simple"
2329
+ }
2330
+ ]
2357
2331
  },
2332
+ "type": "Text"
2333
+ },
2334
+ {
2335
+ "id": "data.blockContent",
2336
+ "label": "Message block",
2337
+ "description": "An array of rich message content blocks. Learn more at the <a href=\"https://api.slack.com/reference/surfaces/formatting#stack_of_blocks\" target=\"_blank\">official Slack documentation page</a>",
2338
+ "optional": false,
2339
+ "value": "=[\n\t{\n\t\t\"type\": \"header\",\n\t\t\"text\": {\n\t\t\t\"type\": \"plain_text\",\n\t\t\t\"text\": \"New request\"\n\t\t}\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"fields\": [\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*Type:*\\nPaid Time Off\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*Created by:*\\n<example.com|John Doe>\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"fields\": [\n\t\t\t{\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \"*When:*\\nAug 10 - Aug 13\"\n\t\t\t}\n\t\t]\n\t},\n\t{\n\t\t\"type\": \"section\",\n\t\t\"text\": {\n\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\"text\": \"<https://example.com|View request>\"\n\t\t}\n\t}\n]",
2358
2340
  "constraints": {
2359
2341
  "notEmpty": true
2360
- }
2342
+ },
2343
+ "feel": "required",
2344
+ "group": "message",
2345
+ "binding": {
2346
+ "name": "data.blockContent",
2347
+ "type": "zeebe:input"
2348
+ },
2349
+ "condition": {
2350
+ "allMatch": [
2351
+ {
2352
+ "property": "data.messageType",
2353
+ "equals": "messageBlock",
2354
+ "type": "simple"
2355
+ },
2356
+ {
2357
+ "property": "method",
2358
+ "equals": "chat.postMessage",
2359
+ "type": "simple"
2360
+ }
2361
+ ]
2362
+ },
2363
+ "type": "String"
2361
2364
  },
2362
2365
  {
2366
+ "id": "data.channel",
2363
2367
  "label": "Channel/user name/email",
2364
- "group": "channel",
2365
- "type": "String",
2368
+ "optional": false,
2369
+ "constraints": {
2370
+ "notEmpty": true
2371
+ },
2366
2372
  "feel": "optional",
2373
+ "group": "channel",
2367
2374
  "binding": {
2368
- "type": "zeebe:input",
2369
- "name": "data.channel"
2370
- },
2371
- "constraints": {
2372
- "notEmpty": true,
2373
- "pattern": {
2374
- "value": "(^(#|@|=).*)|(^.+[@].+[.].{2,4}$)",
2375
- "message": "Must be a #channel, @user, email or FEEL expression."
2376
- }
2375
+ "name": "data.channel",
2376
+ "type": "zeebe:input"
2377
2377
  },
2378
2378
  "condition": {
2379
2379
  "property": "method",
2380
- "equals": "chat.postMessage"
2381
- }
2380
+ "equals": "chat.postMessage",
2381
+ "type": "simple"
2382
+ },
2383
+ "type": "String"
2382
2384
  },
2383
2385
  {
2384
- "label": "New channel name",
2385
- "group": "channel",
2386
- "type": "String",
2386
+ "id": "data.thread",
2387
+ "label": "Thread",
2388
+ "optional": true,
2387
2389
  "feel": "optional",
2390
+ "group": "channel",
2388
2391
  "binding": {
2389
- "type": "zeebe:input",
2390
- "name": "data.newChannelName"
2392
+ "name": "data.thread",
2393
+ "type": "zeebe:input"
2394
+ },
2395
+ "condition": {
2396
+ "property": "method",
2397
+ "equals": "chat.postMessage",
2398
+ "type": "simple"
2391
2399
  },
2400
+ "type": "String"
2401
+ },
2402
+ {
2403
+ "id": "data.newChannelName",
2404
+ "label": "Channel name",
2405
+ "optional": false,
2392
2406
  "constraints": {
2393
2407
  "notEmpty": true,
2394
2408
  "pattern": {
@@ -2396,62 +2410,53 @@
2396
2410
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
2397
2411
  }
2398
2412
  },
2399
- "condition": {
2400
- "property": "method",
2401
- "equals": "conversations.create"
2402
- }
2403
- },
2404
- {
2405
- "label": "Visibility",
2413
+ "feel": "optional",
2406
2414
  "group": "channel",
2407
- "type": "Dropdown",
2408
- "value": "PUBLIC",
2409
- "optional": false,
2410
- "choices": [
2411
- {
2412
- "name": "Private",
2413
- "value": "PRIVATE"
2414
- },
2415
- {
2416
- "name": "Public",
2417
- "value": "PUBLIC"
2418
- }
2419
- ],
2420
2415
  "binding": {
2421
- "type": "zeebe:input",
2422
- "name": "data.visibility"
2416
+ "name": "data.newChannelName",
2417
+ "type": "zeebe:input"
2423
2418
  },
2424
2419
  "condition": {
2425
2420
  "property": "method",
2426
- "equals": "conversations.create"
2427
- }
2421
+ "equals": "conversations.create",
2422
+ "type": "simple"
2423
+ },
2424
+ "type": "String"
2428
2425
  },
2429
2426
  {
2430
- "label": "Message",
2431
- "group": "message",
2432
- "type": "Text",
2433
- "feel": "optional",
2434
- "binding": {
2435
- "type": "zeebe:input",
2436
- "name": "data.text"
2437
- },
2427
+ "id": "data.visibility",
2428
+ "label": "Visibility",
2429
+ "optional": false,
2430
+ "value": "PUBLIC",
2438
2431
  "constraints": {
2439
2432
  "notEmpty": true
2440
2433
  },
2434
+ "group": "channel",
2435
+ "binding": {
2436
+ "name": "data.visibility",
2437
+ "type": "zeebe:input"
2438
+ },
2441
2439
  "condition": {
2442
2440
  "property": "method",
2443
- "equals": "chat.postMessage"
2444
- }
2441
+ "equals": "conversations.create",
2442
+ "type": "simple"
2443
+ },
2444
+ "type": "Dropdown",
2445
+ "choices": [
2446
+ {
2447
+ "name": "Public",
2448
+ "value": "PUBLIC"
2449
+ },
2450
+ {
2451
+ "name": "Private",
2452
+ "value": "PRIVATE"
2453
+ }
2454
+ ]
2445
2455
  },
2446
2456
  {
2457
+ "id": "data.channelName",
2447
2458
  "label": "Channel name",
2448
- "group": "invite",
2449
- "type": "String",
2450
- "feel": "optional",
2451
- "binding": {
2452
- "type": "zeebe:input",
2453
- "name": "data.channelName"
2454
- },
2459
+ "optional": false,
2455
2460
  "constraints": {
2456
2461
  "notEmpty": true,
2457
2462
  "pattern": {
@@ -2459,64 +2464,107 @@
2459
2464
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
2460
2465
  }
2461
2466
  },
2467
+ "feel": "optional",
2468
+ "group": "invite",
2469
+ "binding": {
2470
+ "name": "data.channelName",
2471
+ "type": "zeebe:input"
2472
+ },
2462
2473
  "condition": {
2463
2474
  "property": "method",
2464
- "equals": "conversations.invite"
2465
- }
2475
+ "equals": "conversations.invite",
2476
+ "type": "simple"
2477
+ },
2478
+ "type": "String"
2466
2479
  },
2467
2480
  {
2481
+ "id": "data.users",
2468
2482
  "label": "Users",
2469
2483
  "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
2470
- "group": "invite",
2471
- "type": "String",
2472
- "feel": "optional",
2473
- "binding": {
2474
- "type": "zeebe:input",
2475
- "name": "data.users"
2476
- },
2484
+ "optional": false,
2477
2485
  "constraints": {
2478
2486
  "notEmpty": true
2479
2487
  },
2488
+ "feel": "optional",
2489
+ "group": "invite",
2490
+ "binding": {
2491
+ "name": "data.users",
2492
+ "type": "zeebe:input"
2493
+ },
2480
2494
  "condition": {
2481
2495
  "property": "method",
2482
- "equals": "conversations.invite"
2483
- }
2496
+ "equals": "conversations.invite",
2497
+ "type": "simple"
2498
+ },
2499
+ "type": "String"
2484
2500
  },
2485
2501
  {
2502
+ "id": "resultVariable",
2486
2503
  "label": "Result variable",
2487
- "description": "Name of variable to store the response in. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-variable\" target=\"_blank\">documentation</a>",
2504
+ "description": "Name of variable to store the response in",
2488
2505
  "group": "output",
2489
- "type": "String",
2490
2506
  "binding": {
2491
- "type": "zeebe:taskHeader",
2492
- "key": "resultVariable"
2493
- }
2507
+ "key": "resultVariable",
2508
+ "type": "zeebe:taskHeader"
2509
+ },
2510
+ "type": "String"
2494
2511
  },
2495
2512
  {
2513
+ "id": "resultExpression",
2496
2514
  "label": "Result expression",
2497
- "description": "Expression to map the response into process variables. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-expression\" target=\"_blank\">documentation</a>",
2498
- "group": "output",
2499
- "type": "Text",
2515
+ "description": "Expression to map the response into process variables",
2500
2516
  "feel": "required",
2517
+ "group": "output",
2501
2518
  "binding": {
2502
- "type": "zeebe:taskHeader",
2503
- "key": "resultExpression"
2504
- }
2519
+ "key": "resultExpression",
2520
+ "type": "zeebe:taskHeader"
2521
+ },
2522
+ "type": "Text"
2505
2523
  },
2506
2524
  {
2525
+ "id": "errorExpression",
2507
2526
  "label": "Error expression",
2508
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#bpmn-errors\" target=\"_blank\">documentation</a>",
2509
- "group": "errors",
2510
- "type": "Text",
2527
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
2511
2528
  "feel": "required",
2529
+ "group": "error",
2512
2530
  "binding": {
2513
- "type": "zeebe:taskHeader",
2514
- "key": "errorExpression"
2515
- }
2531
+ "key": "errorExpression",
2532
+ "type": "zeebe:taskHeader"
2533
+ },
2534
+ "type": "Text"
2535
+ },
2536
+ {
2537
+ "id": "retryCount",
2538
+ "label": "Retries",
2539
+ "description": "Number of retries",
2540
+ "value": "3",
2541
+ "feel": "optional",
2542
+ "group": "retries",
2543
+ "binding": {
2544
+ "property": "retries",
2545
+ "type": "zeebe:taskDefinition"
2546
+ },
2547
+ "type": "String"
2548
+ },
2549
+ {
2550
+ "id": "retryBackoff",
2551
+ "label": "Retry backoff",
2552
+ "description": "ISO-8601 duration to wait between retries",
2553
+ "value": "PT0S",
2554
+ "feel": "optional",
2555
+ "group": "retries",
2556
+ "binding": {
2557
+ "key": "retryBackoff",
2558
+ "type": "zeebe:taskHeader"
2559
+ },
2560
+ "type": "String"
2516
2561
  }
2517
2562
  ],
2563
+ "icon": {
2564
+ "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
2565
+ },
2518
2566
  "engines": {
2519
- "camunda": "^8.2"
2567
+ "camunda": "^8.6"
2520
2568
  }
2521
2569
  },
2522
2570
  {
@@ -2524,11 +2572,8 @@
2524
2572
  "name": "Slack Outbound Connector",
2525
2573
  "id": "io.camunda.connectors.Slack.v1",
2526
2574
  "description": "Create a channel or send a message to a channel or user",
2527
- "metadata": {
2528
- "keywords": []
2529
- },
2530
2575
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
2531
- "version": 7,
2576
+ "version": 5,
2532
2577
  "category": {
2533
2578
  "id": "connectors",
2534
2579
  "name": "Connectors"
@@ -2537,9 +2582,6 @@
2537
2582
  "elementType": {
2538
2583
  "value": "bpmn:ServiceTask"
2539
2584
  },
2540
- "engines": {
2541
- "camunda": "^8.3"
2542
- },
2543
2585
  "groups": [
2544
2586
  {
2545
2587
  "id": "authentication",
@@ -2561,10 +2603,6 @@
2561
2603
  "id": "invite",
2562
2604
  "label": "Invite"
2563
2605
  },
2564
- {
2565
- "id": "connector",
2566
- "label": "Connector"
2567
- },
2568
2606
  {
2569
2607
  "id": "output",
2570
2608
  "label": "Output mapping"
@@ -2723,24 +2761,6 @@
2723
2761
  },
2724
2762
  "type": "String"
2725
2763
  },
2726
- {
2727
- "id": "data.documents",
2728
- "label": "attachments",
2729
- "description": "<a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">Camunda documents</a> can be added as attachments",
2730
- "optional": true,
2731
- "feel": "required",
2732
- "group": "message",
2733
- "binding": {
2734
- "name": "data.documents",
2735
- "type": "zeebe:input"
2736
- },
2737
- "condition": {
2738
- "property": "method",
2739
- "equals": "chat.postMessage",
2740
- "type": "simple"
2741
- },
2742
- "type": "String"
2743
- },
2744
2764
  {
2745
2765
  "id": "data.channel",
2746
2766
  "label": "Channel/user name/email",
@@ -2955,30 +2975,6 @@
2955
2975
  },
2956
2976
  "type": "String"
2957
2977
  },
2958
- {
2959
- "id": "version",
2960
- "label": "Version",
2961
- "description": "Version of the element template",
2962
- "value": "7",
2963
- "group": "connector",
2964
- "binding": {
2965
- "key": "elementTemplateVersion",
2966
- "type": "zeebe:taskHeader"
2967
- },
2968
- "type": "Hidden"
2969
- },
2970
- {
2971
- "id": "id",
2972
- "label": "ID",
2973
- "description": "ID of the element template",
2974
- "value": "io.camunda.connectors.Slack.v1",
2975
- "group": "connector",
2976
- "binding": {
2977
- "key": "elementTemplateId",
2978
- "type": "zeebe:taskHeader"
2979
- },
2980
- "type": "Hidden"
2981
- },
2982
2978
  {
2983
2979
  "id": "resultVariable",
2984
2980
  "label": "Result variable",
@@ -3032,6 +3028,7 @@
3032
3028
  "label": "Retry backoff",
3033
3029
  "description": "ISO-8601 duration to wait between retries",
3034
3030
  "value": "PT0S",
3031
+ "feel": "optional",
3035
3032
  "group": "retries",
3036
3033
  "binding": {
3037
3034
  "key": "retryBackoff",
@@ -3042,6 +3039,9 @@
3042
3039
  ],
3043
3040
  "icon": {
3044
3041
  "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
3042
+ },
3043
+ "engines": {
3044
+ "camunda": "^8.6"
3045
3045
  }
3046
3046
  }
3047
3047
  ]