@camunda/connectors-element-templates 1.0.6 → 1.0.8

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 (99) 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 +26 -2
  4. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +32 -30
  5. package/src/element-templates/agenticai-aiagent-job-worker.json +3266 -0
  6. package/src/element-templates/agenticai-aiagent-outbound-connector.json +3932 -760
  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 +1 -1
  9. package/src/element-templates/asana-connector.json +104 -104
  10. package/src/element-templates/automation-anywhere-outbound-connector.json +657 -657
  11. package/src/element-templates/aws-bedrock-outbound-connector.json +30 -30
  12. package/src/element-templates/aws-comprehend-outbound-connector.json +36 -36
  13. package/src/element-templates/aws-dynamodb-outbound-connector.json +107 -107
  14. package/src/element-templates/aws-eventbridge-connector-boundary.json +26 -26
  15. package/src/element-templates/aws-eventbridge-connector-intermediate.json +31 -31
  16. package/src/element-templates/aws-eventbridge-connector-message-start.json +10 -10
  17. package/src/element-templates/aws-eventbridge-connector-receive.json +356 -0
  18. package/src/element-templates/aws-eventbridge-connector-start-event.json +26 -26
  19. package/src/element-templates/aws-eventbridge-outbound-connector.json +479 -479
  20. package/src/element-templates/aws-lambda-outbound-connector.json +92 -92
  21. package/src/element-templates/aws-s3-outbound-connector.json +30 -30
  22. package/src/element-templates/aws-sagemaker-outbound-connector.json +50 -50
  23. package/src/element-templates/aws-sns-inbound-boundary.json +303 -303
  24. package/src/element-templates/aws-sns-inbound-intermediate.json +215 -215
  25. package/src/element-templates/aws-sns-inbound-message-start.json +343 -343
  26. package/src/element-templates/aws-sns-inbound-receive.json +304 -0
  27. package/src/element-templates/aws-sns-inbound-start-event.json +130 -130
  28. package/src/element-templates/aws-sns-outbound-connector.json +726 -726
  29. package/src/element-templates/aws-sqs-boundary-connector.json +629 -629
  30. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +537 -537
  31. package/src/element-templates/aws-sqs-outbound-connector.json +440 -440
  32. package/src/element-templates/aws-sqs-receive-connector.json +418 -0
  33. package/src/element-templates/aws-sqs-start-event-connector.json +771 -771
  34. package/src/element-templates/aws-sqs-start-message.json +461 -461
  35. package/src/element-templates/azure-open-ai-connector.json +32 -32
  36. package/src/element-templates/blue-prism-connector.json +50 -50
  37. package/src/element-templates/box-outbound-connector.json +30 -30
  38. package/src/element-templates/csv-outbound-connector.json +412 -0
  39. package/src/element-templates/easy-post-connector.json +149 -149
  40. package/src/element-templates/email-inbound-connector-boundary.json +19 -19
  41. package/src/element-templates/email-inbound-connector-intermediate.json +19 -19
  42. package/src/element-templates/email-outbound-connector.json +233 -233
  43. package/src/element-templates/embeddings-vector-database-outbound-connector.json +473 -488
  44. package/src/element-templates/github-connector.json +2417 -2417
  45. package/src/element-templates/github-webhook-connector-boundary.json +21 -21
  46. package/src/element-templates/github-webhook-connector-intermediate.json +57 -57
  47. package/src/element-templates/github-webhook-connector-message-start.json +21 -21
  48. package/src/element-templates/github-webhook-connector-receive.json +202 -0
  49. package/src/element-templates/github-webhook-connector-start-event.json +57 -57
  50. package/src/element-templates/gitlab-connector.json +1103 -1103
  51. package/src/element-templates/google-drive-outbound-connector.json +846 -846
  52. package/src/element-templates/google-gemini-outbound-connector.json +32 -32
  53. package/src/element-templates/google-maps-platform-connector.json +78 -78
  54. package/src/element-templates/google-sheets-outbound-connector.json +1067 -1067
  55. package/src/element-templates/graphql-outbound-connector.json +1181 -1181
  56. package/src/element-templates/http-json-connector.json +2471 -1866
  57. package/src/element-templates/http-polling-boundary-catch-event-connector.json +635 -6
  58. package/src/element-templates/http-polling-connector.json +635 -6
  59. package/src/element-templates/hugging-face-connector.json +34 -34
  60. package/src/element-templates/jdbc-outbound-connector.json +43 -43
  61. package/src/element-templates/kafka-inbound-connector-boundary.json +1012 -1012
  62. package/src/element-templates/kafka-inbound-connector-intermediate.json +582 -582
  63. package/src/element-templates/kafka-inbound-connector-receive.json +498 -0
  64. package/src/element-templates/kafka-inbound-connector-start-message.json +608 -608
  65. package/src/element-templates/kafka-outbound-connector.json +385 -385
  66. package/src/element-templates/microsoft-office365-mail-connector.json +32 -32
  67. package/src/element-templates/microsoft-teams-outbound-connector.json +1643 -1643
  68. package/src/element-templates/openai-connector.json +122 -122
  69. package/src/element-templates/operate-connector.json +76 -72
  70. package/src/element-templates/power-automate-connector.json +10 -10
  71. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +334 -334
  72. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +861 -861
  73. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +456 -456
  74. package/src/element-templates/rabbitmq-inbound-connector-receive.json +461 -0
  75. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +258 -258
  76. package/src/element-templates/rabbitmq-outbound-connector.json +322 -322
  77. package/src/element-templates/salesforce-connector.json +44 -44
  78. package/src/element-templates/sendgrid-outbound-connector.json +470 -470
  79. package/src/element-templates/servicenow-connector.json +942 -0
  80. package/src/element-templates/servicenow-flow-starter-connector.json +643 -0
  81. package/src/element-templates/servicenow-incident-connector.json +969 -0
  82. package/src/element-templates/slack-inbound-boundary.json +303 -303
  83. package/src/element-templates/slack-inbound-intermediate.json +277 -277
  84. package/src/element-templates/slack-inbound-message-start.json +11 -11
  85. package/src/element-templates/slack-inbound-receive.json +290 -0
  86. package/src/element-templates/slack-inbound-start-event.json +247 -247
  87. package/src/element-templates/slack-outbound-connector.json +966 -966
  88. package/src/element-templates/twilio-connector.json +52 -52
  89. package/src/element-templates/twilio-webhook-boundary-connector.json +20 -20
  90. package/src/element-templates/twilio-webhook-connector.json +11 -11
  91. package/src/element-templates/twilio-webhook-intermediate-connector.json +50 -50
  92. package/src/element-templates/twilio-webhook-message-start-connector.json +8 -8
  93. package/src/element-templates/twilio-webhook-receive-connector.json +262 -0
  94. package/src/element-templates/webhook-connector-boundary.json +1150 -1150
  95. package/src/element-templates/webhook-connector-intermediate.json +1834 -1834
  96. package/src/element-templates/webhook-connector-receive.json +609 -0
  97. package/src/element-templates/webhook-connector-start-event.json +1495 -1495
  98. package/src/element-templates/webhook-connector-start-message.json +586 -586
  99. package/src/element-templates/idp-extraction-outbound-connector.json +0 -932
@@ -1,14 +1,11 @@
1
1
  [
2
2
  {
3
3
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
4
- "name": "Slack connector",
4
+ "name": "Slack Outbound Connector",
5
5
  "id": "io.camunda.connectors.Slack.v1",
6
- "version": 1,
7
6
  "description": "Create a channel or send a message to a channel or user",
8
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/",
9
- "icon": {
10
- "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"
11
- },
7
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
8
+ "version": 5,
12
9
  "category": {
13
10
  "id": "connectors",
14
11
  "name": "Connectors"
@@ -18,14 +15,14 @@
18
15
  "value": "bpmn:ServiceTask"
19
16
  },
20
17
  "groups": [
21
- {
22
- "id": "method",
23
- "label": "Method"
24
- },
25
18
  {
26
19
  "id": "authentication",
27
20
  "label": "Authentication"
28
21
  },
22
+ {
23
+ "id": "method",
24
+ "label": "Method"
25
+ },
29
26
  {
30
27
  "id": "message",
31
28
  "label": "Message"
@@ -43,25 +40,48 @@
43
40
  "label": "Output mapping"
44
41
  },
45
42
  {
46
- "id": "errors",
43
+ "id": "error",
47
44
  "label": "Error handling"
45
+ },
46
+ {
47
+ "id": "retries",
48
+ "label": "Retries"
48
49
  }
49
50
  ],
50
51
  "properties": [
51
52
  {
52
- "type": "Hidden",
53
53
  "value": "io.camunda:slack:1",
54
54
  "binding": {
55
- "type": "zeebe:taskDefinition",
56
- "property": "type"
57
- }
55
+ "property": "type",
56
+ "type": "zeebe:taskDefinition"
57
+ },
58
+ "type": "Hidden"
59
+ },
60
+ {
61
+ "id": "token",
62
+ "label": "OAuth token",
63
+ "optional": false,
64
+ "constraints": {
65
+ "notEmpty": true
66
+ },
67
+ "feel": "optional",
68
+ "group": "authentication",
69
+ "binding": {
70
+ "name": "token",
71
+ "type": "zeebe:input"
72
+ },
73
+ "type": "String"
58
74
  },
59
75
  {
76
+ "id": "method",
60
77
  "label": "Method",
78
+ "value": "chat.postMessage",
61
79
  "group": "method",
62
- "id": "method",
80
+ "binding": {
81
+ "name": "method",
82
+ "type": "zeebe:input"
83
+ },
63
84
  "type": "Dropdown",
64
- "value": "chat.postMessage",
65
85
  "choices": [
66
86
  {
67
87
  "name": "Post message",
@@ -75,118 +95,145 @@
75
95
  "name": "Invite to channel",
76
96
  "value": "conversations.invite"
77
97
  }
78
- ],
79
- "binding": {
80
- "type": "zeebe:input",
81
- "name": "method"
82
- }
98
+ ]
83
99
  },
84
100
  {
85
- "label": "OAuth token",
86
- "group": "authentication",
87
- "type": "String",
88
- "feel": "optional",
101
+ "id": "data.messageType",
102
+ "label": "Message type",
103
+ "optional": false,
104
+ "value": "plainText",
105
+ "group": "message",
89
106
  "binding": {
90
- "type": "zeebe:input",
91
- "name": "token"
107
+ "name": "data.messageType",
108
+ "type": "zeebe:input"
92
109
  },
93
- "constraints": {
94
- "notEmpty": true
95
- }
110
+ "condition": {
111
+ "allMatch": [
112
+ {
113
+ "property": "method",
114
+ "equals": "chat.postMessage",
115
+ "type": "simple"
116
+ },
117
+ {
118
+ "property": "method",
119
+ "equals": "chat.postMessage",
120
+ "type": "simple"
121
+ }
122
+ ]
123
+ },
124
+ "type": "Dropdown",
125
+ "choices": [
126
+ {
127
+ "name": "Plain text",
128
+ "value": "plainText"
129
+ },
130
+ {
131
+ "name": "Message block",
132
+ "value": "messageBlock"
133
+ }
134
+ ]
96
135
  },
97
136
  {
98
- "label": "Channel/user name/email",
99
- "group": "channel",
100
- "type": "String",
137
+ "id": "data.text",
138
+ "label": "Message",
139
+ "optional": false,
140
+ "constraints": {
141
+ "notEmpty": true
142
+ },
101
143
  "feel": "optional",
144
+ "group": "message",
102
145
  "binding": {
103
- "type": "zeebe:input",
104
- "name": "data.channel"
105
- },
106
- "constraints": {
107
- "notEmpty": true,
108
- "pattern": {
109
- "value": "(^(#|@|=).*)|(^.+[@].+[.].{2,4}$)",
110
- "message": "Must be a #channel, @user, email or FEEL expression."
111
- }
146
+ "name": "data.text",
147
+ "type": "zeebe:input"
112
148
  },
113
149
  "condition": {
114
- "property": "method",
115
- "equals": "chat.postMessage"
116
- }
150
+ "allMatch": [
151
+ {
152
+ "property": "data.messageType",
153
+ "equals": "plainText",
154
+ "type": "simple"
155
+ },
156
+ {
157
+ "property": "method",
158
+ "equals": "chat.postMessage",
159
+ "type": "simple"
160
+ }
161
+ ]
162
+ },
163
+ "type": "Text"
117
164
  },
118
165
  {
119
- "label": "New channel name",
120
- "group": "channel",
121
- "type": "String",
122
- "feel": "optional",
123
- "binding": {
124
- "type": "zeebe:input",
125
- "name": "data.newChannelName"
126
- },
166
+ "id": "data.blockContent",
167
+ "label": "Message block",
168
+ "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>",
169
+ "optional": false,
170
+ "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]",
127
171
  "constraints": {
128
- "notEmpty": true,
129
- "pattern": {
130
- "value": "^(=|([-_a-z0-9]{1,80}$))",
131
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
132
- }
172
+ "notEmpty": true
173
+ },
174
+ "feel": "required",
175
+ "group": "message",
176
+ "binding": {
177
+ "name": "data.blockContent",
178
+ "type": "zeebe:input"
133
179
  },
134
180
  "condition": {
135
- "property": "method",
136
- "equals": "conversations.create"
137
- }
181
+ "allMatch": [
182
+ {
183
+ "property": "data.messageType",
184
+ "equals": "messageBlock",
185
+ "type": "simple"
186
+ },
187
+ {
188
+ "property": "method",
189
+ "equals": "chat.postMessage",
190
+ "type": "simple"
191
+ }
192
+ ]
193
+ },
194
+ "type": "String"
138
195
  },
139
196
  {
140
- "label": "Visibility",
141
- "group": "channel",
142
- "type": "Dropdown",
143
- "value": "PUBLIC",
197
+ "id": "data.channel",
198
+ "label": "Channel/user name/email",
144
199
  "optional": false,
145
- "choices": [
146
- {
147
- "name": "Private",
148
- "value": "PRIVATE"
149
- },
150
- {
151
- "name": "Public",
152
- "value": "PUBLIC"
153
- }
154
- ],
200
+ "constraints": {
201
+ "notEmpty": true
202
+ },
203
+ "feel": "optional",
204
+ "group": "channel",
155
205
  "binding": {
156
- "type": "zeebe:input",
157
- "name": "data.visibility"
206
+ "name": "data.channel",
207
+ "type": "zeebe:input"
158
208
  },
159
209
  "condition": {
160
210
  "property": "method",
161
- "equals": "conversations.create"
162
- }
211
+ "equals": "chat.postMessage",
212
+ "type": "simple"
213
+ },
214
+ "type": "String"
163
215
  },
164
216
  {
165
- "label": "Message",
166
- "group": "message",
167
- "type": "Text",
217
+ "id": "data.thread",
218
+ "label": "Thread",
219
+ "optional": true,
168
220
  "feel": "optional",
221
+ "group": "channel",
169
222
  "binding": {
170
- "type": "zeebe:input",
171
- "name": "data.text"
172
- },
173
- "constraints": {
174
- "notEmpty": true
223
+ "name": "data.thread",
224
+ "type": "zeebe:input"
175
225
  },
176
226
  "condition": {
177
227
  "property": "method",
178
- "equals": "chat.postMessage"
179
- }
228
+ "equals": "chat.postMessage",
229
+ "type": "simple"
230
+ },
231
+ "type": "String"
180
232
  },
181
233
  {
234
+ "id": "data.newChannelName",
182
235
  "label": "Channel name",
183
- "group": "invite",
184
- "type": "String",
185
- "feel": "optional",
186
- "binding": {
187
- "type": "zeebe:input",
188
- "name": "data.channelName"
189
- },
236
+ "optional": false,
190
237
  "constraints": {
191
238
  "notEmpty": true,
192
239
  "pattern": {
@@ -194,64 +241,239 @@
194
241
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
195
242
  }
196
243
  },
244
+ "feel": "optional",
245
+ "group": "channel",
246
+ "binding": {
247
+ "name": "data.newChannelName",
248
+ "type": "zeebe:input"
249
+ },
197
250
  "condition": {
198
251
  "property": "method",
199
- "equals": "conversations.invite"
200
- }
252
+ "equals": "conversations.create",
253
+ "type": "simple"
254
+ },
255
+ "type": "String"
201
256
  },
202
257
  {
203
- "label": "Users",
204
- "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
205
- "group": "invite",
206
- "type": "String",
258
+ "id": "data.visibility",
259
+ "label": "Visibility",
260
+ "optional": false,
261
+ "value": "PUBLIC",
262
+ "constraints": {
263
+ "notEmpty": true
264
+ },
265
+ "group": "channel",
266
+ "binding": {
267
+ "name": "data.visibility",
268
+ "type": "zeebe:input"
269
+ },
270
+ "condition": {
271
+ "property": "method",
272
+ "equals": "conversations.create",
273
+ "type": "simple"
274
+ },
275
+ "type": "Dropdown",
276
+ "choices": [
277
+ {
278
+ "name": "Public",
279
+ "value": "PUBLIC"
280
+ },
281
+ {
282
+ "name": "Private",
283
+ "value": "PRIVATE"
284
+ }
285
+ ]
286
+ },
287
+ {
288
+ "id": "data.channelType",
289
+ "label": "Invite By",
290
+ "optional": false,
291
+ "value": "channelId",
292
+ "group": "invite",
293
+ "binding": {
294
+ "name": "data.channelType",
295
+ "type": "zeebe:input"
296
+ },
297
+ "condition": {
298
+ "allMatch": [
299
+ {
300
+ "property": "method",
301
+ "equals": "conversations.invite",
302
+ "type": "simple"
303
+ },
304
+ {
305
+ "property": "method",
306
+ "equals": "conversations.invite",
307
+ "type": "simple"
308
+ }
309
+ ]
310
+ },
311
+ "type": "Dropdown",
312
+ "choices": [
313
+ {
314
+ "name": "Channel ID",
315
+ "value": "channelId"
316
+ },
317
+ {
318
+ "name": "Channel name",
319
+ "value": "channelName"
320
+ }
321
+ ]
322
+ },
323
+ {
324
+ "id": "data.channelName",
325
+ "label": "Channel name",
326
+ "optional": false,
327
+ "constraints": {
328
+ "notEmpty": true,
329
+ "pattern": {
330
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
331
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
332
+ }
333
+ },
207
334
  "feel": "optional",
335
+ "group": "invite",
208
336
  "binding": {
209
- "type": "zeebe:input",
210
- "name": "data.users"
337
+ "name": "data.channelName",
338
+ "type": "zeebe:input"
339
+ },
340
+ "condition": {
341
+ "allMatch": [
342
+ {
343
+ "property": "data.channelType",
344
+ "equals": "channelName",
345
+ "type": "simple"
346
+ },
347
+ {
348
+ "property": "method",
349
+ "equals": "conversations.invite",
350
+ "type": "simple"
351
+ }
352
+ ]
353
+ },
354
+ "type": "String"
355
+ },
356
+ {
357
+ "id": "data.channelId",
358
+ "label": "Channel ID",
359
+ "optional": false,
360
+ "constraints": {
361
+ "notEmpty": true,
362
+ "pattern": {
363
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
364
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
365
+ }
366
+ },
367
+ "feel": "optional",
368
+ "group": "invite",
369
+ "binding": {
370
+ "name": "data.channelId",
371
+ "type": "zeebe:input"
372
+ },
373
+ "condition": {
374
+ "allMatch": [
375
+ {
376
+ "property": "data.channelType",
377
+ "equals": "channelId",
378
+ "type": "simple"
379
+ },
380
+ {
381
+ "property": "method",
382
+ "equals": "conversations.invite",
383
+ "type": "simple"
384
+ }
385
+ ]
211
386
  },
387
+ "type": "String"
388
+ },
389
+ {
390
+ "id": "data.users",
391
+ "label": "Users",
392
+ "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
393
+ "optional": false,
212
394
  "constraints": {
213
395
  "notEmpty": true
214
396
  },
397
+ "feel": "optional",
398
+ "group": "invite",
399
+ "binding": {
400
+ "name": "data.users",
401
+ "type": "zeebe:input"
402
+ },
215
403
  "condition": {
216
404
  "property": "method",
217
- "equals": "conversations.invite"
218
- }
405
+ "equals": "conversations.invite",
406
+ "type": "simple"
407
+ },
408
+ "type": "String"
219
409
  },
220
410
  {
411
+ "id": "resultVariable",
221
412
  "label": "Result variable",
222
- "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>",
413
+ "description": "Name of variable to store the response in",
223
414
  "group": "output",
224
- "type": "String",
225
415
  "binding": {
226
- "type": "zeebe:taskHeader",
227
- "key": "resultVariable"
228
- }
416
+ "key": "resultVariable",
417
+ "type": "zeebe:taskHeader"
418
+ },
419
+ "type": "String"
229
420
  },
230
421
  {
422
+ "id": "resultExpression",
231
423
  "label": "Result expression",
232
- "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>",
233
- "group": "output",
234
- "type": "Text",
424
+ "description": "Expression to map the response into process variables",
235
425
  "feel": "required",
426
+ "group": "output",
236
427
  "binding": {
237
- "type": "zeebe:taskHeader",
238
- "key": "resultExpression"
239
- }
428
+ "key": "resultExpression",
429
+ "type": "zeebe:taskHeader"
430
+ },
431
+ "type": "Text"
240
432
  },
241
433
  {
434
+ "id": "errorExpression",
242
435
  "label": "Error expression",
243
- "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>",
244
- "group": "errors",
245
- "type": "Text",
436
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
246
437
  "feel": "required",
438
+ "group": "error",
247
439
  "binding": {
248
- "type": "zeebe:taskHeader",
249
- "key": "errorExpression"
250
- }
440
+ "key": "errorExpression",
441
+ "type": "zeebe:taskHeader"
442
+ },
443
+ "type": "Text"
444
+ },
445
+ {
446
+ "id": "retryCount",
447
+ "label": "Retries",
448
+ "description": "Number of retries",
449
+ "value": "3",
450
+ "feel": "optional",
451
+ "group": "retries",
452
+ "binding": {
453
+ "property": "retries",
454
+ "type": "zeebe:taskDefinition"
455
+ },
456
+ "type": "String"
457
+ },
458
+ {
459
+ "id": "retryBackoff",
460
+ "label": "Retry backoff",
461
+ "description": "ISO-8601 duration to wait between retries",
462
+ "value": "PT0S",
463
+ "feel": "optional",
464
+ "group": "retries",
465
+ "binding": {
466
+ "key": "retryBackoff",
467
+ "type": "zeebe:taskHeader"
468
+ },
469
+ "type": "String"
251
470
  }
252
471
  ],
472
+ "icon": {
473
+ "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
474
+ },
253
475
  "engines": {
254
- "camunda": "^8.2"
476
+ "camunda": "^8.6"
255
477
  }
256
478
  },
257
479
  {
@@ -259,8 +481,11 @@
259
481
  "name": "Slack Outbound Connector",
260
482
  "id": "io.camunda.connectors.Slack.v1",
261
483
  "description": "Create a channel or send a message to a channel or user",
484
+ "metadata": {
485
+ "keywords": []
486
+ },
262
487
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
263
- "version": 3,
488
+ "version": 6,
264
489
  "category": {
265
490
  "id": "connectors",
266
491
  "name": "Connectors"
@@ -269,6 +494,9 @@
269
494
  "elementType": {
270
495
  "value": "bpmn:ServiceTask"
271
496
  },
497
+ "engines": {
498
+ "camunda": "^8.3"
499
+ },
272
500
  "groups": [
273
501
  {
274
502
  "id": "authentication",
@@ -449,16 +677,14 @@
449
677
  "type": "String"
450
678
  },
451
679
  {
452
- "id": "data.channel",
453
- "label": "Channel/user name/email",
454
- "optional": false,
455
- "constraints": {
456
- "notEmpty": true
457
- },
458
- "feel": "optional",
459
- "group": "channel",
680
+ "id": "data.documents",
681
+ "label": "attachments",
682
+ "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",
683
+ "optional": true,
684
+ "feel": "required",
685
+ "group": "message",
460
686
  "binding": {
461
- "name": "data.channel",
687
+ "name": "data.documents",
462
688
  "type": "zeebe:input"
463
689
  },
464
690
  "condition": {
@@ -469,32 +695,69 @@
469
695
  "type": "String"
470
696
  },
471
697
  {
472
- "id": "data.newChannelName",
473
- "label": "Channel name",
698
+ "id": "data.channel",
699
+ "label": "Channel/user name/email",
474
700
  "optional": false,
475
701
  "constraints": {
476
- "notEmpty": true,
477
- "pattern": {
478
- "value": "^(=|[-_a-z0-9]{1,80}$)",
479
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
480
- }
702
+ "notEmpty": true
481
703
  },
482
704
  "feel": "optional",
483
705
  "group": "channel",
484
706
  "binding": {
485
- "name": "data.newChannelName",
707
+ "name": "data.channel",
486
708
  "type": "zeebe:input"
487
709
  },
488
710
  "condition": {
489
711
  "property": "method",
490
- "equals": "conversations.create",
712
+ "equals": "chat.postMessage",
491
713
  "type": "simple"
492
714
  },
493
715
  "type": "String"
494
716
  },
495
717
  {
496
- "id": "data.visibility",
497
- "label": "Visibility",
718
+ "id": "data.thread",
719
+ "label": "Thread",
720
+ "optional": true,
721
+ "feel": "optional",
722
+ "group": "channel",
723
+ "binding": {
724
+ "name": "data.thread",
725
+ "type": "zeebe:input"
726
+ },
727
+ "condition": {
728
+ "property": "method",
729
+ "equals": "chat.postMessage",
730
+ "type": "simple"
731
+ },
732
+ "type": "String"
733
+ },
734
+ {
735
+ "id": "data.newChannelName",
736
+ "label": "Channel name",
737
+ "optional": false,
738
+ "constraints": {
739
+ "notEmpty": true,
740
+ "pattern": {
741
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
742
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
743
+ }
744
+ },
745
+ "feel": "optional",
746
+ "group": "channel",
747
+ "binding": {
748
+ "name": "data.newChannelName",
749
+ "type": "zeebe:input"
750
+ },
751
+ "condition": {
752
+ "property": "method",
753
+ "equals": "conversations.create",
754
+ "type": "simple"
755
+ },
756
+ "type": "String"
757
+ },
758
+ {
759
+ "id": "data.visibility",
760
+ "label": "Visibility",
498
761
  "optional": false,
499
762
  "value": "PUBLIC",
500
763
  "constraints": {
@@ -522,6 +785,42 @@
522
785
  }
523
786
  ]
524
787
  },
788
+ {
789
+ "id": "data.channelType",
790
+ "label": "Invite By",
791
+ "optional": false,
792
+ "value": "channelId",
793
+ "group": "invite",
794
+ "binding": {
795
+ "name": "data.channelType",
796
+ "type": "zeebe:input"
797
+ },
798
+ "condition": {
799
+ "allMatch": [
800
+ {
801
+ "property": "method",
802
+ "equals": "conversations.invite",
803
+ "type": "simple"
804
+ },
805
+ {
806
+ "property": "method",
807
+ "equals": "conversations.invite",
808
+ "type": "simple"
809
+ }
810
+ ]
811
+ },
812
+ "type": "Dropdown",
813
+ "choices": [
814
+ {
815
+ "name": "Channel ID",
816
+ "value": "channelId"
817
+ },
818
+ {
819
+ "name": "Channel name",
820
+ "value": "channelName"
821
+ }
822
+ ]
823
+ },
525
824
  {
526
825
  "id": "data.channelName",
527
826
  "label": "Channel name",
@@ -529,7 +828,7 @@
529
828
  "constraints": {
530
829
  "notEmpty": true,
531
830
  "pattern": {
532
- "value": "^(=|[-_a-z0-9]{1,80}$)",
831
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
533
832
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
534
833
  }
535
834
  },
@@ -540,9 +839,51 @@
540
839
  "type": "zeebe:input"
541
840
  },
542
841
  "condition": {
543
- "property": "method",
544
- "equals": "conversations.invite",
545
- "type": "simple"
842
+ "allMatch": [
843
+ {
844
+ "property": "data.channelType",
845
+ "equals": "channelName",
846
+ "type": "simple"
847
+ },
848
+ {
849
+ "property": "method",
850
+ "equals": "conversations.invite",
851
+ "type": "simple"
852
+ }
853
+ ]
854
+ },
855
+ "type": "String"
856
+ },
857
+ {
858
+ "id": "data.channelId",
859
+ "label": "Channel ID",
860
+ "optional": false,
861
+ "constraints": {
862
+ "notEmpty": true,
863
+ "pattern": {
864
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
865
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
866
+ }
867
+ },
868
+ "feel": "optional",
869
+ "group": "invite",
870
+ "binding": {
871
+ "name": "data.channelId",
872
+ "type": "zeebe:input"
873
+ },
874
+ "condition": {
875
+ "allMatch": [
876
+ {
877
+ "property": "data.channelType",
878
+ "equals": "channelId",
879
+ "type": "simple"
880
+ },
881
+ {
882
+ "property": "method",
883
+ "equals": "conversations.invite",
884
+ "type": "simple"
885
+ }
886
+ ]
546
887
  },
547
888
  "type": "String"
548
889
  },
@@ -620,7 +961,6 @@
620
961
  "label": "Retry backoff",
621
962
  "description": "ISO-8601 duration to wait between retries",
622
963
  "value": "PT0S",
623
- "feel": "optional",
624
964
  "group": "retries",
625
965
  "binding": {
626
966
  "key": "retryBackoff",
@@ -631,18 +971,18 @@
631
971
  ],
632
972
  "icon": {
633
973
  "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
634
- },
635
- "engines": {
636
- "camunda": "^8.5"
637
974
  }
638
975
  },
639
976
  {
640
977
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
641
- "name": "Slack Outbound Connector",
978
+ "name": "Slack connector",
642
979
  "id": "io.camunda.connectors.Slack.v1",
643
- "version": 2,
980
+ "deprecated": {
981
+ "message": "Replace with 'Slack connector' template.",
982
+ "documentationRef": "https://docs.camunda.io/docs/components/modeler/desktop-modeler/element-templates/using-templates/#replacing-templates"
983
+ },
644
984
  "description": "Create a channel or send a message to a channel or user",
645
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
985
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/",
646
986
  "icon": {
647
987
  "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"
648
988
  },
@@ -827,7 +1167,7 @@
827
1167
  "constraints": {
828
1168
  "notEmpty": true,
829
1169
  "pattern": {
830
- "value": "^(=|[-_a-z0-9]{1,80}$)",
1170
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
831
1171
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
832
1172
  }
833
1173
  },
@@ -886,24 +1226,15 @@
886
1226
  "key": "errorExpression"
887
1227
  }
888
1228
  }
889
- ],
890
- "engines": {
891
- "camunda": "^8.2"
892
- }
1229
+ ]
893
1230
  },
894
1231
  {
895
1232
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
896
- "name": "Slack connector",
1233
+ "name": "Slack Outbound Connector",
897
1234
  "id": "io.camunda.connectors.Slack.v1",
898
- "deprecated": {
899
- "message": "Replace with 'Slack connector' template.",
900
- "documentationRef": "https://docs.camunda.io/docs/components/modeler/desktop-modeler/element-templates/using-templates/#replacing-templates"
901
- },
902
1235
  "description": "Create a channel or send a message to a channel or user",
903
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/",
904
- "icon": {
905
- "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"
906
- },
1236
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1237
+ "version": 4,
907
1238
  "category": {
908
1239
  "id": "connectors",
909
1240
  "name": "Connectors"
@@ -913,14 +1244,14 @@
913
1244
  "value": "bpmn:ServiceTask"
914
1245
  },
915
1246
  "groups": [
916
- {
917
- "id": "method",
918
- "label": "Method"
919
- },
920
1247
  {
921
1248
  "id": "authentication",
922
1249
  "label": "Authentication"
923
1250
  },
1251
+ {
1252
+ "id": "method",
1253
+ "label": "Method"
1254
+ },
924
1255
  {
925
1256
  "id": "message",
926
1257
  "label": "Message"
@@ -938,25 +1269,48 @@
938
1269
  "label": "Output mapping"
939
1270
  },
940
1271
  {
941
- "id": "errors",
1272
+ "id": "error",
942
1273
  "label": "Error handling"
1274
+ },
1275
+ {
1276
+ "id": "retries",
1277
+ "label": "Retries"
943
1278
  }
944
1279
  ],
945
1280
  "properties": [
946
1281
  {
947
- "type": "Hidden",
948
1282
  "value": "io.camunda:slack:1",
949
1283
  "binding": {
950
- "type": "zeebe:taskDefinition",
951
- "property": "type"
952
- }
1284
+ "property": "type",
1285
+ "type": "zeebe:taskDefinition"
1286
+ },
1287
+ "type": "Hidden"
1288
+ },
1289
+ {
1290
+ "id": "token",
1291
+ "label": "OAuth token",
1292
+ "optional": false,
1293
+ "constraints": {
1294
+ "notEmpty": true
1295
+ },
1296
+ "feel": "optional",
1297
+ "group": "authentication",
1298
+ "binding": {
1299
+ "name": "token",
1300
+ "type": "zeebe:input"
1301
+ },
1302
+ "type": "String"
953
1303
  },
954
1304
  {
1305
+ "id": "method",
955
1306
  "label": "Method",
1307
+ "value": "chat.postMessage",
956
1308
  "group": "method",
957
- "id": "method",
1309
+ "binding": {
1310
+ "name": "method",
1311
+ "type": "zeebe:input"
1312
+ },
958
1313
  "type": "Dropdown",
959
- "value": "chat.postMessage",
960
1314
  "choices": [
961
1315
  {
962
1316
  "name": "Post message",
@@ -970,321 +1324,43 @@
970
1324
  "name": "Invite to channel",
971
1325
  "value": "conversations.invite"
972
1326
  }
973
- ],
974
- "binding": {
975
- "type": "zeebe:input",
976
- "name": "method"
977
- }
1327
+ ]
978
1328
  },
979
1329
  {
980
- "label": "OAuth token",
981
- "group": "authentication",
982
- "type": "String",
983
- "feel": "optional",
1330
+ "id": "data.messageType",
1331
+ "label": "Message type",
1332
+ "optional": false,
1333
+ "value": "plainText",
1334
+ "group": "message",
984
1335
  "binding": {
985
- "type": "zeebe:input",
986
- "name": "token"
1336
+ "name": "data.messageType",
1337
+ "type": "zeebe:input"
987
1338
  },
988
- "constraints": {
989
- "notEmpty": true
990
- }
991
- },
992
- {
993
- "label": "Channel/user name/email",
994
- "group": "channel",
995
- "type": "String",
996
- "feel": "optional",
997
- "binding": {
998
- "type": "zeebe:input",
999
- "name": "data.channel"
1000
- },
1001
- "constraints": {
1002
- "notEmpty": true,
1003
- "pattern": {
1004
- "value": "(^(#|@|=).*)|(^.+[@].+[.].{2,4}$)",
1005
- "message": "Must be a #channel, @user, email or FEEL expression."
1006
- }
1007
- },
1008
- "condition": {
1009
- "property": "method",
1010
- "equals": "chat.postMessage"
1011
- }
1012
- },
1013
- {
1014
- "label": "New channel name",
1015
- "group": "channel",
1016
- "type": "String",
1017
- "feel": "optional",
1018
- "binding": {
1019
- "type": "zeebe:input",
1020
- "name": "data.newChannelName"
1021
- },
1022
- "constraints": {
1023
- "notEmpty": true,
1024
- "pattern": {
1025
- "value": "^(=|([-_a-z0-9]{1,80}$))",
1026
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1027
- }
1028
- },
1029
- "condition": {
1030
- "property": "method",
1031
- "equals": "conversations.create"
1032
- }
1033
- },
1034
- {
1035
- "label": "Visibility",
1036
- "group": "channel",
1037
- "type": "Dropdown",
1038
- "value": "PUBLIC",
1039
- "optional": false,
1040
- "choices": [
1041
- {
1042
- "name": "Private",
1043
- "value": "PRIVATE"
1044
- },
1045
- {
1046
- "name": "Public",
1047
- "value": "PUBLIC"
1048
- }
1049
- ],
1050
- "binding": {
1051
- "type": "zeebe:input",
1052
- "name": "data.visibility"
1053
- },
1054
- "condition": {
1055
- "property": "method",
1056
- "equals": "conversations.create"
1057
- }
1058
- },
1059
- {
1060
- "label": "Message",
1061
- "group": "message",
1062
- "type": "Text",
1063
- "feel": "optional",
1064
- "binding": {
1065
- "type": "zeebe:input",
1066
- "name": "data.text"
1067
- },
1068
- "constraints": {
1069
- "notEmpty": true
1070
- },
1071
- "condition": {
1072
- "property": "method",
1073
- "equals": "chat.postMessage"
1074
- }
1075
- },
1076
- {
1077
- "label": "Channel name",
1078
- "group": "invite",
1079
- "type": "String",
1080
- "feel": "optional",
1081
- "binding": {
1082
- "type": "zeebe:input",
1083
- "name": "data.channelName"
1084
- },
1085
- "constraints": {
1086
- "notEmpty": true,
1087
- "pattern": {
1088
- "value": "^(=|([-_a-z0-9]{1,80}$))",
1089
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1090
- }
1091
- },
1092
- "condition": {
1093
- "property": "method",
1094
- "equals": "conversations.invite"
1095
- }
1096
- },
1097
- {
1098
- "label": "Users",
1099
- "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
1100
- "group": "invite",
1101
- "type": "String",
1102
- "feel": "optional",
1103
- "binding": {
1104
- "type": "zeebe:input",
1105
- "name": "data.users"
1106
- },
1107
- "constraints": {
1108
- "notEmpty": true
1109
- },
1110
- "condition": {
1111
- "property": "method",
1112
- "equals": "conversations.invite"
1113
- }
1114
- },
1115
- {
1116
- "label": "Result variable",
1117
- "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>",
1118
- "group": "output",
1119
- "type": "String",
1120
- "binding": {
1121
- "type": "zeebe:taskHeader",
1122
- "key": "resultVariable"
1123
- }
1124
- },
1125
- {
1126
- "label": "Result expression",
1127
- "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>",
1128
- "group": "output",
1129
- "type": "Text",
1130
- "feel": "required",
1131
- "binding": {
1132
- "type": "zeebe:taskHeader",
1133
- "key": "resultExpression"
1134
- }
1135
- },
1136
- {
1137
- "label": "Error expression",
1138
- "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>",
1139
- "group": "errors",
1140
- "type": "Text",
1141
- "feel": "required",
1142
- "binding": {
1143
- "type": "zeebe:taskHeader",
1144
- "key": "errorExpression"
1145
- }
1146
- }
1147
- ]
1148
- },
1149
- {
1150
- "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1151
- "name": "Slack Outbound Connector",
1152
- "id": "io.camunda.connectors.Slack.v1",
1153
- "description": "Create a channel or send a message to a channel or user",
1154
- "metadata": {
1155
- "keywords": []
1156
- },
1157
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1158
- "version": 6,
1159
- "category": {
1160
- "id": "connectors",
1161
- "name": "Connectors"
1162
- },
1163
- "appliesTo": ["bpmn:Task"],
1164
- "elementType": {
1165
- "value": "bpmn:ServiceTask"
1166
- },
1167
- "engines": {
1168
- "camunda": "^8.3"
1169
- },
1170
- "groups": [
1171
- {
1172
- "id": "authentication",
1173
- "label": "Authentication"
1174
- },
1175
- {
1176
- "id": "method",
1177
- "label": "Method"
1178
- },
1179
- {
1180
- "id": "message",
1181
- "label": "Message"
1182
- },
1183
- {
1184
- "id": "channel",
1185
- "label": "Channel"
1186
- },
1187
- {
1188
- "id": "invite",
1189
- "label": "Invite"
1190
- },
1191
- {
1192
- "id": "output",
1193
- "label": "Output mapping"
1194
- },
1195
- {
1196
- "id": "error",
1197
- "label": "Error handling"
1198
- },
1199
- {
1200
- "id": "retries",
1201
- "label": "Retries"
1202
- }
1203
- ],
1204
- "properties": [
1205
- {
1206
- "value": "io.camunda:slack:1",
1207
- "binding": {
1208
- "property": "type",
1209
- "type": "zeebe:taskDefinition"
1210
- },
1211
- "type": "Hidden"
1212
- },
1213
- {
1214
- "id": "token",
1215
- "label": "OAuth token",
1216
- "optional": false,
1217
- "constraints": {
1218
- "notEmpty": true
1219
- },
1220
- "feel": "optional",
1221
- "group": "authentication",
1222
- "binding": {
1223
- "name": "token",
1224
- "type": "zeebe:input"
1225
- },
1226
- "type": "String"
1227
- },
1228
- {
1229
- "id": "method",
1230
- "label": "Method",
1231
- "value": "chat.postMessage",
1232
- "group": "method",
1233
- "binding": {
1234
- "name": "method",
1235
- "type": "zeebe:input"
1236
- },
1237
- "type": "Dropdown",
1238
- "choices": [
1239
- {
1240
- "name": "Post message",
1241
- "value": "chat.postMessage"
1242
- },
1243
- {
1244
- "name": "Create channel",
1245
- "value": "conversations.create"
1246
- },
1247
- {
1248
- "name": "Invite to channel",
1249
- "value": "conversations.invite"
1250
- }
1251
- ]
1252
- },
1253
- {
1254
- "id": "data.messageType",
1255
- "label": "Message type",
1256
- "optional": false,
1257
- "value": "plainText",
1258
- "group": "message",
1259
- "binding": {
1260
- "name": "data.messageType",
1261
- "type": "zeebe:input"
1262
- },
1263
- "condition": {
1264
- "allMatch": [
1265
- {
1266
- "property": "method",
1267
- "equals": "chat.postMessage",
1268
- "type": "simple"
1269
- },
1270
- {
1271
- "property": "method",
1272
- "equals": "chat.postMessage",
1273
- "type": "simple"
1274
- }
1275
- ]
1276
- },
1277
- "type": "Dropdown",
1278
- "choices": [
1279
- {
1280
- "name": "Plain text",
1281
- "value": "plainText"
1282
- },
1283
- {
1284
- "name": "Message block",
1285
- "value": "messageBlock"
1286
- }
1287
- ]
1339
+ "condition": {
1340
+ "allMatch": [
1341
+ {
1342
+ "property": "method",
1343
+ "equals": "chat.postMessage",
1344
+ "type": "simple"
1345
+ },
1346
+ {
1347
+ "property": "method",
1348
+ "equals": "chat.postMessage",
1349
+ "type": "simple"
1350
+ }
1351
+ ]
1352
+ },
1353
+ "type": "Dropdown",
1354
+ "choices": [
1355
+ {
1356
+ "name": "Plain text",
1357
+ "value": "plainText"
1358
+ },
1359
+ {
1360
+ "name": "Message block",
1361
+ "value": "messageBlock"
1362
+ }
1363
+ ]
1288
1364
  },
1289
1365
  {
1290
1366
  "id": "data.text",
@@ -1346,24 +1422,6 @@
1346
1422
  },
1347
1423
  "type": "String"
1348
1424
  },
1349
- {
1350
- "id": "data.documents",
1351
- "label": "attachments",
1352
- "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",
1353
- "optional": true,
1354
- "feel": "required",
1355
- "group": "message",
1356
- "binding": {
1357
- "name": "data.documents",
1358
- "type": "zeebe:input"
1359
- },
1360
- "condition": {
1361
- "property": "method",
1362
- "equals": "chat.postMessage",
1363
- "type": "simple"
1364
- },
1365
- "type": "String"
1366
- },
1367
1425
  {
1368
1426
  "id": "data.channel",
1369
1427
  "label": "Channel/user name/email",
@@ -1455,42 +1513,6 @@
1455
1513
  }
1456
1514
  ]
1457
1515
  },
1458
- {
1459
- "id": "data.channelType",
1460
- "label": "Invite By",
1461
- "optional": false,
1462
- "value": "channelId",
1463
- "group": "invite",
1464
- "binding": {
1465
- "name": "data.channelType",
1466
- "type": "zeebe:input"
1467
- },
1468
- "condition": {
1469
- "allMatch": [
1470
- {
1471
- "property": "method",
1472
- "equals": "conversations.invite",
1473
- "type": "simple"
1474
- },
1475
- {
1476
- "property": "method",
1477
- "equals": "conversations.invite",
1478
- "type": "simple"
1479
- }
1480
- ]
1481
- },
1482
- "type": "Dropdown",
1483
- "choices": [
1484
- {
1485
- "name": "Channel ID",
1486
- "value": "channelId"
1487
- },
1488
- {
1489
- "name": "Channel name",
1490
- "value": "channelName"
1491
- }
1492
- ]
1493
- },
1494
1516
  {
1495
1517
  "id": "data.channelName",
1496
1518
  "label": "Channel name",
@@ -1509,51 +1531,9 @@
1509
1531
  "type": "zeebe:input"
1510
1532
  },
1511
1533
  "condition": {
1512
- "allMatch": [
1513
- {
1514
- "property": "data.channelType",
1515
- "equals": "channelName",
1516
- "type": "simple"
1517
- },
1518
- {
1519
- "property": "method",
1520
- "equals": "conversations.invite",
1521
- "type": "simple"
1522
- }
1523
- ]
1524
- },
1525
- "type": "String"
1526
- },
1527
- {
1528
- "id": "data.channelId",
1529
- "label": "Channel ID",
1530
- "optional": false,
1531
- "constraints": {
1532
- "notEmpty": true,
1533
- "pattern": {
1534
- "value": "^(=|([-_a-z0-9]{1,80}$))",
1535
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1536
- }
1537
- },
1538
- "feel": "optional",
1539
- "group": "invite",
1540
- "binding": {
1541
- "name": "data.channelId",
1542
- "type": "zeebe:input"
1543
- },
1544
- "condition": {
1545
- "allMatch": [
1546
- {
1547
- "property": "data.channelType",
1548
- "equals": "channelId",
1549
- "type": "simple"
1550
- },
1551
- {
1552
- "property": "method",
1553
- "equals": "conversations.invite",
1554
- "type": "simple"
1555
- }
1556
- ]
1534
+ "property": "method",
1535
+ "equals": "conversations.invite",
1536
+ "type": "simple"
1557
1537
  },
1558
1538
  "type": "String"
1559
1539
  },
@@ -1627,20 +1607,279 @@
1627
1607
  "type": "String"
1628
1608
  },
1629
1609
  {
1630
- "id": "retryBackoff",
1631
- "label": "Retry backoff",
1632
- "description": "ISO-8601 duration to wait between retries",
1633
- "value": "PT0S",
1634
- "group": "retries",
1610
+ "id": "retryBackoff",
1611
+ "label": "Retry backoff",
1612
+ "description": "ISO-8601 duration to wait between retries",
1613
+ "value": "PT0S",
1614
+ "feel": "optional",
1615
+ "group": "retries",
1616
+ "binding": {
1617
+ "key": "retryBackoff",
1618
+ "type": "zeebe:taskHeader"
1619
+ },
1620
+ "type": "String"
1621
+ }
1622
+ ],
1623
+ "icon": {
1624
+ "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
1625
+ },
1626
+ "engines": {
1627
+ "camunda": "^8.6"
1628
+ }
1629
+ },
1630
+ {
1631
+ "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1632
+ "name": "Slack Outbound Connector",
1633
+ "id": "io.camunda.connectors.Slack.v1",
1634
+ "version": 2,
1635
+ "description": "Create a channel or send a message to a channel or user",
1636
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1637
+ "icon": {
1638
+ "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"
1639
+ },
1640
+ "category": {
1641
+ "id": "connectors",
1642
+ "name": "Connectors"
1643
+ },
1644
+ "appliesTo": ["bpmn:Task"],
1645
+ "elementType": {
1646
+ "value": "bpmn:ServiceTask"
1647
+ },
1648
+ "groups": [
1649
+ {
1650
+ "id": "method",
1651
+ "label": "Method"
1652
+ },
1653
+ {
1654
+ "id": "authentication",
1655
+ "label": "Authentication"
1656
+ },
1657
+ {
1658
+ "id": "message",
1659
+ "label": "Message"
1660
+ },
1661
+ {
1662
+ "id": "channel",
1663
+ "label": "Channel"
1664
+ },
1665
+ {
1666
+ "id": "invite",
1667
+ "label": "Invite"
1668
+ },
1669
+ {
1670
+ "id": "output",
1671
+ "label": "Output mapping"
1672
+ },
1673
+ {
1674
+ "id": "errors",
1675
+ "label": "Error handling"
1676
+ }
1677
+ ],
1678
+ "properties": [
1679
+ {
1680
+ "type": "Hidden",
1681
+ "value": "io.camunda:slack:1",
1682
+ "binding": {
1683
+ "type": "zeebe:taskDefinition",
1684
+ "property": "type"
1685
+ }
1686
+ },
1687
+ {
1688
+ "label": "Method",
1689
+ "group": "method",
1690
+ "id": "method",
1691
+ "type": "Dropdown",
1692
+ "value": "chat.postMessage",
1693
+ "choices": [
1694
+ {
1695
+ "name": "Post message",
1696
+ "value": "chat.postMessage"
1697
+ },
1698
+ {
1699
+ "name": "Create channel",
1700
+ "value": "conversations.create"
1701
+ },
1702
+ {
1703
+ "name": "Invite to channel",
1704
+ "value": "conversations.invite"
1705
+ }
1706
+ ],
1707
+ "binding": {
1708
+ "type": "zeebe:input",
1709
+ "name": "method"
1710
+ }
1711
+ },
1712
+ {
1713
+ "label": "OAuth token",
1714
+ "group": "authentication",
1715
+ "type": "String",
1716
+ "feel": "optional",
1717
+ "binding": {
1718
+ "type": "zeebe:input",
1719
+ "name": "token"
1720
+ },
1721
+ "constraints": {
1722
+ "notEmpty": true
1723
+ }
1724
+ },
1725
+ {
1726
+ "label": "Channel/user name/email",
1727
+ "group": "channel",
1728
+ "type": "String",
1729
+ "feel": "optional",
1730
+ "binding": {
1731
+ "type": "zeebe:input",
1732
+ "name": "data.channel"
1733
+ },
1734
+ "constraints": {
1735
+ "notEmpty": true,
1736
+ "pattern": {
1737
+ "value": "(^(#|@|=).*)|(^.+[@].+[.].{2,4}$)",
1738
+ "message": "Must be a #channel, @user, email or FEEL expression."
1739
+ }
1740
+ },
1741
+ "condition": {
1742
+ "property": "method",
1743
+ "equals": "chat.postMessage"
1744
+ }
1745
+ },
1746
+ {
1747
+ "label": "New channel name",
1748
+ "group": "channel",
1749
+ "type": "String",
1750
+ "feel": "optional",
1751
+ "binding": {
1752
+ "type": "zeebe:input",
1753
+ "name": "data.newChannelName"
1754
+ },
1755
+ "constraints": {
1756
+ "notEmpty": true,
1757
+ "pattern": {
1758
+ "value": "^(=|([-_a-z0-9]{1,80}$))",
1759
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1760
+ }
1761
+ },
1762
+ "condition": {
1763
+ "property": "method",
1764
+ "equals": "conversations.create"
1765
+ }
1766
+ },
1767
+ {
1768
+ "label": "Visibility",
1769
+ "group": "channel",
1770
+ "type": "Dropdown",
1771
+ "value": "PUBLIC",
1772
+ "optional": false,
1773
+ "choices": [
1774
+ {
1775
+ "name": "Private",
1776
+ "value": "PRIVATE"
1777
+ },
1778
+ {
1779
+ "name": "Public",
1780
+ "value": "PUBLIC"
1781
+ }
1782
+ ],
1783
+ "binding": {
1784
+ "type": "zeebe:input",
1785
+ "name": "data.visibility"
1786
+ },
1787
+ "condition": {
1788
+ "property": "method",
1789
+ "equals": "conversations.create"
1790
+ }
1791
+ },
1792
+ {
1793
+ "label": "Message",
1794
+ "group": "message",
1795
+ "type": "Text",
1796
+ "feel": "optional",
1797
+ "binding": {
1798
+ "type": "zeebe:input",
1799
+ "name": "data.text"
1800
+ },
1801
+ "constraints": {
1802
+ "notEmpty": true
1803
+ },
1804
+ "condition": {
1805
+ "property": "method",
1806
+ "equals": "chat.postMessage"
1807
+ }
1808
+ },
1809
+ {
1810
+ "label": "Channel name",
1811
+ "group": "invite",
1812
+ "type": "String",
1813
+ "feel": "optional",
1814
+ "binding": {
1815
+ "type": "zeebe:input",
1816
+ "name": "data.channelName"
1817
+ },
1818
+ "constraints": {
1819
+ "notEmpty": true,
1820
+ "pattern": {
1821
+ "value": "^(=|[-_a-z0-9]{1,80}$)",
1822
+ "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1823
+ }
1824
+ },
1825
+ "condition": {
1826
+ "property": "method",
1827
+ "equals": "conversations.invite"
1828
+ }
1829
+ },
1830
+ {
1831
+ "label": "Users",
1832
+ "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
1833
+ "group": "invite",
1834
+ "type": "String",
1835
+ "feel": "optional",
1836
+ "binding": {
1837
+ "type": "zeebe:input",
1838
+ "name": "data.users"
1839
+ },
1840
+ "constraints": {
1841
+ "notEmpty": true
1842
+ },
1843
+ "condition": {
1844
+ "property": "method",
1845
+ "equals": "conversations.invite"
1846
+ }
1847
+ },
1848
+ {
1849
+ "label": "Result variable",
1850
+ "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>",
1851
+ "group": "output",
1852
+ "type": "String",
1853
+ "binding": {
1854
+ "type": "zeebe:taskHeader",
1855
+ "key": "resultVariable"
1856
+ }
1857
+ },
1858
+ {
1859
+ "label": "Result expression",
1860
+ "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>",
1861
+ "group": "output",
1862
+ "type": "Text",
1863
+ "feel": "required",
1864
+ "binding": {
1865
+ "type": "zeebe:taskHeader",
1866
+ "key": "resultExpression"
1867
+ }
1868
+ },
1869
+ {
1870
+ "label": "Error expression",
1871
+ "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>",
1872
+ "group": "errors",
1873
+ "type": "Text",
1874
+ "feel": "required",
1635
1875
  "binding": {
1636
- "key": "retryBackoff",
1637
- "type": "zeebe:taskHeader"
1638
- },
1639
- "type": "String"
1876
+ "type": "zeebe:taskHeader",
1877
+ "key": "errorExpression"
1878
+ }
1640
1879
  }
1641
1880
  ],
1642
- "icon": {
1643
- "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
1881
+ "engines": {
1882
+ "camunda": "^8.2"
1644
1883
  }
1645
1884
  },
1646
1885
  {
@@ -1649,7 +1888,7 @@
1649
1888
  "id": "io.camunda.connectors.Slack.v1",
1650
1889
  "description": "Create a channel or send a message to a channel or user",
1651
1890
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
1652
- "version": 5,
1891
+ "version": 3,
1653
1892
  "category": {
1654
1893
  "id": "connectors",
1655
1894
  "name": "Connectors"
@@ -1857,23 +2096,6 @@
1857
2096
  },
1858
2097
  "type": "String"
1859
2098
  },
1860
- {
1861
- "id": "data.thread",
1862
- "label": "Thread",
1863
- "optional": true,
1864
- "feel": "optional",
1865
- "group": "channel",
1866
- "binding": {
1867
- "name": "data.thread",
1868
- "type": "zeebe:input"
1869
- },
1870
- "condition": {
1871
- "property": "method",
1872
- "equals": "chat.postMessage",
1873
- "type": "simple"
1874
- },
1875
- "type": "String"
1876
- },
1877
2099
  {
1878
2100
  "id": "data.newChannelName",
1879
2101
  "label": "Channel name",
@@ -1881,7 +2103,7 @@
1881
2103
  "constraints": {
1882
2104
  "notEmpty": true,
1883
2105
  "pattern": {
1884
- "value": "^(=|([-_a-z0-9]{1,80}$))",
2106
+ "value": "^(=|[-_a-z0-9]{1,80}$)",
1885
2107
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1886
2108
  }
1887
2109
  },
@@ -1928,42 +2150,6 @@
1928
2150
  }
1929
2151
  ]
1930
2152
  },
1931
- {
1932
- "id": "data.channelType",
1933
- "label": "Invite By",
1934
- "optional": false,
1935
- "value": "channelId",
1936
- "group": "invite",
1937
- "binding": {
1938
- "name": "data.channelType",
1939
- "type": "zeebe:input"
1940
- },
1941
- "condition": {
1942
- "allMatch": [
1943
- {
1944
- "property": "method",
1945
- "equals": "conversations.invite",
1946
- "type": "simple"
1947
- },
1948
- {
1949
- "property": "method",
1950
- "equals": "conversations.invite",
1951
- "type": "simple"
1952
- }
1953
- ]
1954
- },
1955
- "type": "Dropdown",
1956
- "choices": [
1957
- {
1958
- "name": "Channel ID",
1959
- "value": "channelId"
1960
- },
1961
- {
1962
- "name": "Channel name",
1963
- "value": "channelName"
1964
- }
1965
- ]
1966
- },
1967
2153
  {
1968
2154
  "id": "data.channelName",
1969
2155
  "label": "Channel name",
@@ -1971,7 +2157,7 @@
1971
2157
  "constraints": {
1972
2158
  "notEmpty": true,
1973
2159
  "pattern": {
1974
- "value": "^(=|([-_a-z0-9]{1,80}$))",
2160
+ "value": "^(=|[-_a-z0-9]{1,80}$)",
1975
2161
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
1976
2162
  }
1977
2163
  },
@@ -1982,51 +2168,9 @@
1982
2168
  "type": "zeebe:input"
1983
2169
  },
1984
2170
  "condition": {
1985
- "allMatch": [
1986
- {
1987
- "property": "data.channelType",
1988
- "equals": "channelName",
1989
- "type": "simple"
1990
- },
1991
- {
1992
- "property": "method",
1993
- "equals": "conversations.invite",
1994
- "type": "simple"
1995
- }
1996
- ]
1997
- },
1998
- "type": "String"
1999
- },
2000
- {
2001
- "id": "data.channelId",
2002
- "label": "Channel ID",
2003
- "optional": false,
2004
- "constraints": {
2005
- "notEmpty": true,
2006
- "pattern": {
2007
- "value": "^(=|([-_a-z0-9]{1,80}$))",
2008
- "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
2009
- }
2010
- },
2011
- "feel": "optional",
2012
- "group": "invite",
2013
- "binding": {
2014
- "name": "data.channelId",
2015
- "type": "zeebe:input"
2016
- },
2017
- "condition": {
2018
- "allMatch": [
2019
- {
2020
- "property": "data.channelType",
2021
- "equals": "channelId",
2022
- "type": "simple"
2023
- },
2024
- {
2025
- "property": "method",
2026
- "equals": "conversations.invite",
2027
- "type": "simple"
2028
- }
2029
- ]
2171
+ "property": "method",
2172
+ "equals": "conversations.invite",
2173
+ "type": "simple"
2030
2174
  },
2031
2175
  "type": "String"
2032
2176
  },
@@ -2117,16 +2261,19 @@
2117
2261
  "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
2118
2262
  },
2119
2263
  "engines": {
2120
- "camunda": "^8.6"
2264
+ "camunda": "^8.5"
2121
2265
  }
2122
2266
  },
2123
2267
  {
2124
2268
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2125
- "name": "Slack Outbound Connector",
2269
+ "name": "Slack connector",
2126
2270
  "id": "io.camunda.connectors.Slack.v1",
2271
+ "version": 1,
2127
2272
  "description": "Create a channel or send a message to a channel or user",
2128
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/slack/?slack=outbound",
2129
- "version": 4,
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
+ },
2130
2277
  "category": {
2131
2278
  "id": "connectors",
2132
2279
  "name": "Connectors"
@@ -2136,14 +2283,14 @@
2136
2283
  "value": "bpmn:ServiceTask"
2137
2284
  },
2138
2285
  "groups": [
2139
- {
2140
- "id": "authentication",
2141
- "label": "Authentication"
2142
- },
2143
2286
  {
2144
2287
  "id": "method",
2145
2288
  "label": "Method"
2146
2289
  },
2290
+ {
2291
+ "id": "authentication",
2292
+ "label": "Authentication"
2293
+ },
2147
2294
  {
2148
2295
  "id": "message",
2149
2296
  "label": "Message"
@@ -2161,48 +2308,25 @@
2161
2308
  "label": "Output mapping"
2162
2309
  },
2163
2310
  {
2164
- "id": "error",
2311
+ "id": "errors",
2165
2312
  "label": "Error handling"
2166
- },
2167
- {
2168
- "id": "retries",
2169
- "label": "Retries"
2170
2313
  }
2171
2314
  ],
2172
2315
  "properties": [
2173
2316
  {
2317
+ "type": "Hidden",
2174
2318
  "value": "io.camunda:slack:1",
2175
2319
  "binding": {
2176
- "property": "type",
2177
- "type": "zeebe:taskDefinition"
2178
- },
2179
- "type": "Hidden"
2180
- },
2181
- {
2182
- "id": "token",
2183
- "label": "OAuth token",
2184
- "optional": false,
2185
- "constraints": {
2186
- "notEmpty": true
2187
- },
2188
- "feel": "optional",
2189
- "group": "authentication",
2190
- "binding": {
2191
- "name": "token",
2192
- "type": "zeebe:input"
2193
- },
2194
- "type": "String"
2320
+ "type": "zeebe:taskDefinition",
2321
+ "property": "type"
2322
+ }
2195
2323
  },
2196
2324
  {
2197
- "id": "method",
2198
2325
  "label": "Method",
2199
- "value": "chat.postMessage",
2200
2326
  "group": "method",
2201
- "binding": {
2202
- "name": "method",
2203
- "type": "zeebe:input"
2204
- },
2327
+ "id": "method",
2205
2328
  "type": "Dropdown",
2329
+ "value": "chat.postMessage",
2206
2330
  "choices": [
2207
2331
  {
2208
2332
  "name": "Post message",
@@ -2216,145 +2340,55 @@
2216
2340
  "name": "Invite to channel",
2217
2341
  "value": "conversations.invite"
2218
2342
  }
2219
- ]
2220
- },
2221
- {
2222
- "id": "data.messageType",
2223
- "label": "Message type",
2224
- "optional": false,
2225
- "value": "plainText",
2226
- "group": "message",
2343
+ ],
2227
2344
  "binding": {
2228
- "name": "data.messageType",
2229
- "type": "zeebe:input"
2230
- },
2231
- "condition": {
2232
- "allMatch": [
2233
- {
2234
- "property": "method",
2235
- "equals": "chat.postMessage",
2236
- "type": "simple"
2237
- },
2238
- {
2239
- "property": "method",
2240
- "equals": "chat.postMessage",
2241
- "type": "simple"
2242
- }
2243
- ]
2244
- },
2245
- "type": "Dropdown",
2246
- "choices": [
2247
- {
2248
- "name": "Plain text",
2249
- "value": "plainText"
2250
- },
2251
- {
2252
- "name": "Message block",
2253
- "value": "messageBlock"
2254
- }
2255
- ]
2345
+ "type": "zeebe:input",
2346
+ "name": "method"
2347
+ }
2256
2348
  },
2257
2349
  {
2258
- "id": "data.text",
2259
- "label": "Message",
2260
- "optional": false,
2261
- "constraints": {
2262
- "notEmpty": true
2263
- },
2264
- "feel": "optional",
2265
- "group": "message",
2266
- "binding": {
2267
- "name": "data.text",
2268
- "type": "zeebe:input"
2269
- },
2270
- "condition": {
2271
- "allMatch": [
2272
- {
2273
- "property": "data.messageType",
2274
- "equals": "plainText",
2275
- "type": "simple"
2276
- },
2277
- {
2278
- "property": "method",
2279
- "equals": "chat.postMessage",
2280
- "type": "simple"
2281
- }
2282
- ]
2350
+ "label": "OAuth token",
2351
+ "group": "authentication",
2352
+ "type": "String",
2353
+ "feel": "optional",
2354
+ "binding": {
2355
+ "type": "zeebe:input",
2356
+ "name": "token"
2283
2357
  },
2284
- "type": "Text"
2285
- },
2286
- {
2287
- "id": "data.blockContent",
2288
- "label": "Message block",
2289
- "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>",
2290
- "optional": false,
2291
- "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]",
2292
2358
  "constraints": {
2293
2359
  "notEmpty": true
2294
- },
2295
- "feel": "required",
2296
- "group": "message",
2297
- "binding": {
2298
- "name": "data.blockContent",
2299
- "type": "zeebe:input"
2300
- },
2301
- "condition": {
2302
- "allMatch": [
2303
- {
2304
- "property": "data.messageType",
2305
- "equals": "messageBlock",
2306
- "type": "simple"
2307
- },
2308
- {
2309
- "property": "method",
2310
- "equals": "chat.postMessage",
2311
- "type": "simple"
2312
- }
2313
- ]
2314
- },
2315
- "type": "String"
2360
+ }
2316
2361
  },
2317
2362
  {
2318
- "id": "data.channel",
2319
2363
  "label": "Channel/user name/email",
2320
- "optional": false,
2321
- "constraints": {
2322
- "notEmpty": true
2323
- },
2324
- "feel": "optional",
2325
2364
  "group": "channel",
2365
+ "type": "String",
2366
+ "feel": "optional",
2326
2367
  "binding": {
2327
- "name": "data.channel",
2328
- "type": "zeebe:input"
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
+ }
2329
2377
  },
2330
2378
  "condition": {
2331
2379
  "property": "method",
2332
- "equals": "chat.postMessage",
2333
- "type": "simple"
2334
- },
2335
- "type": "String"
2380
+ "equals": "chat.postMessage"
2381
+ }
2336
2382
  },
2337
2383
  {
2338
- "id": "data.thread",
2339
- "label": "Thread",
2340
- "optional": true,
2341
- "feel": "optional",
2384
+ "label": "New channel name",
2342
2385
  "group": "channel",
2386
+ "type": "String",
2387
+ "feel": "optional",
2343
2388
  "binding": {
2344
- "name": "data.thread",
2345
- "type": "zeebe:input"
2346
- },
2347
- "condition": {
2348
- "property": "method",
2349
- "equals": "chat.postMessage",
2350
- "type": "simple"
2389
+ "type": "zeebe:input",
2390
+ "name": "data.newChannelName"
2351
2391
  },
2352
- "type": "String"
2353
- },
2354
- {
2355
- "id": "data.newChannelName",
2356
- "label": "Channel name",
2357
- "optional": false,
2358
2392
  "constraints": {
2359
2393
  "notEmpty": true,
2360
2394
  "pattern": {
@@ -2362,53 +2396,62 @@
2362
2396
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
2363
2397
  }
2364
2398
  },
2365
- "feel": "optional",
2366
- "group": "channel",
2367
- "binding": {
2368
- "name": "data.newChannelName",
2369
- "type": "zeebe:input"
2370
- },
2371
2399
  "condition": {
2372
2400
  "property": "method",
2373
- "equals": "conversations.create",
2374
- "type": "simple"
2375
- },
2376
- "type": "String"
2401
+ "equals": "conversations.create"
2402
+ }
2377
2403
  },
2378
2404
  {
2379
- "id": "data.visibility",
2380
2405
  "label": "Visibility",
2381
- "optional": false,
2382
- "value": "PUBLIC",
2383
- "constraints": {
2384
- "notEmpty": true
2385
- },
2386
2406
  "group": "channel",
2387
- "binding": {
2388
- "name": "data.visibility",
2389
- "type": "zeebe:input"
2390
- },
2391
- "condition": {
2392
- "property": "method",
2393
- "equals": "conversations.create",
2394
- "type": "simple"
2395
- },
2396
2407
  "type": "Dropdown",
2408
+ "value": "PUBLIC",
2409
+ "optional": false,
2397
2410
  "choices": [
2398
- {
2399
- "name": "Public",
2400
- "value": "PUBLIC"
2401
- },
2402
2411
  {
2403
2412
  "name": "Private",
2404
2413
  "value": "PRIVATE"
2414
+ },
2415
+ {
2416
+ "name": "Public",
2417
+ "value": "PUBLIC"
2405
2418
  }
2406
- ]
2419
+ ],
2420
+ "binding": {
2421
+ "type": "zeebe:input",
2422
+ "name": "data.visibility"
2423
+ },
2424
+ "condition": {
2425
+ "property": "method",
2426
+ "equals": "conversations.create"
2427
+ }
2428
+ },
2429
+ {
2430
+ "label": "Message",
2431
+ "group": "message",
2432
+ "type": "Text",
2433
+ "feel": "optional",
2434
+ "binding": {
2435
+ "type": "zeebe:input",
2436
+ "name": "data.text"
2437
+ },
2438
+ "constraints": {
2439
+ "notEmpty": true
2440
+ },
2441
+ "condition": {
2442
+ "property": "method",
2443
+ "equals": "chat.postMessage"
2444
+ }
2407
2445
  },
2408
2446
  {
2409
- "id": "data.channelName",
2410
2447
  "label": "Channel name",
2411
- "optional": false,
2448
+ "group": "invite",
2449
+ "type": "String",
2450
+ "feel": "optional",
2451
+ "binding": {
2452
+ "type": "zeebe:input",
2453
+ "name": "data.channelName"
2454
+ },
2412
2455
  "constraints": {
2413
2456
  "notEmpty": true,
2414
2457
  "pattern": {
@@ -2416,107 +2459,64 @@
2416
2459
  "message": "May contain up to 80 lowercase letters, digits, underscores, and dashes"
2417
2460
  }
2418
2461
  },
2419
- "feel": "optional",
2420
- "group": "invite",
2421
- "binding": {
2422
- "name": "data.channelName",
2423
- "type": "zeebe:input"
2424
- },
2425
2462
  "condition": {
2426
2463
  "property": "method",
2427
- "equals": "conversations.invite",
2428
- "type": "simple"
2429
- },
2430
- "type": "String"
2464
+ "equals": "conversations.invite"
2465
+ }
2431
2466
  },
2432
2467
  {
2433
- "id": "data.users",
2434
2468
  "label": "Users",
2435
2469
  "description": "Comma-separated list of users, e.g., '@user1,@user2' or '=[ \"@user1\", \"user2@company.com\"]'",
2436
- "optional": false,
2437
- "constraints": {
2438
- "notEmpty": true
2439
- },
2440
- "feel": "optional",
2441
2470
  "group": "invite",
2471
+ "type": "String",
2472
+ "feel": "optional",
2442
2473
  "binding": {
2443
- "name": "data.users",
2444
- "type": "zeebe:input"
2474
+ "type": "zeebe:input",
2475
+ "name": "data.users"
2476
+ },
2477
+ "constraints": {
2478
+ "notEmpty": true
2445
2479
  },
2446
2480
  "condition": {
2447
2481
  "property": "method",
2448
- "equals": "conversations.invite",
2449
- "type": "simple"
2450
- },
2451
- "type": "String"
2482
+ "equals": "conversations.invite"
2483
+ }
2452
2484
  },
2453
2485
  {
2454
- "id": "resultVariable",
2455
2486
  "label": "Result variable",
2456
- "description": "Name of variable to store the response in",
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>",
2457
2488
  "group": "output",
2489
+ "type": "String",
2458
2490
  "binding": {
2459
- "key": "resultVariable",
2460
- "type": "zeebe:taskHeader"
2461
- },
2462
- "type": "String"
2491
+ "type": "zeebe:taskHeader",
2492
+ "key": "resultVariable"
2493
+ }
2463
2494
  },
2464
2495
  {
2465
- "id": "resultExpression",
2466
2496
  "label": "Result expression",
2467
- "description": "Expression to map the response into process variables",
2468
- "feel": "required",
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>",
2469
2498
  "group": "output",
2499
+ "type": "Text",
2500
+ "feel": "required",
2470
2501
  "binding": {
2471
- "key": "resultExpression",
2472
- "type": "zeebe:taskHeader"
2473
- },
2474
- "type": "Text"
2502
+ "type": "zeebe:taskHeader",
2503
+ "key": "resultExpression"
2504
+ }
2475
2505
  },
2476
2506
  {
2477
- "id": "errorExpression",
2478
2507
  "label": "Error expression",
2479
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
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",
2480
2511
  "feel": "required",
2481
- "group": "error",
2482
- "binding": {
2483
- "key": "errorExpression",
2484
- "type": "zeebe:taskHeader"
2485
- },
2486
- "type": "Text"
2487
- },
2488
- {
2489
- "id": "retryCount",
2490
- "label": "Retries",
2491
- "description": "Number of retries",
2492
- "value": "3",
2493
- "feel": "optional",
2494
- "group": "retries",
2495
- "binding": {
2496
- "property": "retries",
2497
- "type": "zeebe:taskDefinition"
2498
- },
2499
- "type": "String"
2500
- },
2501
- {
2502
- "id": "retryBackoff",
2503
- "label": "Retry backoff",
2504
- "description": "ISO-8601 duration to wait between retries",
2505
- "value": "PT0S",
2506
- "feel": "optional",
2507
- "group": "retries",
2508
2512
  "binding": {
2509
- "key": "retryBackoff",
2510
- "type": "zeebe:taskHeader"
2511
- },
2512
- "type": "String"
2513
+ "type": "zeebe:taskHeader",
2514
+ "key": "errorExpression"
2515
+ }
2513
2516
  }
2514
2517
  ],
2515
- "icon": {
2516
- "contents": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTI3IiBoZWlnaHQ9IjEyNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjcuMiA4MGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjJDNi43IDkzLjIuOCA4Ny4zLjggODBjMC03LjMgNS45LTEzLjIgMTMuMi0xMy4yaDEzLjJWODB6bTYuNiAwYzAtNy4zIDUuOS0xMy4yIDEzLjItMTMuMiA3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzNjMCA3LjMtNS45IDEzLjItMTMuMiAxMy4yLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMlY4MHoiIGZpbGw9IiNFMDFFNUEiLz4KICA8cGF0aCBkPSJNNDcgMjdjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMkMzMy44IDYuNSAzOS43LjYgNDcgLjZjNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yVjI3SDQ3em0wIDYuN2M3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDEzLjlDNi42IDYwLjEuNyA1NC4yLjcgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJINDd6IiBmaWxsPSIjMzZDNUYwIi8+CiAgPHBhdGggZD0iTTk5LjkgNDYuOWMwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjIgNy4zIDAgMTMuMiA1LjkgMTMuMiAxMy4yIDAgNy4zLTUuOSAxMy4yLTEzLjIgMTMuMkg5OS45VjQ2Ljl6bS02LjYgMGMwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjEzLjhDNjYuOSA2LjUgNzIuOC42IDgwLjEuNmM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjJ2MzMuMXoiIGZpbGw9IiMyRUI2N0QiLz4KICA8cGF0aCBkPSJNODAuMSA5OS44YzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDcuMy01LjkgMTMuMi0xMy4yIDEzLjItNy4zIDAtMTMuMi01LjktMTMuMi0xMy4yVjk5LjhoMTMuMnptMC02LjZjLTcuMyAwLTEzLjItNS45LTEzLjItMTMuMiAwLTcuMyA1LjktMTMuMiAxMy4yLTEzLjJoMzMuMWM3LjMgMCAxMy4yIDUuOSAxMy4yIDEzLjIgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ySDgwLjF6IiBmaWxsPSIjRUNCMjJFIi8+Cjwvc3ZnPgo="
2517
- },
2518
2518
  "engines": {
2519
- "camunda": "^8.6"
2519
+ "camunda": "^8.2"
2520
2520
  }
2521
2521
  },
2522
2522
  {