@camunda/connectors-element-templates 1.0.7 → 1.0.9

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 (92) hide show
  1. package/package.json +1 -1
  2. package/src/connectors.js +24 -0
  3. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +32 -31
  4. package/src/element-templates/agenticai-aiagent-job-worker.json +1655 -7
  5. package/src/element-templates/agenticai-aiagent-outbound-connector.json +2906 -1291
  6. package/src/element-templates/agenticai-mcp-client-outbound-connector.json +1 -1
  7. package/src/element-templates/agenticai-mcp-remote-client-outbound-connector.json +1 -1
  8. package/src/element-templates/asana-connector.json +8 -8
  9. package/src/element-templates/automation-anywhere-outbound-connector.json +619 -619
  10. package/src/element-templates/aws-bedrock-outbound-connector.json +30 -30
  11. package/src/element-templates/aws-dynamodb-outbound-connector.json +1325 -1325
  12. package/src/element-templates/aws-eventbridge-connector-intermediate.json +38 -38
  13. package/src/element-templates/aws-eventbridge-connector-message-start.json +10 -10
  14. package/src/element-templates/aws-eventbridge-connector-receive.json +356 -0
  15. package/src/element-templates/aws-eventbridge-outbound-connector.json +10 -10
  16. package/src/element-templates/aws-lambda-outbound-connector.json +256 -256
  17. package/src/element-templates/aws-s3-outbound-connector.json +30 -30
  18. package/src/element-templates/aws-sagemaker-outbound-connector.json +50 -50
  19. package/src/element-templates/aws-sns-inbound-boundary.json +311 -311
  20. package/src/element-templates/aws-sns-inbound-intermediate.json +328 -328
  21. package/src/element-templates/aws-sns-inbound-message-start.json +343 -343
  22. package/src/element-templates/aws-sns-inbound-receive.json +304 -0
  23. package/src/element-templates/aws-sns-inbound-start-event.json +131 -131
  24. package/src/element-templates/aws-sns-outbound-connector.json +424 -424
  25. package/src/element-templates/aws-sqs-boundary-connector.json +305 -305
  26. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +918 -918
  27. package/src/element-templates/aws-sqs-outbound-connector.json +743 -743
  28. package/src/element-templates/aws-sqs-receive-connector.json +418 -0
  29. package/src/element-templates/aws-sqs-start-event-connector.json +369 -369
  30. package/src/element-templates/aws-sqs-start-message.json +914 -914
  31. package/src/element-templates/blue-prism-connector.json +50 -50
  32. package/src/element-templates/csv-outbound-connector.json +26 -26
  33. package/src/element-templates/easy-post-connector.json +271 -271
  34. package/src/element-templates/email-inbound-connector-boundary.json +19 -19
  35. package/src/element-templates/email-inbound-connector-intermediate.json +19 -19
  36. package/src/element-templates/email-message-start-event-connector.json +19 -19
  37. package/src/element-templates/embeddings-vector-database-outbound-connector.json +505 -507
  38. package/src/element-templates/github-connector.json +2723 -2723
  39. package/src/element-templates/github-webhook-connector-intermediate.json +42 -42
  40. package/src/element-templates/github-webhook-connector-receive.json +202 -0
  41. package/src/element-templates/github-webhook-connector-start-event.json +32 -32
  42. package/src/element-templates/gitlab-connector.json +160 -160
  43. package/src/element-templates/google-drive-outbound-connector.json +438 -438
  44. package/src/element-templates/google-gemini-outbound-connector.json +32 -32
  45. package/src/element-templates/google-maps-platform-connector.json +16 -16
  46. package/src/element-templates/google-sheets-outbound-connector.json +1059 -1059
  47. package/src/element-templates/graphql-outbound-connector.json +1179 -1179
  48. package/src/element-templates/http-json-connector.json +2662 -2057
  49. package/src/element-templates/http-polling-boundary-catch-event-connector.json +635 -6
  50. package/src/element-templates/http-polling-connector.json +631 -2
  51. package/src/element-templates/hugging-face-connector.json +34 -34
  52. package/src/element-templates/jdbc-outbound-connector.json +41 -41
  53. package/src/element-templates/kafka-inbound-connector-boundary.json +958 -958
  54. package/src/element-templates/kafka-inbound-connector-intermediate.json +681 -681
  55. package/src/element-templates/kafka-inbound-connector-receive.json +498 -0
  56. package/src/element-templates/kafka-inbound-connector.json +240 -240
  57. package/src/element-templates/kafka-outbound-connector.json +356 -356
  58. package/src/element-templates/microsoft-office365-mail-connector.json +32 -32
  59. package/src/element-templates/microsoft-teams-outbound-connector.json +4188 -4188
  60. package/src/element-templates/openai-connector.json +78 -78
  61. package/src/element-templates/operate-connector.json +79 -79
  62. package/src/element-templates/power-automate-connector.json +12 -12
  63. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +747 -747
  64. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +463 -463
  65. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +11 -11
  66. package/src/element-templates/rabbitmq-inbound-connector-receive.json +461 -0
  67. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +681 -681
  68. package/src/element-templates/rabbitmq-outbound-connector.json +670 -670
  69. package/src/element-templates/salesforce-connector.json +38 -38
  70. package/src/element-templates/sendgrid-outbound-connector.json +397 -397
  71. package/src/element-templates/servicenow-connector.json +942 -0
  72. package/src/element-templates/servicenow-flow-starter-connector.json +643 -0
  73. package/src/element-templates/servicenow-incident-connector.json +969 -0
  74. package/src/element-templates/slack-inbound-boundary.json +173 -173
  75. package/src/element-templates/slack-inbound-intermediate.json +232 -232
  76. package/src/element-templates/slack-inbound-message-start.json +209 -209
  77. package/src/element-templates/slack-inbound-receive.json +290 -0
  78. package/src/element-templates/slack-inbound-start-event.json +218 -218
  79. package/src/element-templates/slack-outbound-connector.json +955 -955
  80. package/src/element-templates/twilio-connector.json +87 -87
  81. package/src/element-templates/twilio-webhook-boundary-connector.json +26 -26
  82. package/src/element-templates/twilio-webhook-connector.json +20 -20
  83. package/src/element-templates/twilio-webhook-intermediate-connector.json +50 -50
  84. package/src/element-templates/twilio-webhook-message-start-connector.json +8 -8
  85. package/src/element-templates/twilio-webhook-receive-connector.json +262 -0
  86. package/src/element-templates/uipath-connector.json +41 -41
  87. package/src/element-templates/webhook-connector-boundary.json +1050 -1050
  88. package/src/element-templates/webhook-connector-intermediate.json +1356 -1356
  89. package/src/element-templates/webhook-connector-receive.json +609 -0
  90. package/src/element-templates/webhook-connector-start-event.json +2280 -2280
  91. package/src/element-templates/webhook-connector-start-message.json +1205 -1205
  92. package/src/element-templates/whatsapp-connector.json +42 -42
@@ -3,12 +3,9 @@
3
3
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
4
4
  "name": "Webhook Message Start Event Connector",
5
5
  "id": "io.camunda.connectors.webhook.WebhookConnectorStartMessage.v1",
6
+ "version": 1,
6
7
  "description": "Configure webhook to receive callbacks",
7
- "metadata": {
8
- "keywords": []
9
- },
10
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
11
- "version": 13,
8
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
12
9
  "category": {
13
10
  "id": "connectors",
14
11
  "name": "Connectors"
@@ -18,9 +15,6 @@
18
15
  "value": "bpmn:StartEvent",
19
16
  "eventDefinition": "bpmn:MessageEventDefinition"
20
17
  },
21
- "engines": {
22
- "camunda": "^8.3"
23
- },
24
18
  "groups": [
25
19
  {
26
20
  "id": "endpoint",
@@ -34,49 +28,56 @@
34
28
  "id": "authorization",
35
29
  "label": "Authorization"
36
30
  },
37
- {
38
- "id": "webhookResponse",
39
- "label": "Webhook response"
40
- },
41
31
  {
42
32
  "id": "activation",
43
33
  "label": "Activation"
44
34
  },
45
35
  {
46
36
  "id": "correlation",
47
- "label": "Correlation",
48
- "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
37
+ "label": "Subprocess correlation"
49
38
  },
50
39
  {
51
- "id": "deduplication",
52
- "label": "Deduplication",
53
- "tooltip": "Deduplication allows you to configure multiple inbound connector elements to reuse the same backend (consumer/thread/endpoint) by sharing the same deduplication ID."
40
+ "id": "variable-mapping",
41
+ "label": "Variable mapping"
54
42
  },
55
43
  {
56
- "id": "output",
57
- "label": "Output mapping"
44
+ "id": "webhookResponse",
45
+ "label": "Webhook response"
58
46
  }
59
47
  ],
60
48
  "properties": [
61
49
  {
50
+ "type": "Hidden",
62
51
  "value": "io.camunda:webhook:1",
63
52
  "binding": {
64
- "name": "inbound.type",
65
- "type": "zeebe:property"
53
+ "type": "zeebe:property",
54
+ "name": "inbound.type"
55
+ }
56
+ },
57
+ {
58
+ "type": "Hidden",
59
+ "generatedValue": {
60
+ "type": "uuid"
66
61
  },
67
- "type": "Hidden"
62
+ "binding": {
63
+ "type": "bpmn:Message#property",
64
+ "name": "name"
65
+ }
68
66
  },
69
67
  {
70
- "id": "inbound.method",
68
+ "type": "Hidden",
69
+ "value": "ConfigurableInboundWebhook",
70
+ "binding": {
71
+ "type": "zeebe:property",
72
+ "name": "inbound.subtype"
73
+ }
74
+ },
75
+ {
76
+ "id": "webhookMethod",
71
77
  "label": "Webhook method",
78
+ "group": "endpoint",
72
79
  "description": "Select HTTP method",
73
- "optional": false,
74
80
  "value": "any",
75
- "group": "endpoint",
76
- "binding": {
77
- "name": "inbound.method",
78
- "type": "zeebe:property"
79
- },
80
81
  "type": "Dropdown",
81
82
  "choices": [
82
83
  {
@@ -84,53 +85,46 @@
84
85
  "value": "any"
85
86
  },
86
87
  {
87
- "name": "GET",
88
+ "name": "Get",
88
89
  "value": "get"
89
90
  },
90
91
  {
91
- "name": "POST",
92
+ "name": "Post",
92
93
  "value": "post"
93
94
  },
94
95
  {
95
- "name": "PUT",
96
+ "name": "Put",
96
97
  "value": "put"
97
98
  },
98
99
  {
99
- "name": "DELETE",
100
+ "name": "Delete",
100
101
  "value": "delete"
101
102
  }
102
- ]
103
+ ],
104
+ "binding": {
105
+ "type": "zeebe:property",
106
+ "name": "inbound.method"
107
+ }
103
108
  },
104
109
  {
105
- "id": "inbound.context",
106
110
  "label": "Webhook ID",
107
- "description": "The webhook ID is a part of the URL",
108
- "optional": false,
109
- "constraints": {
110
- "notEmpty": true,
111
- "pattern": {
112
- "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
113
- "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
114
- }
115
- },
111
+ "type": "String",
116
112
  "group": "endpoint",
117
113
  "binding": {
118
- "name": "inbound.context",
119
- "type": "zeebe:property"
114
+ "type": "zeebe:property",
115
+ "name": "inbound.context"
120
116
  },
121
- "type": "String"
117
+ "description": "The webhook ID is a part of the URL",
118
+ "constraints": {
119
+ "notEmpty": true
120
+ }
122
121
  },
123
122
  {
124
- "id": "inbound.shouldValidateHmac",
123
+ "id": "shouldValidateHmac",
125
124
  "label": "HMAC authentication",
126
- "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
127
- "optional": false,
128
- "value": "disabled",
129
125
  "group": "authentication",
130
- "binding": {
131
- "name": "inbound.shouldValidateHmac",
132
- "type": "zeebe:property"
133
- },
126
+ "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
127
+ "value": "disabled",
134
128
  "type": "Dropdown",
135
129
  "choices": [
136
130
  {
@@ -141,60 +135,47 @@
141
135
  "name": "Disabled",
142
136
  "value": "disabled"
143
137
  }
144
- ]
138
+ ],
139
+ "binding": {
140
+ "type": "zeebe:property",
141
+ "name": "inbound.shouldValidateHmac"
142
+ }
145
143
  },
146
144
  {
147
- "id": "inbound.hmacSecret",
148
145
  "label": "HMAC secret key",
149
146
  "description": "Shared secret key",
150
- "optional": true,
151
- "feel": "optional",
147
+ "type": "String",
152
148
  "group": "authentication",
149
+ "optional": true,
153
150
  "binding": {
154
- "name": "inbound.hmacSecret",
155
- "type": "zeebe:property"
151
+ "type": "zeebe:property",
152
+ "name": "inbound.hmacSecret"
156
153
  },
157
154
  "condition": {
158
- "property": "inbound.shouldValidateHmac",
159
- "equals": "enabled",
160
- "type": "simple"
161
- },
162
- "type": "String"
155
+ "property": "shouldValidateHmac",
156
+ "equals": "enabled"
157
+ }
163
158
  },
164
159
  {
165
- "id": "inbound.hmacHeader",
166
160
  "label": "HMAC header",
167
161
  "description": "Name of header attribute that will contain the HMAC value",
168
- "optional": true,
169
- "feel": "optional",
162
+ "type": "String",
170
163
  "group": "authentication",
164
+ "optional": true,
171
165
  "binding": {
172
- "name": "inbound.hmacHeader",
173
- "type": "zeebe:property"
166
+ "type": "zeebe:property",
167
+ "name": "inbound.hmacHeader"
174
168
  },
175
169
  "condition": {
176
- "property": "inbound.shouldValidateHmac",
177
- "equals": "enabled",
178
- "type": "simple"
179
- },
180
- "type": "String"
170
+ "property": "shouldValidateHmac",
171
+ "equals": "enabled"
172
+ }
181
173
  },
182
174
  {
183
- "id": "inbound.hmacAlgorithm",
184
175
  "label": "HMAC algorithm",
176
+ "group": "authentication",
185
177
  "description": "Choose HMAC algorithm",
186
- "optional": false,
187
178
  "value": "sha_256",
188
- "group": "authentication",
189
- "binding": {
190
- "name": "inbound.hmacAlgorithm",
191
- "type": "zeebe:property"
192
- },
193
- "condition": {
194
- "property": "inbound.shouldValidateHmac",
195
- "equals": "enabled",
196
- "type": "simple"
197
- },
198
179
  "type": "Dropdown",
199
180
  "choices": [
200
181
  {
@@ -209,248 +190,214 @@
209
190
  "name": "SHA-512",
210
191
  "value": "sha_512"
211
192
  }
212
- ]
193
+ ],
194
+ "binding": {
195
+ "type": "zeebe:property",
196
+ "name": "inbound.hmacAlgorithm"
197
+ },
198
+ "condition": {
199
+ "property": "shouldValidateHmac",
200
+ "equals": "enabled"
201
+ }
213
202
  },
214
203
  {
215
- "id": "inbound.hmacScopes",
216
204
  "label": "HMAC scopes",
217
- "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/' target='_blank'>documentation</a>",
218
- "optional": true,
219
- "feel": "required",
220
205
  "group": "authentication",
206
+ "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/' target='_blank'>documentation</a>",
207
+ "feel": "required",
208
+ "type": "String",
209
+ "optional": true,
221
210
  "binding": {
222
- "name": "inbound.hmacScopes",
223
- "type": "zeebe:property"
211
+ "type": "zeebe:property",
212
+ "name": "inbound.hmacScopes"
224
213
  },
225
214
  "condition": {
226
- "property": "inbound.shouldValidateHmac",
227
- "equals": "enabled",
228
- "type": "simple"
229
- },
230
- "type": "String"
215
+ "property": "shouldValidateHmac",
216
+ "equals": "enabled"
217
+ }
231
218
  },
232
219
  {
233
- "id": "inbound.auth.type",
220
+ "id": "authorizationType",
234
221
  "label": "Authorization type",
235
- "description": "Choose the authorization type",
236
- "value": "NONE",
237
222
  "group": "authorization",
238
- "binding": {
239
- "name": "inbound.auth.type",
240
- "type": "zeebe:property"
241
- },
223
+ "description": "Choose the authorization type.",
224
+ "value": "NONE",
242
225
  "type": "Dropdown",
243
226
  "choices": [
244
227
  {
245
228
  "name": "None",
246
229
  "value": "NONE"
247
230
  },
231
+ {
232
+ "name": "JWT",
233
+ "value": "JWT"
234
+ },
248
235
  {
249
236
  "name": "Basic",
250
237
  "value": "BASIC"
251
238
  },
252
239
  {
253
- "name": "API key",
240
+ "name": "API Key",
254
241
  "value": "APIKEY"
255
- },
256
- {
257
- "name": "JWT",
258
- "value": "JWT"
259
242
  }
260
- ]
243
+ ],
244
+ "binding": {
245
+ "type": "zeebe:property",
246
+ "name": "inbound.auth.type"
247
+ }
261
248
  },
262
249
  {
263
- "id": "inbound.auth.username",
264
- "label": "Username",
265
- "description": "Username for basic authentication",
266
- "optional": false,
267
- "feel": "optional",
250
+ "label": "JWK url",
251
+ "description": "Well-known url of JWKs",
252
+ "type": "String",
268
253
  "group": "authorization",
254
+ "feel": "optional",
255
+ "optional": true,
269
256
  "binding": {
270
- "name": "inbound.auth.username",
271
- "type": "zeebe:property"
257
+ "type": "zeebe:property",
258
+ "name": "inbound.auth.jwt.jwkUrl"
272
259
  },
273
260
  "condition": {
274
- "property": "inbound.auth.type",
275
- "equals": "BASIC",
276
- "type": "simple"
277
- },
278
- "type": "String"
261
+ "property": "authorizationType",
262
+ "equals": "JWT"
263
+ }
279
264
  },
280
265
  {
281
- "id": "inbound.auth.password",
282
- "label": "Password",
283
- "description": "Password for basic authentication",
284
- "optional": false,
285
- "feel": "optional",
266
+ "label": "JWT role property expression",
267
+ "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
268
+ "type": "String",
286
269
  "group": "authorization",
270
+ "feel": "required",
271
+ "optional": true,
287
272
  "binding": {
288
- "name": "inbound.auth.password",
289
- "type": "zeebe:property"
273
+ "type": "zeebe:property",
274
+ "name": "inbound.auth.jwt.permissionsExpression"
290
275
  },
291
276
  "condition": {
292
- "property": "inbound.auth.type",
293
- "equals": "BASIC",
294
- "type": "simple"
295
- },
296
- "type": "String"
297
- },
298
- {
299
- "id": "inbound.auth.apiKey",
300
- "label": "API key",
301
- "description": "Expected API key",
302
- "optional": false,
303
- "feel": "optional",
277
+ "property": "authorizationType",
278
+ "equals": "JWT"
279
+ }
280
+ },
281
+ {
282
+ "label": "Required roles",
283
+ "description": "List of roles to test JWT roles against",
284
+ "type": "String",
304
285
  "group": "authorization",
286
+ "feel": "required",
287
+ "optional": true,
305
288
  "binding": {
306
- "name": "inbound.auth.apiKey",
307
- "type": "zeebe:property"
289
+ "type": "zeebe:property",
290
+ "name": "inbound.auth.jwt.requiredPermissions"
308
291
  },
309
292
  "condition": {
310
- "property": "inbound.auth.type",
311
- "equals": "APIKEY",
312
- "type": "simple"
313
- },
314
- "type": "String"
293
+ "property": "authorizationType",
294
+ "equals": "JWT"
295
+ }
315
296
  },
316
297
  {
317
- "id": "inbound.auth.apiKeyLocator",
318
- "label": "API key locator",
319
- "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
320
- "optional": false,
321
- "value": "=split(request.headers.authorization, \" \")[2]",
322
- "constraints": {
323
- "notEmpty": true
324
- },
325
- "feel": "required",
298
+ "label": "Username",
299
+ "description": "Username for basic authentication",
300
+ "type": "String",
326
301
  "group": "authorization",
302
+ "feel": "optional",
327
303
  "binding": {
328
- "name": "inbound.auth.apiKeyLocator",
329
- "type": "zeebe:property"
304
+ "type": "zeebe:property",
305
+ "name": "inbound.auth.username"
330
306
  },
331
307
  "condition": {
332
- "property": "inbound.auth.type",
333
- "equals": "APIKEY",
334
- "type": "simple"
308
+ "property": "authorizationType",
309
+ "equals": "BASIC"
335
310
  },
336
- "type": "String"
311
+ "constraints": {
312
+ "notEmpty": true
313
+ }
337
314
  },
338
315
  {
339
- "id": "inbound.auth.jwt.jwkUrl",
340
- "label": "JWK URL",
341
- "description": "Well-known URL of JWKs",
342
- "optional": false,
343
- "feel": "optional",
316
+ "label": "Password",
317
+ "description": "Password for basic authentication",
318
+ "type": "String",
344
319
  "group": "authorization",
320
+ "feel": "optional",
345
321
  "binding": {
346
- "name": "inbound.auth.jwt.jwkUrl",
347
- "type": "zeebe:property"
322
+ "type": "zeebe:property",
323
+ "name": "inbound.auth.password"
348
324
  },
349
325
  "condition": {
350
- "property": "inbound.auth.type",
351
- "equals": "JWT",
352
- "type": "simple"
326
+ "property": "authorizationType",
327
+ "equals": "BASIC"
353
328
  },
354
- "type": "String"
329
+ "constraints": {
330
+ "notEmpty": true
331
+ }
355
332
  },
356
333
  {
357
- "id": "inbound.auth.jwt.permissionsExpression",
358
- "label": "JWT role property expression",
359
- "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
360
- "optional": false,
361
- "feel": "required",
334
+ "label": "API Key",
335
+ "description": "Expected API key",
336
+ "type": "String",
362
337
  "group": "authorization",
338
+ "feel": "optional",
363
339
  "binding": {
364
- "name": "inbound.auth.jwt.permissionsExpression",
365
- "type": "zeebe:property"
340
+ "type": "zeebe:property",
341
+ "name": "inbound.auth.apiKey"
366
342
  },
367
343
  "condition": {
368
- "property": "inbound.auth.type",
369
- "equals": "JWT",
370
- "type": "simple"
344
+ "property": "authorizationType",
345
+ "equals": "APIKEY"
371
346
  },
372
- "type": "String"
347
+ "constraints": {
348
+ "notEmpty": true
349
+ }
373
350
  },
374
351
  {
375
- "id": "inbound.auth.jwt.requiredPermissions",
376
- "label": "Required roles",
377
- "description": "List of roles to test JWT roles against",
378
- "optional": false,
379
- "feel": "required",
352
+ "label": "API Key locator",
353
+ "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
354
+ "type": "String",
380
355
  "group": "authorization",
356
+ "feel": "required",
381
357
  "binding": {
382
- "name": "inbound.auth.jwt.requiredPermissions",
383
- "type": "zeebe:property"
358
+ "type": "zeebe:property",
359
+ "name": "inbound.auth.apiKeyLocator"
384
360
  },
385
361
  "condition": {
386
- "property": "inbound.auth.type",
387
- "equals": "JWT",
388
- "type": "simple"
362
+ "property": "authorizationType",
363
+ "equals": "APIKEY"
389
364
  },
390
- "type": "String"
391
- },
392
- {
393
- "id": "inbound.responseExpression",
394
- "label": "Response expression",
395
- "description": "Expression used to generate the HTTP response",
396
- "optional": true,
397
- "feel": "required",
398
- "group": "webhookResponse",
399
- "binding": {
400
- "name": "inbound.responseExpression",
401
- "type": "zeebe:property"
365
+ "constraints": {
366
+ "notEmpty": true
402
367
  },
403
- "type": "Text"
368
+ "value": "=split(request.headers.authorization, \" \")[2]"
404
369
  },
405
370
  {
406
- "id": "inbound.verificationExpression",
407
- "label": "One time verification response expression",
408
- "description": "Specify condition and response. Learn more in the <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#verification-expression' target='_blank'>documentation</a>",
409
- "optional": true,
371
+ "label": "Message ID expression",
410
372
  "feel": "required",
411
- "group": "webhookResponse",
412
- "binding": {
413
- "name": "inbound.verificationExpression",
414
- "type": "zeebe:property"
415
- },
416
- "type": "Text"
417
- },
418
- {
419
- "id": "activationCondition",
420
- "label": "Activation condition",
421
- "description": "Condition under which the Connector triggers. Leave empty to catch all events",
373
+ "type": "String",
422
374
  "optional": true,
423
- "feel": "required",
424
375
  "group": "activation",
425
376
  "binding": {
426
- "name": "activationCondition",
427
- "type": "zeebe:property"
377
+ "type": "zeebe:property",
378
+ "name": "messageIdExpression"
428
379
  },
429
- "type": "String"
380
+ "description": "Expression to extract unique identifier of a message"
430
381
  },
431
382
  {
432
- "id": "consumeUnmatchedEvents",
433
- "label": "Consume unmatched events",
434
- "value": true,
383
+ "label": "Condition",
384
+ "type": "String",
435
385
  "group": "activation",
386
+ "feel": "required",
387
+ "optional": true,
436
388
  "binding": {
437
- "name": "consumeUnmatchedEvents",
438
- "type": "zeebe:property"
389
+ "type": "zeebe:property",
390
+ "name": "activationCondition"
439
391
  },
440
- "tooltip": "Unmatched events are rejected by default, allowing the upstream service to handle the error. Check this box to consume unmatched events and return a success response",
441
- "type": "Boolean"
392
+ "description": "Condition under which the connector triggers. Leave empty to catch all events. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a>"
442
393
  },
443
394
  {
444
- "id": "correlationRequired",
445
- "label": "Subprocess correlation required",
395
+ "label": "Correlation required",
446
396
  "description": "Indicates whether correlation is required. This is needed for event-based subprocess message start events",
447
- "value": "notRequired",
397
+ "id": "correlationRequired",
448
398
  "group": "correlation",
449
- "binding": {
450
- "name": "correlationRequired",
451
- "type": "zeebe:property"
452
- },
453
399
  "type": "Dropdown",
400
+ "value": "notRequired",
454
401
  "choices": [
455
402
  {
456
403
  "name": "Correlation not required",
@@ -460,192 +407,98 @@
460
407
  "name": "Correlation required",
461
408
  "value": "required"
462
409
  }
463
- ]
410
+ ],
411
+ "binding": {
412
+ "type": "zeebe:property",
413
+ "name": "correlationRequired"
414
+ }
464
415
  },
465
416
  {
466
- "id": "correlationKeyProcess",
467
417
  "label": "Correlation key (process)",
418
+ "type": "String",
419
+ "group": "correlation",
420
+ "feel": "required",
468
421
  "description": "Sets up the correlation key from process variables",
422
+ "binding": {
423
+ "type": "bpmn:Message#zeebe:subscription#property",
424
+ "name": "correlationKey"
425
+ },
469
426
  "constraints": {
470
427
  "notEmpty": true
471
428
  },
472
- "feel": "required",
473
- "group": "correlation",
474
- "binding": {
475
- "name": "correlationKey",
476
- "type": "bpmn:Message#zeebe:subscription#property"
477
- },
478
429
  "condition": {
479
430
  "property": "correlationRequired",
480
- "equals": "required",
481
- "type": "simple"
482
- },
483
- "type": "String"
431
+ "equals": "required"
432
+ }
484
433
  },
485
434
  {
486
- "id": "correlationKeyPayload",
487
435
  "label": "Correlation key (payload)",
436
+ "type": "String",
437
+ "group": "correlation",
438
+ "feel": "required",
439
+ "binding": {
440
+ "type": "zeebe:property",
441
+ "name": "correlationKeyExpression"
442
+ },
488
443
  "description": "Extracts the correlation key from the incoming message payload",
489
444
  "constraints": {
490
445
  "notEmpty": true
491
446
  },
492
- "feel": "required",
493
- "group": "correlation",
494
- "binding": {
495
- "name": "correlationKeyExpression",
496
- "type": "zeebe:property"
497
- },
498
447
  "condition": {
499
448
  "property": "correlationRequired",
500
- "equals": "required",
501
- "type": "simple"
502
- },
503
- "type": "String"
449
+ "equals": "required"
450
+ }
504
451
  },
505
452
  {
506
- "id": "messageTtl",
507
- "label": "Message TTL",
508
- "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
453
+ "label": "Result variable",
454
+ "type": "String",
455
+ "group": "variable-mapping",
509
456
  "optional": true,
510
- "constraints": {
511
- "notEmpty": false,
512
- "pattern": {
513
- "value": "^(PT.*|)$",
514
- "message": "must be an ISO-8601 duration"
515
- }
516
- },
517
- "feel": "optional",
518
- "group": "correlation",
519
457
  "binding": {
520
- "name": "messageTtl",
521
- "type": "zeebe:property"
458
+ "type": "zeebe:property",
459
+ "name": "resultVariable"
522
460
  },
523
- "type": "String"
461
+ "description": "Name of variable to store the result of the connector in"
524
462
  },
525
463
  {
526
- "id": "messageIdExpression",
527
- "label": "Message ID expression",
528
- "description": "Expression to extract unique identifier of a message",
529
- "optional": true,
464
+ "label": "Result expression",
465
+ "type": "String",
466
+ "group": "variable-mapping",
530
467
  "feel": "required",
531
- "group": "correlation",
468
+ "optional": true,
532
469
  "binding": {
533
- "name": "messageIdExpression",
534
- "type": "zeebe:property"
535
- },
536
- "type": "String"
537
- },
538
- {
539
- "id": "messageNameUuid",
540
- "generatedValue": {
541
- "type": "uuid"
542
- },
543
- "group": "correlation",
544
- "binding": {
545
- "name": "name",
546
- "type": "bpmn:Message#property"
547
- },
548
- "type": "Hidden"
549
- },
550
- {
551
- "id": "deduplicationModeManualFlag",
552
- "label": "Manual mode",
553
- "description": "By default, similar connectors receive the same deduplication ID. Customize by activating manual mode",
554
- "value": false,
555
- "group": "deduplication",
556
- "binding": {
557
- "name": "deduplicationModeManualFlag",
558
- "type": "zeebe:property"
559
- },
560
- "type": "Boolean"
561
- },
562
- {
563
- "id": "deduplicationId",
564
- "label": "Deduplication ID",
565
- "constraints": {
566
- "notEmpty": true,
567
- "pattern": {
568
- "value": "^[a-zA-Z0-9_-]+$",
569
- "message": "can only contain alphanumeric characters, dashes, and underscores"
570
- }
571
- },
572
- "group": "deduplication",
573
- "binding": {
574
- "name": "deduplicationId",
575
- "type": "zeebe:property"
576
- },
577
- "condition": {
578
- "property": "deduplicationModeManualFlag",
579
- "equals": true,
580
- "type": "simple"
581
- },
582
- "type": "String"
583
- },
584
- {
585
- "id": "deduplicationModeManual",
586
- "value": "MANUAL",
587
- "group": "deduplication",
588
- "binding": {
589
- "name": "deduplicationMode",
590
- "type": "zeebe:property"
591
- },
592
- "condition": {
593
- "property": "deduplicationId",
594
- "isActive": true,
595
- "type": "simple"
596
- },
597
- "type": "Hidden"
598
- },
599
- {
600
- "id": "deduplicationModeAuto",
601
- "value": "AUTO",
602
- "group": "deduplication",
603
- "binding": {
604
- "name": "deduplicationMode",
605
- "type": "zeebe:property"
606
- },
607
- "condition": {
608
- "property": "deduplicationId",
609
- "isActive": false,
610
- "type": "simple"
611
- },
612
- "type": "Hidden"
613
- },
614
- {
615
- "id": "resultVariable",
616
- "label": "Result variable",
617
- "description": "Name of variable to store the response in",
618
- "group": "output",
619
- "binding": {
620
- "name": "resultVariable",
621
- "type": "zeebe:property"
470
+ "type": "zeebe:property",
471
+ "name": "resultExpression"
622
472
  },
623
- "type": "String"
473
+ "description": "Expression to map the inbound payload to process variables"
624
474
  },
625
475
  {
626
- "id": "resultExpression",
627
- "label": "Result expression",
628
- "description": "Expression to map the response into process variables",
476
+ "label": "Response body expression",
477
+ "type": "Text",
478
+ "group": "webhookResponse",
629
479
  "feel": "required",
630
- "group": "output",
480
+ "optional": true,
631
481
  "binding": {
632
- "name": "resultExpression",
633
- "type": "zeebe:property"
482
+ "type": "zeebe:property",
483
+ "name": "inbound.responseBodyExpression"
634
484
  },
635
- "type": "Text"
485
+ "description": "Specify condition and response"
636
486
  }
637
487
  ],
638
488
  "icon": {
639
- "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
489
+ "contents": "data:image/svg+xml,%3Csvg id='icon' xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; %7D %3C/style%3E%3C/defs%3E%3Cpath d='M24,26a3,3,0,1,0-2.8164-4H13v1a5,5,0,1,1-5-5V16a7,7,0,1,0,6.9287,8h6.2549A2.9914,2.9914,0,0,0,24,26Z'/%3E%3Cpath d='M24,16a7.024,7.024,0,0,0-2.57.4873l-3.1656-5.5395a3.0469,3.0469,0,1,0-1.7326.9985l4.1189,7.2085.8686-.4976a5.0006,5.0006,0,1,1-1.851,6.8418L17.937,26.501A7.0005,7.0005,0,1,0,24,16Z'/%3E%3Cpath d='M8.532,20.0537a3.03,3.03,0,1,0,1.7326.9985C11.74,18.47,13.86,14.7607,13.89,14.708l.4976-.8682-.8677-.497a5,5,0,1,1,6.812-1.8438l1.7315,1.002a7.0008,7.0008,0,1,0-10.3462,2.0356c-.457.7427-1.1021,1.8716-2.0737,3.5728Z'/%3E%3Crect id='_Transparent_Rectangle_' data-name='&lt;Transparent Rectangle&gt;' class='cls-1' width='32' height='32'/%3E%3C/svg%3E"
490
+ },
491
+ "engines": {
492
+ "camunda": "^8.2"
640
493
  }
641
494
  },
642
495
  {
643
496
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
644
497
  "name": "Webhook Message Start Event Connector",
645
498
  "id": "io.camunda.connectors.webhook.WebhookConnectorStartMessage.v1",
499
+ "version": 3,
646
500
  "description": "Configure webhook to receive callbacks",
647
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
648
- "version": 11,
501
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
649
502
  "category": {
650
503
  "id": "connectors",
651
504
  "name": "Connectors"
@@ -668,44 +521,56 @@
668
521
  "id": "authorization",
669
522
  "label": "Authorization"
670
523
  },
671
- {
672
- "id": "webhookResponse",
673
- "label": "Webhook response"
674
- },
675
524
  {
676
525
  "id": "activation",
677
526
  "label": "Activation"
678
527
  },
679
528
  {
680
529
  "id": "correlation",
681
- "label": "Correlation",
682
- "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
530
+ "label": "Subprocess correlation"
683
531
  },
684
532
  {
685
- "id": "output",
686
- "label": "Output mapping"
533
+ "id": "variable-mapping",
534
+ "label": "Variable mapping"
535
+ },
536
+ {
537
+ "id": "webhookResponse",
538
+ "label": "Webhook response"
687
539
  }
688
540
  ],
689
541
  "properties": [
690
542
  {
543
+ "type": "Hidden",
691
544
  "value": "io.camunda:webhook:1",
692
545
  "binding": {
693
- "name": "inbound.type",
694
- "type": "zeebe:property"
546
+ "type": "zeebe:property",
547
+ "name": "inbound.type"
548
+ }
549
+ },
550
+ {
551
+ "type": "Hidden",
552
+ "generatedValue": {
553
+ "type": "uuid"
695
554
  },
696
- "type": "Hidden"
555
+ "binding": {
556
+ "type": "bpmn:Message#property",
557
+ "name": "name"
558
+ }
697
559
  },
698
560
  {
699
- "id": "inbound.method",
561
+ "type": "Hidden",
562
+ "value": "ConfigurableInboundWebhook",
563
+ "binding": {
564
+ "type": "zeebe:property",
565
+ "name": "inbound.subtype"
566
+ }
567
+ },
568
+ {
569
+ "id": "webhookMethod",
700
570
  "label": "Webhook method",
571
+ "group": "endpoint",
701
572
  "description": "Select HTTP method",
702
- "optional": false,
703
573
  "value": "any",
704
- "group": "endpoint",
705
- "binding": {
706
- "name": "inbound.method",
707
- "type": "zeebe:property"
708
- },
709
574
  "type": "Dropdown",
710
575
  "choices": [
711
576
  {
@@ -713,53 +578,50 @@
713
578
  "value": "any"
714
579
  },
715
580
  {
716
- "name": "GET",
581
+ "name": "Get",
717
582
  "value": "get"
718
583
  },
719
584
  {
720
- "name": "POST",
585
+ "name": "Post",
721
586
  "value": "post"
722
587
  },
723
588
  {
724
- "name": "PUT",
589
+ "name": "Put",
725
590
  "value": "put"
726
591
  },
727
592
  {
728
- "name": "DELETE",
593
+ "name": "Delete",
729
594
  "value": "delete"
730
595
  }
731
- ]
596
+ ],
597
+ "binding": {
598
+ "type": "zeebe:property",
599
+ "name": "inbound.method"
600
+ }
732
601
  },
733
602
  {
734
- "id": "inbound.context",
735
603
  "label": "Webhook ID",
604
+ "type": "String",
605
+ "group": "endpoint",
606
+ "binding": {
607
+ "type": "zeebe:property",
608
+ "name": "inbound.context"
609
+ },
736
610
  "description": "The webhook ID is a part of the URL",
737
- "optional": false,
738
611
  "constraints": {
739
612
  "notEmpty": true,
740
613
  "pattern": {
741
614
  "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
742
615
  "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
743
616
  }
744
- },
745
- "group": "endpoint",
746
- "binding": {
747
- "name": "inbound.context",
748
- "type": "zeebe:property"
749
- },
750
- "type": "String"
617
+ }
751
618
  },
752
619
  {
753
- "id": "inbound.shouldValidateHmac",
620
+ "id": "shouldValidateHmac",
754
621
  "label": "HMAC authentication",
755
- "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
756
- "optional": false,
757
- "value": "disabled",
758
622
  "group": "authentication",
759
- "binding": {
760
- "name": "inbound.shouldValidateHmac",
761
- "type": "zeebe:property"
762
- },
623
+ "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
624
+ "value": "disabled",
763
625
  "type": "Dropdown",
764
626
  "choices": [
765
627
  {
@@ -770,60 +632,47 @@
770
632
  "name": "Disabled",
771
633
  "value": "disabled"
772
634
  }
773
- ]
635
+ ],
636
+ "binding": {
637
+ "type": "zeebe:property",
638
+ "name": "inbound.shouldValidateHmac"
639
+ }
774
640
  },
775
641
  {
776
- "id": "inbound.hmacSecret",
777
642
  "label": "HMAC secret key",
778
643
  "description": "Shared secret key",
779
- "optional": true,
780
- "feel": "optional",
644
+ "type": "String",
781
645
  "group": "authentication",
646
+ "optional": true,
782
647
  "binding": {
783
- "name": "inbound.hmacSecret",
784
- "type": "zeebe:property"
648
+ "type": "zeebe:property",
649
+ "name": "inbound.hmacSecret"
785
650
  },
786
651
  "condition": {
787
- "property": "inbound.shouldValidateHmac",
788
- "equals": "enabled",
789
- "type": "simple"
790
- },
791
- "type": "String"
652
+ "property": "shouldValidateHmac",
653
+ "equals": "enabled"
654
+ }
792
655
  },
793
656
  {
794
- "id": "inbound.hmacHeader",
795
657
  "label": "HMAC header",
796
658
  "description": "Name of header attribute that will contain the HMAC value",
797
- "optional": true,
798
- "feel": "optional",
659
+ "type": "String",
799
660
  "group": "authentication",
661
+ "optional": true,
800
662
  "binding": {
801
- "name": "inbound.hmacHeader",
802
- "type": "zeebe:property"
663
+ "type": "zeebe:property",
664
+ "name": "inbound.hmacHeader"
803
665
  },
804
666
  "condition": {
805
- "property": "inbound.shouldValidateHmac",
806
- "equals": "enabled",
807
- "type": "simple"
808
- },
809
- "type": "String"
667
+ "property": "shouldValidateHmac",
668
+ "equals": "enabled"
669
+ }
810
670
  },
811
671
  {
812
- "id": "inbound.hmacAlgorithm",
813
672
  "label": "HMAC algorithm",
673
+ "group": "authentication",
814
674
  "description": "Choose HMAC algorithm",
815
- "optional": false,
816
675
  "value": "sha_256",
817
- "group": "authentication",
818
- "binding": {
819
- "name": "inbound.hmacAlgorithm",
820
- "type": "zeebe:property"
821
- },
822
- "condition": {
823
- "property": "inbound.shouldValidateHmac",
824
- "equals": "enabled",
825
- "type": "simple"
826
- },
827
676
  "type": "Dropdown",
828
677
  "choices": [
829
678
  {
@@ -838,248 +687,214 @@
838
687
  "name": "SHA-512",
839
688
  "value": "sha_512"
840
689
  }
841
- ]
690
+ ],
691
+ "binding": {
692
+ "type": "zeebe:property",
693
+ "name": "inbound.hmacAlgorithm"
694
+ },
695
+ "condition": {
696
+ "property": "shouldValidateHmac",
697
+ "equals": "enabled"
698
+ }
842
699
  },
843
700
  {
844
- "id": "inbound.hmacScopes",
845
701
  "label": "HMAC scopes",
846
- "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/' target='_blank'>documentation</a>",
847
- "optional": true,
848
- "feel": "required",
849
702
  "group": "authentication",
703
+ "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/' target='_blank'>documentation</a>",
704
+ "feel": "required",
705
+ "type": "String",
706
+ "optional": true,
850
707
  "binding": {
851
- "name": "inbound.hmacScopes",
852
- "type": "zeebe:property"
708
+ "type": "zeebe:property",
709
+ "name": "inbound.hmacScopes"
853
710
  },
854
711
  "condition": {
855
- "property": "inbound.shouldValidateHmac",
856
- "equals": "enabled",
857
- "type": "simple"
858
- },
859
- "type": "String"
712
+ "property": "shouldValidateHmac",
713
+ "equals": "enabled"
714
+ }
860
715
  },
861
716
  {
862
- "id": "inbound.auth.type",
717
+ "id": "authorizationType",
863
718
  "label": "Authorization type",
864
- "description": "Choose the authorization type",
865
- "value": "NONE",
866
719
  "group": "authorization",
867
- "binding": {
868
- "name": "inbound.auth.type",
869
- "type": "zeebe:property"
870
- },
720
+ "description": "Choose the authorization type.",
721
+ "value": "NONE",
871
722
  "type": "Dropdown",
872
723
  "choices": [
873
724
  {
874
725
  "name": "None",
875
726
  "value": "NONE"
876
727
  },
728
+ {
729
+ "name": "JWT",
730
+ "value": "JWT"
731
+ },
877
732
  {
878
733
  "name": "Basic",
879
734
  "value": "BASIC"
880
735
  },
881
736
  {
882
- "name": "API key",
737
+ "name": "API Key",
883
738
  "value": "APIKEY"
884
- },
885
- {
886
- "name": "JWT",
887
- "value": "JWT"
888
739
  }
889
- ]
740
+ ],
741
+ "binding": {
742
+ "type": "zeebe:property",
743
+ "name": "inbound.auth.type"
744
+ }
890
745
  },
891
746
  {
892
- "id": "inbound.auth.username",
893
- "label": "Username",
894
- "description": "Username for basic authentication",
895
- "optional": false,
896
- "feel": "optional",
747
+ "label": "JWK url",
748
+ "description": "Well-known url of JWKs",
749
+ "type": "String",
897
750
  "group": "authorization",
751
+ "feel": "optional",
752
+ "optional": true,
898
753
  "binding": {
899
- "name": "inbound.auth.username",
900
- "type": "zeebe:property"
754
+ "type": "zeebe:property",
755
+ "name": "inbound.auth.jwt.jwkUrl"
901
756
  },
902
757
  "condition": {
903
- "property": "inbound.auth.type",
904
- "equals": "BASIC",
905
- "type": "simple"
906
- },
907
- "type": "String"
758
+ "property": "authorizationType",
759
+ "equals": "JWT"
760
+ }
908
761
  },
909
762
  {
910
- "id": "inbound.auth.password",
911
- "label": "Password",
912
- "description": "Password for basic authentication",
913
- "optional": false,
914
- "feel": "optional",
763
+ "label": "JWT role property expression",
764
+ "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
765
+ "type": "String",
915
766
  "group": "authorization",
767
+ "feel": "required",
768
+ "optional": true,
916
769
  "binding": {
917
- "name": "inbound.auth.password",
918
- "type": "zeebe:property"
770
+ "type": "zeebe:property",
771
+ "name": "inbound.auth.jwt.permissionsExpression"
919
772
  },
920
773
  "condition": {
921
- "property": "inbound.auth.type",
922
- "equals": "BASIC",
923
- "type": "simple"
924
- },
925
- "type": "String"
774
+ "property": "authorizationType",
775
+ "equals": "JWT"
776
+ }
926
777
  },
927
778
  {
928
- "id": "inbound.auth.apiKey",
929
- "label": "API key",
930
- "description": "Expected API key",
931
- "optional": false,
932
- "feel": "optional",
779
+ "label": "Required roles",
780
+ "description": "List of roles to test JWT roles against",
781
+ "type": "String",
933
782
  "group": "authorization",
783
+ "feel": "required",
784
+ "optional": true,
934
785
  "binding": {
935
- "name": "inbound.auth.apiKey",
936
- "type": "zeebe:property"
786
+ "type": "zeebe:property",
787
+ "name": "inbound.auth.jwt.requiredPermissions"
937
788
  },
938
789
  "condition": {
939
- "property": "inbound.auth.type",
940
- "equals": "APIKEY",
941
- "type": "simple"
942
- },
943
- "type": "String"
790
+ "property": "authorizationType",
791
+ "equals": "JWT"
792
+ }
944
793
  },
945
794
  {
946
- "id": "inbound.auth.apiKeyLocator",
947
- "label": "API key locator",
948
- "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
949
- "optional": false,
950
- "value": "=split(request.headers.authorization, \" \")[2]",
951
- "constraints": {
952
- "notEmpty": true
953
- },
954
- "feel": "required",
795
+ "label": "Username",
796
+ "description": "Username for basic authentication",
797
+ "type": "String",
955
798
  "group": "authorization",
799
+ "feel": "optional",
956
800
  "binding": {
957
- "name": "inbound.auth.apiKeyLocator",
958
- "type": "zeebe:property"
801
+ "type": "zeebe:property",
802
+ "name": "inbound.auth.username"
959
803
  },
960
804
  "condition": {
961
- "property": "inbound.auth.type",
962
- "equals": "APIKEY",
963
- "type": "simple"
805
+ "property": "authorizationType",
806
+ "equals": "BASIC"
964
807
  },
965
- "type": "String"
808
+ "constraints": {
809
+ "notEmpty": true
810
+ }
966
811
  },
967
812
  {
968
- "id": "inbound.auth.jwt.jwkUrl",
969
- "label": "JWK URL",
970
- "description": "Well-known URL of JWKs",
971
- "optional": false,
972
- "feel": "optional",
813
+ "label": "Password",
814
+ "description": "Password for basic authentication",
815
+ "type": "String",
973
816
  "group": "authorization",
817
+ "feel": "optional",
974
818
  "binding": {
975
- "name": "inbound.auth.jwt.jwkUrl",
976
- "type": "zeebe:property"
819
+ "type": "zeebe:property",
820
+ "name": "inbound.auth.password"
977
821
  },
978
822
  "condition": {
979
- "property": "inbound.auth.type",
980
- "equals": "JWT",
981
- "type": "simple"
823
+ "property": "authorizationType",
824
+ "equals": "BASIC"
982
825
  },
983
- "type": "String"
826
+ "constraints": {
827
+ "notEmpty": true
828
+ }
984
829
  },
985
830
  {
986
- "id": "inbound.auth.jwt.permissionsExpression",
987
- "label": "JWT role property expression",
988
- "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
989
- "optional": false,
990
- "feel": "required",
831
+ "label": "API Key",
832
+ "description": "Expected API key",
833
+ "type": "String",
991
834
  "group": "authorization",
835
+ "feel": "optional",
992
836
  "binding": {
993
- "name": "inbound.auth.jwt.permissionsExpression",
994
- "type": "zeebe:property"
837
+ "type": "zeebe:property",
838
+ "name": "inbound.auth.apiKey"
995
839
  },
996
840
  "condition": {
997
- "property": "inbound.auth.type",
998
- "equals": "JWT",
999
- "type": "simple"
841
+ "property": "authorizationType",
842
+ "equals": "APIKEY"
1000
843
  },
1001
- "type": "String"
844
+ "constraints": {
845
+ "notEmpty": true
846
+ }
1002
847
  },
1003
848
  {
1004
- "id": "inbound.auth.jwt.requiredPermissions",
1005
- "label": "Required roles",
1006
- "description": "List of roles to test JWT roles against",
1007
- "optional": false,
1008
- "feel": "required",
849
+ "label": "API Key locator",
850
+ "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
851
+ "type": "String",
1009
852
  "group": "authorization",
853
+ "feel": "required",
1010
854
  "binding": {
1011
- "name": "inbound.auth.jwt.requiredPermissions",
1012
- "type": "zeebe:property"
855
+ "type": "zeebe:property",
856
+ "name": "inbound.auth.apiKeyLocator"
1013
857
  },
1014
858
  "condition": {
1015
- "property": "inbound.auth.type",
1016
- "equals": "JWT",
1017
- "type": "simple"
859
+ "property": "authorizationType",
860
+ "equals": "APIKEY"
1018
861
  },
1019
- "type": "String"
1020
- },
1021
- {
1022
- "id": "inbound.responseExpression",
1023
- "label": "Response expression",
1024
- "description": "Expression used to generate the HTTP response",
1025
- "optional": true,
1026
- "feel": "required",
1027
- "group": "webhookResponse",
1028
- "binding": {
1029
- "name": "inbound.responseExpression",
1030
- "type": "zeebe:property"
862
+ "constraints": {
863
+ "notEmpty": true
1031
864
  },
1032
- "type": "Text"
865
+ "value": "=split(request.headers.authorization, \" \")[2]"
1033
866
  },
1034
867
  {
1035
- "id": "inbound.verificationExpression",
1036
- "label": "One time verification response expression",
1037
- "description": "Specify condition and response. Learn more in the <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#verification-expression' target='_blank'>documentation</a>",
1038
- "optional": true,
868
+ "label": "Message ID expression",
1039
869
  "feel": "required",
1040
- "group": "webhookResponse",
1041
- "binding": {
1042
- "name": "inbound.verificationExpression",
1043
- "type": "zeebe:property"
1044
- },
1045
- "type": "Text"
1046
- },
1047
- {
1048
- "id": "activationCondition",
1049
- "label": "Activation condition",
1050
- "description": "Condition under which the Connector triggers. Leave empty to catch all events",
870
+ "type": "String",
1051
871
  "optional": true,
1052
- "feel": "required",
1053
872
  "group": "activation",
1054
873
  "binding": {
1055
- "name": "activationCondition",
1056
- "type": "zeebe:property"
874
+ "type": "zeebe:property",
875
+ "name": "messageIdExpression"
1057
876
  },
1058
- "type": "String"
877
+ "description": "Expression to extract unique identifier of a message"
1059
878
  },
1060
879
  {
1061
- "id": "consumeUnmatchedEvents",
1062
- "label": "Consume unmatched events",
1063
- "value": true,
880
+ "label": "Condition",
881
+ "type": "String",
1064
882
  "group": "activation",
883
+ "feel": "required",
884
+ "optional": true,
1065
885
  "binding": {
1066
- "name": "consumeUnmatchedEvents",
1067
- "type": "zeebe:property"
886
+ "type": "zeebe:property",
887
+ "name": "activationCondition"
1068
888
  },
1069
- "tooltip": "Unmatched events are rejected by default, allowing the upstream service to handle the error. Check this box to consume unmatched events and return a success response",
1070
- "type": "Boolean"
889
+ "description": "Condition under which the connector triggers. Leave empty to catch all events. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a>"
1071
890
  },
1072
891
  {
1073
- "id": "correlationRequired",
1074
- "label": "Subprocess correlation required",
892
+ "label": "Correlation required",
1075
893
  "description": "Indicates whether correlation is required. This is needed for event-based subprocess message start events",
1076
- "value": "notRequired",
894
+ "id": "correlationRequired",
1077
895
  "group": "correlation",
1078
- "binding": {
1079
- "name": "correlationRequired",
1080
- "type": "zeebe:property"
1081
- },
1082
896
  "type": "Dropdown",
897
+ "value": "notRequired",
1083
898
  "choices": [
1084
899
  {
1085
900
  "name": "Correlation not required",
@@ -1089,122 +904,101 @@
1089
904
  "name": "Correlation required",
1090
905
  "value": "required"
1091
906
  }
1092
- ]
907
+ ],
908
+ "binding": {
909
+ "type": "zeebe:property",
910
+ "name": "correlationRequired"
911
+ }
1093
912
  },
1094
913
  {
1095
- "id": "correlationKeyProcess",
1096
914
  "label": "Correlation key (process)",
915
+ "type": "String",
916
+ "group": "correlation",
917
+ "feel": "required",
1097
918
  "description": "Sets up the correlation key from process variables",
919
+ "binding": {
920
+ "type": "bpmn:Message#zeebe:subscription#property",
921
+ "name": "correlationKey"
922
+ },
1098
923
  "constraints": {
1099
924
  "notEmpty": true
1100
925
  },
1101
- "feel": "required",
1102
- "group": "correlation",
1103
- "binding": {
1104
- "name": "correlationKey",
1105
- "type": "bpmn:Message#zeebe:subscription#property"
1106
- },
1107
926
  "condition": {
1108
927
  "property": "correlationRequired",
1109
- "equals": "required",
1110
- "type": "simple"
1111
- },
1112
- "type": "String"
928
+ "equals": "required"
929
+ }
1113
930
  },
1114
931
  {
1115
- "id": "correlationKeyPayload",
1116
932
  "label": "Correlation key (payload)",
933
+ "type": "String",
934
+ "group": "correlation",
935
+ "feel": "required",
936
+ "binding": {
937
+ "type": "zeebe:property",
938
+ "name": "correlationKeyExpression"
939
+ },
1117
940
  "description": "Extracts the correlation key from the incoming message payload",
1118
941
  "constraints": {
1119
942
  "notEmpty": true
1120
943
  },
1121
- "feel": "required",
1122
- "group": "correlation",
1123
- "binding": {
1124
- "name": "correlationKeyExpression",
1125
- "type": "zeebe:property"
1126
- },
1127
944
  "condition": {
1128
945
  "property": "correlationRequired",
1129
- "equals": "required",
1130
- "type": "simple"
1131
- },
1132
- "type": "String"
946
+ "equals": "required"
947
+ }
1133
948
  },
1134
949
  {
1135
- "id": "messageTtl",
1136
- "label": "Message TTL",
1137
- "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
950
+ "label": "Result variable",
951
+ "type": "String",
952
+ "group": "variable-mapping",
1138
953
  "optional": true,
1139
- "constraints": {
1140
- "notEmpty": false,
1141
- "pattern": {
1142
- "value": "^(PT.*|)$",
1143
- "message": "must be an ISO-8601 duration"
1144
- }
1145
- },
1146
- "feel": "optional",
1147
- "group": "correlation",
1148
954
  "binding": {
1149
- "name": "messageTtl",
1150
- "type": "zeebe:property"
955
+ "type": "zeebe:property",
956
+ "name": "resultVariable"
1151
957
  },
1152
- "type": "String"
958
+ "description": "Name of variable to store the result of the connector in"
1153
959
  },
1154
960
  {
1155
- "id": "messageIdExpression",
1156
- "label": "Message ID expression",
1157
- "description": "Expression to extract unique identifier of a message",
1158
- "optional": true,
961
+ "label": "Result expression",
962
+ "type": "String",
963
+ "group": "variable-mapping",
1159
964
  "feel": "required",
1160
- "group": "correlation",
1161
- "binding": {
1162
- "name": "messageIdExpression",
1163
- "type": "zeebe:property"
1164
- },
1165
- "type": "String"
1166
- },
1167
- {
1168
- "id": "messageNameUuid",
1169
- "generatedValue": {
1170
- "type": "uuid"
1171
- },
1172
- "group": "correlation",
965
+ "optional": true,
1173
966
  "binding": {
1174
- "name": "name",
1175
- "type": "bpmn:Message#property"
967
+ "type": "zeebe:property",
968
+ "name": "resultExpression"
1176
969
  },
1177
- "type": "Hidden"
970
+ "description": "Expression to map the inbound payload to process variables"
1178
971
  },
1179
972
  {
1180
- "id": "resultVariable",
1181
- "label": "Result variable",
1182
- "description": "Name of variable to store the response in",
1183
- "group": "output",
973
+ "label": "One time verification response expression",
974
+ "description": "Specify condition and response. Learn more in the <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#verification-expression' target='_blank'>documentation</a>",
975
+ "type": "Text",
976
+ "group": "webhookResponse",
977
+ "feel": "required",
978
+ "optional": true,
1184
979
  "binding": {
1185
- "name": "resultVariable",
1186
- "type": "zeebe:property"
1187
- },
1188
- "type": "String"
980
+ "type": "zeebe:property",
981
+ "name": "inbound.verificationExpression"
982
+ }
1189
983
  },
1190
984
  {
1191
- "id": "resultExpression",
1192
- "label": "Result expression",
1193
- "description": "Expression to map the response into process variables",
985
+ "label": "Response body expression",
986
+ "type": "Text",
987
+ "group": "webhookResponse",
1194
988
  "feel": "required",
1195
- "group": "output",
989
+ "optional": true,
1196
990
  "binding": {
1197
- "name": "resultExpression",
1198
- "type": "zeebe:property"
991
+ "type": "zeebe:property",
992
+ "name": "inbound.responseBodyExpression"
1199
993
  },
1200
- "type": "Text"
994
+ "description": "Specify condition and response"
1201
995
  }
1202
996
  ],
1203
997
  "icon": {
1204
- "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
998
+ "contents": "data:image/svg+xml,%3Csvg id='icon' xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; %7D %3C/style%3E%3C/defs%3E%3Cpath d='M24,26a3,3,0,1,0-2.8164-4H13v1a5,5,0,1,1-5-5V16a7,7,0,1,0,6.9287,8h6.2549A2.9914,2.9914,0,0,0,24,26Z'/%3E%3Cpath d='M24,16a7.024,7.024,0,0,0-2.57.4873l-3.1656-5.5395a3.0469,3.0469,0,1,0-1.7326.9985l4.1189,7.2085.8686-.4976a5.0006,5.0006,0,1,1-1.851,6.8418L17.937,26.501A7.0005,7.0005,0,1,0,24,16Z'/%3E%3Cpath d='M8.532,20.0537a3.03,3.03,0,1,0,1.7326.9985C11.74,18.47,13.86,14.7607,13.89,14.708l.4976-.8682-.8677-.497a5,5,0,1,1,6.812-1.8438l1.7315,1.002a7.0008,7.0008,0,1,0-10.3462,2.0356c-.457.7427-1.1021,1.8716-2.0737,3.5728Z'/%3E%3Crect id='_Transparent_Rectangle_' data-name='&lt;Transparent Rectangle&gt;' class='cls-1' width='32' height='32'/%3E%3C/svg%3E"
1205
999
  },
1206
1000
  "engines": {
1207
- "camunda": "^8.6"
1001
+ "camunda": "^8.5"
1208
1002
  }
1209
1003
  },
1210
1004
  {
@@ -1212,11 +1006,8 @@
1212
1006
  "name": "Webhook Message Start Event Connector",
1213
1007
  "id": "io.camunda.connectors.webhook.WebhookConnectorStartMessage.v1",
1214
1008
  "description": "Configure webhook to receive callbacks",
1215
- "metadata": {
1216
- "keywords": []
1217
- },
1218
1009
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
1219
- "version": 12,
1010
+ "version": 11,
1220
1011
  "category": {
1221
1012
  "id": "connectors",
1222
1013
  "name": "Connectors"
@@ -1771,18 +1562,18 @@
1771
1562
  "type": "Text"
1772
1563
  }
1773
1564
  ],
1774
- "engines": {
1775
- "camunda": "^8.3"
1776
- },
1777
1565
  "icon": {
1778
1566
  "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
1567
+ },
1568
+ "engines": {
1569
+ "camunda": "^8.6"
1779
1570
  }
1780
1571
  },
1781
1572
  {
1782
1573
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1783
1574
  "name": "Webhook Message Start Event Connector",
1784
1575
  "id": "io.camunda.connectors.webhook.WebhookConnectorStartMessage.v1",
1785
- "version": 1,
1576
+ "version": 2,
1786
1577
  "description": "Configure webhook to receive callbacks",
1787
1578
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
1788
1579
  "category": {
@@ -2251,6 +2042,18 @@
2251
2042
  },
2252
2043
  "description": "Expression to map the inbound payload to process variables"
2253
2044
  },
2045
+ {
2046
+ "label": "One time verification response expression",
2047
+ "description": "Specify condition and response. Learn more in the <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#verification-expression' target='_blank'>documentation</a>",
2048
+ "type": "Text",
2049
+ "group": "webhookResponse",
2050
+ "feel": "required",
2051
+ "optional": true,
2052
+ "binding": {
2053
+ "type": "zeebe:property",
2054
+ "name": "inbound.verificationExpression"
2055
+ }
2056
+ },
2254
2057
  {
2255
2058
  "label": "Response body expression",
2256
2059
  "type": "Text",
@@ -2268,16 +2071,16 @@
2268
2071
  "contents": "data:image/svg+xml,%3Csvg id='icon' xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; %7D %3C/style%3E%3C/defs%3E%3Cpath d='M24,26a3,3,0,1,0-2.8164-4H13v1a5,5,0,1,1-5-5V16a7,7,0,1,0,6.9287,8h6.2549A2.9914,2.9914,0,0,0,24,26Z'/%3E%3Cpath d='M24,16a7.024,7.024,0,0,0-2.57.4873l-3.1656-5.5395a3.0469,3.0469,0,1,0-1.7326.9985l4.1189,7.2085.8686-.4976a5.0006,5.0006,0,1,1-1.851,6.8418L17.937,26.501A7.0005,7.0005,0,1,0,24,16Z'/%3E%3Cpath d='M8.532,20.0537a3.03,3.03,0,1,0,1.7326.9985C11.74,18.47,13.86,14.7607,13.89,14.708l.4976-.8682-.8677-.497a5,5,0,1,1,6.812-1.8438l1.7315,1.002a7.0008,7.0008,0,1,0-10.3462,2.0356c-.457.7427-1.1021,1.8716-2.0737,3.5728Z'/%3E%3Crect id='_Transparent_Rectangle_' data-name='&lt;Transparent Rectangle&gt;' class='cls-1' width='32' height='32'/%3E%3C/svg%3E"
2269
2072
  },
2270
2073
  "engines": {
2271
- "camunda": "^8.2"
2074
+ "camunda": "^8.4"
2272
2075
  }
2273
2076
  },
2274
2077
  {
2275
2078
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2276
2079
  "name": "Webhook Message Start Event Connector",
2277
2080
  "id": "io.camunda.connectors.webhook.WebhookConnectorStartMessage.v1",
2278
- "version": 2,
2279
2081
  "description": "Configure webhook to receive callbacks",
2280
2082
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
2083
+ "version": 10,
2281
2084
  "category": {
2282
2085
  "id": "connectors",
2283
2086
  "name": "Connectors"
@@ -2300,56 +2103,43 @@
2300
2103
  "id": "authorization",
2301
2104
  "label": "Authorization"
2302
2105
  },
2106
+ {
2107
+ "id": "webhookResponse",
2108
+ "label": "Webhook response"
2109
+ },
2303
2110
  {
2304
2111
  "id": "activation",
2305
2112
  "label": "Activation"
2306
2113
  },
2307
2114
  {
2308
2115
  "id": "correlation",
2309
- "label": "Subprocess correlation"
2310
- },
2311
- {
2312
- "id": "variable-mapping",
2313
- "label": "Variable mapping"
2116
+ "label": "Correlation"
2314
2117
  },
2315
2118
  {
2316
- "id": "webhookResponse",
2317
- "label": "Webhook response"
2119
+ "id": "output",
2120
+ "label": "Output mapping"
2318
2121
  }
2319
2122
  ],
2320
2123
  "properties": [
2321
2124
  {
2322
- "type": "Hidden",
2323
2125
  "value": "io.camunda:webhook:1",
2324
2126
  "binding": {
2325
- "type": "zeebe:property",
2326
- "name": "inbound.type"
2327
- }
2328
- },
2329
- {
2330
- "type": "Hidden",
2331
- "generatedValue": {
2332
- "type": "uuid"
2127
+ "name": "inbound.type",
2128
+ "type": "zeebe:property"
2333
2129
  },
2334
- "binding": {
2335
- "type": "bpmn:Message#property",
2336
- "name": "name"
2337
- }
2338
- },
2339
- {
2340
- "type": "Hidden",
2341
- "value": "ConfigurableInboundWebhook",
2342
- "binding": {
2343
- "type": "zeebe:property",
2344
- "name": "inbound.subtype"
2345
- }
2130
+ "type": "Hidden"
2346
2131
  },
2347
2132
  {
2348
- "id": "webhookMethod",
2133
+ "id": "inbound.method",
2349
2134
  "label": "Webhook method",
2350
- "group": "endpoint",
2351
2135
  "description": "Select HTTP method",
2136
+ "optional": false,
2352
2137
  "value": "any",
2138
+ "group": "endpoint",
2139
+ "binding": {
2140
+ "name": "inbound.method",
2141
+ "type": "zeebe:property"
2142
+ },
2353
2143
  "type": "Dropdown",
2354
2144
  "choices": [
2355
2145
  {
@@ -2357,46 +2147,53 @@
2357
2147
  "value": "any"
2358
2148
  },
2359
2149
  {
2360
- "name": "Get",
2150
+ "name": "GET",
2361
2151
  "value": "get"
2362
2152
  },
2363
2153
  {
2364
- "name": "Post",
2154
+ "name": "POST",
2365
2155
  "value": "post"
2366
2156
  },
2367
2157
  {
2368
- "name": "Put",
2158
+ "name": "PUT",
2369
2159
  "value": "put"
2370
2160
  },
2371
2161
  {
2372
- "name": "Delete",
2162
+ "name": "DELETE",
2373
2163
  "value": "delete"
2374
2164
  }
2375
- ],
2376
- "binding": {
2377
- "type": "zeebe:property",
2378
- "name": "inbound.method"
2379
- }
2165
+ ]
2380
2166
  },
2381
2167
  {
2168
+ "id": "inbound.context",
2382
2169
  "label": "Webhook ID",
2383
- "type": "String",
2170
+ "description": "The webhook ID is a part of the URL",
2171
+ "optional": false,
2172
+ "constraints": {
2173
+ "notEmpty": true,
2174
+ "pattern": {
2175
+ "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
2176
+ "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
2177
+ }
2178
+ },
2384
2179
  "group": "endpoint",
2385
2180
  "binding": {
2386
- "type": "zeebe:property",
2387
- "name": "inbound.context"
2181
+ "name": "inbound.context",
2182
+ "type": "zeebe:property"
2388
2183
  },
2389
- "description": "The webhook ID is a part of the URL",
2390
- "constraints": {
2391
- "notEmpty": true
2392
- }
2184
+ "type": "String"
2393
2185
  },
2394
2186
  {
2395
- "id": "shouldValidateHmac",
2187
+ "id": "inbound.shouldValidateHmac",
2396
2188
  "label": "HMAC authentication",
2397
- "group": "authentication",
2398
2189
  "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
2190
+ "optional": false,
2399
2191
  "value": "disabled",
2192
+ "group": "authentication",
2193
+ "binding": {
2194
+ "name": "inbound.shouldValidateHmac",
2195
+ "type": "zeebe:property"
2196
+ },
2400
2197
  "type": "Dropdown",
2401
2198
  "choices": [
2402
2199
  {
@@ -2407,47 +2204,60 @@
2407
2204
  "name": "Disabled",
2408
2205
  "value": "disabled"
2409
2206
  }
2410
- ],
2411
- "binding": {
2412
- "type": "zeebe:property",
2413
- "name": "inbound.shouldValidateHmac"
2414
- }
2207
+ ]
2415
2208
  },
2416
2209
  {
2210
+ "id": "inbound.hmacSecret",
2417
2211
  "label": "HMAC secret key",
2418
2212
  "description": "Shared secret key",
2419
- "type": "String",
2420
- "group": "authentication",
2421
2213
  "optional": true,
2214
+ "feel": "optional",
2215
+ "group": "authentication",
2422
2216
  "binding": {
2423
- "type": "zeebe:property",
2424
- "name": "inbound.hmacSecret"
2217
+ "name": "inbound.hmacSecret",
2218
+ "type": "zeebe:property"
2425
2219
  },
2426
2220
  "condition": {
2427
- "property": "shouldValidateHmac",
2428
- "equals": "enabled"
2429
- }
2221
+ "property": "inbound.shouldValidateHmac",
2222
+ "equals": "enabled",
2223
+ "type": "simple"
2224
+ },
2225
+ "type": "String"
2430
2226
  },
2431
2227
  {
2228
+ "id": "inbound.hmacHeader",
2432
2229
  "label": "HMAC header",
2433
2230
  "description": "Name of header attribute that will contain the HMAC value",
2434
- "type": "String",
2435
- "group": "authentication",
2436
2231
  "optional": true,
2232
+ "feel": "optional",
2233
+ "group": "authentication",
2437
2234
  "binding": {
2438
- "type": "zeebe:property",
2439
- "name": "inbound.hmacHeader"
2235
+ "name": "inbound.hmacHeader",
2236
+ "type": "zeebe:property"
2440
2237
  },
2441
2238
  "condition": {
2442
- "property": "shouldValidateHmac",
2443
- "equals": "enabled"
2444
- }
2239
+ "property": "inbound.shouldValidateHmac",
2240
+ "equals": "enabled",
2241
+ "type": "simple"
2242
+ },
2243
+ "type": "String"
2445
2244
  },
2446
2245
  {
2246
+ "id": "inbound.hmacAlgorithm",
2447
2247
  "label": "HMAC algorithm",
2448
- "group": "authentication",
2449
2248
  "description": "Choose HMAC algorithm",
2249
+ "optional": false,
2450
2250
  "value": "sha_256",
2251
+ "group": "authentication",
2252
+ "binding": {
2253
+ "name": "inbound.hmacAlgorithm",
2254
+ "type": "zeebe:property"
2255
+ },
2256
+ "condition": {
2257
+ "property": "inbound.shouldValidateHmac",
2258
+ "equals": "enabled",
2259
+ "type": "simple"
2260
+ },
2451
2261
  "type": "Dropdown",
2452
2262
  "choices": [
2453
2263
  {
@@ -2462,214 +2272,236 @@
2462
2272
  "name": "SHA-512",
2463
2273
  "value": "sha_512"
2464
2274
  }
2465
- ],
2466
- "binding": {
2467
- "type": "zeebe:property",
2468
- "name": "inbound.hmacAlgorithm"
2469
- },
2470
- "condition": {
2471
- "property": "shouldValidateHmac",
2472
- "equals": "enabled"
2473
- }
2275
+ ]
2474
2276
  },
2475
2277
  {
2278
+ "id": "inbound.hmacScopes",
2476
2279
  "label": "HMAC scopes",
2477
- "group": "authentication",
2478
2280
  "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/' target='_blank'>documentation</a>",
2479
- "feel": "required",
2480
- "type": "String",
2481
2281
  "optional": true,
2282
+ "feel": "required",
2283
+ "group": "authentication",
2482
2284
  "binding": {
2483
- "type": "zeebe:property",
2484
- "name": "inbound.hmacScopes"
2285
+ "name": "inbound.hmacScopes",
2286
+ "type": "zeebe:property"
2485
2287
  },
2486
2288
  "condition": {
2487
- "property": "shouldValidateHmac",
2488
- "equals": "enabled"
2489
- }
2289
+ "property": "inbound.shouldValidateHmac",
2290
+ "equals": "enabled",
2291
+ "type": "simple"
2292
+ },
2293
+ "type": "String"
2490
2294
  },
2491
2295
  {
2492
- "id": "authorizationType",
2296
+ "id": "inbound.auth.type",
2493
2297
  "label": "Authorization type",
2494
- "group": "authorization",
2495
- "description": "Choose the authorization type.",
2298
+ "description": "Choose the authorization type",
2496
2299
  "value": "NONE",
2300
+ "group": "authorization",
2301
+ "binding": {
2302
+ "name": "inbound.auth.type",
2303
+ "type": "zeebe:property"
2304
+ },
2497
2305
  "type": "Dropdown",
2498
2306
  "choices": [
2499
2307
  {
2500
2308
  "name": "None",
2501
2309
  "value": "NONE"
2502
2310
  },
2503
- {
2504
- "name": "JWT",
2505
- "value": "JWT"
2506
- },
2507
2311
  {
2508
2312
  "name": "Basic",
2509
2313
  "value": "BASIC"
2510
2314
  },
2511
2315
  {
2512
- "name": "API Key",
2316
+ "name": "API key",
2513
2317
  "value": "APIKEY"
2318
+ },
2319
+ {
2320
+ "name": "JWT",
2321
+ "value": "JWT"
2514
2322
  }
2515
- ],
2516
- "binding": {
2517
- "type": "zeebe:property",
2518
- "name": "inbound.auth.type"
2519
- }
2323
+ ]
2520
2324
  },
2521
2325
  {
2522
- "label": "JWK url",
2523
- "description": "Well-known url of JWKs",
2524
- "type": "String",
2525
- "group": "authorization",
2326
+ "id": "inbound.auth.username",
2327
+ "label": "Username",
2328
+ "description": "Username for basic authentication",
2329
+ "optional": false,
2526
2330
  "feel": "optional",
2527
- "optional": true,
2331
+ "group": "authorization",
2528
2332
  "binding": {
2529
- "type": "zeebe:property",
2530
- "name": "inbound.auth.jwt.jwkUrl"
2333
+ "name": "inbound.auth.username",
2334
+ "type": "zeebe:property"
2531
2335
  },
2532
2336
  "condition": {
2533
- "property": "authorizationType",
2534
- "equals": "JWT"
2535
- }
2337
+ "property": "inbound.auth.type",
2338
+ "equals": "BASIC",
2339
+ "type": "simple"
2340
+ },
2341
+ "type": "String"
2536
2342
  },
2537
2343
  {
2538
- "label": "JWT role property expression",
2539
- "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
2540
- "type": "String",
2344
+ "id": "inbound.auth.password",
2345
+ "label": "Password",
2346
+ "description": "Password for basic authentication",
2347
+ "optional": false,
2348
+ "feel": "optional",
2541
2349
  "group": "authorization",
2542
- "feel": "required",
2543
- "optional": true,
2544
2350
  "binding": {
2545
- "type": "zeebe:property",
2546
- "name": "inbound.auth.jwt.permissionsExpression"
2351
+ "name": "inbound.auth.password",
2352
+ "type": "zeebe:property"
2547
2353
  },
2548
2354
  "condition": {
2549
- "property": "authorizationType",
2550
- "equals": "JWT"
2551
- }
2355
+ "property": "inbound.auth.type",
2356
+ "equals": "BASIC",
2357
+ "type": "simple"
2358
+ },
2359
+ "type": "String"
2552
2360
  },
2553
2361
  {
2554
- "label": "Required roles",
2555
- "description": "List of roles to test JWT roles against",
2556
- "type": "String",
2362
+ "id": "inbound.auth.apiKey",
2363
+ "label": "API key",
2364
+ "description": "Expected API key",
2365
+ "optional": false,
2366
+ "feel": "optional",
2557
2367
  "group": "authorization",
2558
- "feel": "required",
2559
- "optional": true,
2560
2368
  "binding": {
2561
- "type": "zeebe:property",
2562
- "name": "inbound.auth.jwt.requiredPermissions"
2369
+ "name": "inbound.auth.apiKey",
2370
+ "type": "zeebe:property"
2563
2371
  },
2564
2372
  "condition": {
2565
- "property": "authorizationType",
2566
- "equals": "JWT"
2567
- }
2373
+ "property": "inbound.auth.type",
2374
+ "equals": "APIKEY",
2375
+ "type": "simple"
2376
+ },
2377
+ "type": "String"
2568
2378
  },
2569
2379
  {
2570
- "label": "Username",
2571
- "description": "Username for basic authentication",
2572
- "type": "String",
2380
+ "id": "inbound.auth.apiKeyLocator",
2381
+ "label": "API key locator",
2382
+ "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
2383
+ "optional": false,
2384
+ "value": "=split(request.headers.authorization, \" \")[2]",
2385
+ "constraints": {
2386
+ "notEmpty": true
2387
+ },
2388
+ "feel": "required",
2573
2389
  "group": "authorization",
2574
- "feel": "optional",
2575
2390
  "binding": {
2576
- "type": "zeebe:property",
2577
- "name": "inbound.auth.username"
2391
+ "name": "inbound.auth.apiKeyLocator",
2392
+ "type": "zeebe:property"
2578
2393
  },
2579
2394
  "condition": {
2580
- "property": "authorizationType",
2581
- "equals": "BASIC"
2395
+ "property": "inbound.auth.type",
2396
+ "equals": "APIKEY",
2397
+ "type": "simple"
2582
2398
  },
2583
- "constraints": {
2584
- "notEmpty": true
2585
- }
2399
+ "type": "String"
2586
2400
  },
2587
2401
  {
2588
- "label": "Password",
2589
- "description": "Password for basic authentication",
2590
- "type": "String",
2591
- "group": "authorization",
2402
+ "id": "inbound.auth.jwt.jwkUrl",
2403
+ "label": "JWK URL",
2404
+ "description": "Well-known URL of JWKs",
2405
+ "optional": false,
2592
2406
  "feel": "optional",
2407
+ "group": "authorization",
2593
2408
  "binding": {
2594
- "type": "zeebe:property",
2595
- "name": "inbound.auth.password"
2409
+ "name": "inbound.auth.jwt.jwkUrl",
2410
+ "type": "zeebe:property"
2596
2411
  },
2597
2412
  "condition": {
2598
- "property": "authorizationType",
2599
- "equals": "BASIC"
2413
+ "property": "inbound.auth.type",
2414
+ "equals": "JWT",
2415
+ "type": "simple"
2600
2416
  },
2601
- "constraints": {
2602
- "notEmpty": true
2603
- }
2417
+ "type": "String"
2604
2418
  },
2605
2419
  {
2606
- "label": "API Key",
2607
- "description": "Expected API key",
2608
- "type": "String",
2420
+ "id": "inbound.auth.jwt.permissionsExpression",
2421
+ "label": "JWT role property expression",
2422
+ "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
2423
+ "optional": false,
2424
+ "feel": "required",
2609
2425
  "group": "authorization",
2610
- "feel": "optional",
2611
2426
  "binding": {
2612
- "type": "zeebe:property",
2613
- "name": "inbound.auth.apiKey"
2427
+ "name": "inbound.auth.jwt.permissionsExpression",
2428
+ "type": "zeebe:property"
2614
2429
  },
2615
2430
  "condition": {
2616
- "property": "authorizationType",
2617
- "equals": "APIKEY"
2431
+ "property": "inbound.auth.type",
2432
+ "equals": "JWT",
2433
+ "type": "simple"
2618
2434
  },
2619
- "constraints": {
2620
- "notEmpty": true
2621
- }
2435
+ "type": "String"
2622
2436
  },
2623
2437
  {
2624
- "label": "API Key locator",
2625
- "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
2626
- "type": "String",
2627
- "group": "authorization",
2438
+ "id": "inbound.auth.jwt.requiredPermissions",
2439
+ "label": "Required roles",
2440
+ "description": "List of roles to test JWT roles against",
2441
+ "optional": false,
2628
2442
  "feel": "required",
2443
+ "group": "authorization",
2629
2444
  "binding": {
2630
- "type": "zeebe:property",
2631
- "name": "inbound.auth.apiKeyLocator"
2445
+ "name": "inbound.auth.jwt.requiredPermissions",
2446
+ "type": "zeebe:property"
2632
2447
  },
2633
2448
  "condition": {
2634
- "property": "authorizationType",
2635
- "equals": "APIKEY"
2636
- },
2637
- "constraints": {
2638
- "notEmpty": true
2449
+ "property": "inbound.auth.type",
2450
+ "equals": "JWT",
2451
+ "type": "simple"
2639
2452
  },
2640
- "value": "=split(request.headers.authorization, \" \")[2]"
2453
+ "type": "String"
2641
2454
  },
2642
2455
  {
2643
- "label": "Message ID expression",
2644
- "feel": "required",
2645
- "type": "String",
2456
+ "id": "inbound.responseBodyExpression",
2457
+ "label": "Response body expression",
2458
+ "description": "Specify condition and response",
2646
2459
  "optional": true,
2647
- "group": "activation",
2460
+ "feel": "required",
2461
+ "group": "webhookResponse",
2648
2462
  "binding": {
2649
- "type": "zeebe:property",
2650
- "name": "messageIdExpression"
2463
+ "name": "inbound.responseBodyExpression",
2464
+ "type": "zeebe:property"
2651
2465
  },
2652
- "description": "Expression to extract unique identifier of a message"
2466
+ "type": "Text"
2653
2467
  },
2654
2468
  {
2655
- "label": "Condition",
2656
- "type": "String",
2657
- "group": "activation",
2469
+ "id": "inbound.verificationExpression",
2470
+ "label": "One time verification response expression",
2471
+ "description": "Specify condition and response. Learn more in the <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#verification-expression' target='_blank'>documentation</a>",
2472
+ "optional": true,
2658
2473
  "feel": "required",
2474
+ "group": "webhookResponse",
2475
+ "binding": {
2476
+ "name": "inbound.verificationExpression",
2477
+ "type": "zeebe:property"
2478
+ },
2479
+ "type": "Text"
2480
+ },
2481
+ {
2482
+ "id": "activationCondition",
2483
+ "label": "Activation condition",
2484
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
2659
2485
  "optional": true,
2486
+ "feel": "required",
2487
+ "group": "activation",
2660
2488
  "binding": {
2661
- "type": "zeebe:property",
2662
- "name": "activationCondition"
2489
+ "name": "activationCondition",
2490
+ "type": "zeebe:property"
2663
2491
  },
2664
- "description": "Condition under which the connector triggers. Leave empty to catch all events. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a>"
2492
+ "type": "String"
2665
2493
  },
2666
2494
  {
2667
- "label": "Correlation required",
2668
- "description": "Indicates whether correlation is required. This is needed for event-based subprocess message start events",
2669
2495
  "id": "correlationRequired",
2496
+ "label": "Subprocess correlation required",
2497
+ "description": "Indicates whether correlation is required. This is needed for event-based subprocess message start events",
2498
+ "value": "notRequired",
2670
2499
  "group": "correlation",
2500
+ "binding": {
2501
+ "name": "correlationRequired",
2502
+ "type": "zeebe:property"
2503
+ },
2671
2504
  "type": "Dropdown",
2672
- "value": "notRequired",
2673
2505
  "choices": [
2674
2506
  {
2675
2507
  "name": "Correlation not required",
@@ -2679,110 +2511,114 @@
2679
2511
  "name": "Correlation required",
2680
2512
  "value": "required"
2681
2513
  }
2682
- ],
2683
- "binding": {
2684
- "type": "zeebe:property",
2685
- "name": "correlationRequired"
2686
- }
2514
+ ]
2687
2515
  },
2688
2516
  {
2517
+ "id": "correlationKeyProcess",
2689
2518
  "label": "Correlation key (process)",
2690
- "type": "String",
2691
- "group": "correlation",
2692
- "feel": "required",
2693
2519
  "description": "Sets up the correlation key from process variables",
2694
- "binding": {
2695
- "type": "bpmn:Message#zeebe:subscription#property",
2696
- "name": "correlationKey"
2697
- },
2698
2520
  "constraints": {
2699
2521
  "notEmpty": true
2700
2522
  },
2523
+ "feel": "required",
2524
+ "group": "correlation",
2525
+ "binding": {
2526
+ "name": "correlationKey",
2527
+ "type": "bpmn:Message#zeebe:subscription#property"
2528
+ },
2701
2529
  "condition": {
2702
2530
  "property": "correlationRequired",
2703
- "equals": "required"
2704
- }
2531
+ "equals": "required",
2532
+ "type": "simple"
2533
+ },
2534
+ "type": "String"
2705
2535
  },
2706
2536
  {
2707
- "label": "Correlation key (payload)",
2708
- "type": "String",
2709
- "group": "correlation",
2710
- "feel": "required",
2711
- "binding": {
2712
- "type": "zeebe:property",
2713
- "name": "correlationKeyExpression"
2714
- },
2537
+ "id": "correlationKeyPayload",
2538
+ "label": "Correlation key (payload)",
2715
2539
  "description": "Extracts the correlation key from the incoming message payload",
2716
2540
  "constraints": {
2717
2541
  "notEmpty": true
2718
2542
  },
2543
+ "feel": "required",
2544
+ "group": "correlation",
2545
+ "binding": {
2546
+ "name": "correlationKeyExpression",
2547
+ "type": "zeebe:property"
2548
+ },
2719
2549
  "condition": {
2720
2550
  "property": "correlationRequired",
2721
- "equals": "required"
2722
- }
2551
+ "equals": "required",
2552
+ "type": "simple"
2553
+ },
2554
+ "type": "String"
2723
2555
  },
2724
2556
  {
2725
- "label": "Result variable",
2726
- "type": "String",
2727
- "group": "variable-mapping",
2557
+ "id": "messageIdExpression",
2558
+ "label": "Message ID expression",
2559
+ "description": "Expression to extract unique identifier of a message",
2728
2560
  "optional": true,
2561
+ "feel": "required",
2562
+ "group": "correlation",
2729
2563
  "binding": {
2730
- "type": "zeebe:property",
2731
- "name": "resultVariable"
2564
+ "name": "messageIdExpression",
2565
+ "type": "zeebe:property"
2732
2566
  },
2733
- "description": "Name of variable to store the result of the connector in"
2567
+ "type": "String"
2734
2568
  },
2735
2569
  {
2736
- "label": "Result expression",
2737
- "type": "String",
2738
- "group": "variable-mapping",
2739
- "feel": "required",
2740
- "optional": true,
2570
+ "id": "messageNameUuid",
2571
+ "generatedValue": {
2572
+ "type": "uuid"
2573
+ },
2574
+ "group": "correlation",
2741
2575
  "binding": {
2742
- "type": "zeebe:property",
2743
- "name": "resultExpression"
2576
+ "name": "name",
2577
+ "type": "bpmn:Message#property"
2744
2578
  },
2745
- "description": "Expression to map the inbound payload to process variables"
2579
+ "type": "Hidden"
2746
2580
  },
2747
2581
  {
2748
- "label": "One time verification response expression",
2749
- "description": "Specify condition and response. Learn more in the <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#verification-expression' target='_blank'>documentation</a>",
2750
- "type": "Text",
2751
- "group": "webhookResponse",
2752
- "feel": "required",
2753
- "optional": true,
2582
+ "id": "resultVariable",
2583
+ "label": "Result variable",
2584
+ "description": "Name of variable to store the response in",
2585
+ "group": "output",
2754
2586
  "binding": {
2755
- "type": "zeebe:property",
2756
- "name": "inbound.verificationExpression"
2757
- }
2587
+ "name": "resultVariable",
2588
+ "type": "zeebe:property"
2589
+ },
2590
+ "type": "String"
2758
2591
  },
2759
2592
  {
2760
- "label": "Response body expression",
2761
- "type": "Text",
2762
- "group": "webhookResponse",
2593
+ "id": "resultExpression",
2594
+ "label": "Result expression",
2595
+ "description": "Expression to map the response into process variables",
2763
2596
  "feel": "required",
2764
- "optional": true,
2597
+ "group": "output",
2765
2598
  "binding": {
2766
- "type": "zeebe:property",
2767
- "name": "inbound.responseBodyExpression"
2599
+ "name": "resultExpression",
2600
+ "type": "zeebe:property"
2768
2601
  },
2769
- "description": "Specify condition and response"
2602
+ "type": "Text"
2770
2603
  }
2771
2604
  ],
2772
2605
  "icon": {
2773
- "contents": "data:image/svg+xml,%3Csvg id='icon' xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; %7D %3C/style%3E%3C/defs%3E%3Cpath d='M24,26a3,3,0,1,0-2.8164-4H13v1a5,5,0,1,1-5-5V16a7,7,0,1,0,6.9287,8h6.2549A2.9914,2.9914,0,0,0,24,26Z'/%3E%3Cpath d='M24,16a7.024,7.024,0,0,0-2.57.4873l-3.1656-5.5395a3.0469,3.0469,0,1,0-1.7326.9985l4.1189,7.2085.8686-.4976a5.0006,5.0006,0,1,1-1.851,6.8418L17.937,26.501A7.0005,7.0005,0,1,0,24,16Z'/%3E%3Cpath d='M8.532,20.0537a3.03,3.03,0,1,0,1.7326.9985C11.74,18.47,13.86,14.7607,13.89,14.708l.4976-.8682-.8677-.497a5,5,0,1,1,6.812-1.8438l1.7315,1.002a7.0008,7.0008,0,1,0-10.3462,2.0356c-.457.7427-1.1021,1.8716-2.0737,3.5728Z'/%3E%3Crect id='_Transparent_Rectangle_' data-name='&lt;Transparent Rectangle&gt;' class='cls-1' width='32' height='32'/%3E%3C/svg%3E"
2606
+ "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
2774
2607
  },
2775
2608
  "engines": {
2776
- "camunda": "^8.4"
2609
+ "camunda": "^8.5"
2777
2610
  }
2778
2611
  },
2779
2612
  {
2780
2613
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2781
2614
  "name": "Webhook Message Start Event Connector",
2782
2615
  "id": "io.camunda.connectors.webhook.WebhookConnectorStartMessage.v1",
2783
- "version": 3,
2784
2616
  "description": "Configure webhook to receive callbacks",
2785
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
2617
+ "metadata": {
2618
+ "keywords": []
2619
+ },
2620
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
2621
+ "version": 12,
2786
2622
  "category": {
2787
2623
  "id": "connectors",
2788
2624
  "name": "Connectors"
@@ -2805,56 +2641,44 @@
2805
2641
  "id": "authorization",
2806
2642
  "label": "Authorization"
2807
2643
  },
2644
+ {
2645
+ "id": "webhookResponse",
2646
+ "label": "Webhook response"
2647
+ },
2808
2648
  {
2809
2649
  "id": "activation",
2810
2650
  "label": "Activation"
2811
2651
  },
2812
2652
  {
2813
2653
  "id": "correlation",
2814
- "label": "Subprocess correlation"
2815
- },
2816
- {
2817
- "id": "variable-mapping",
2818
- "label": "Variable mapping"
2654
+ "label": "Correlation",
2655
+ "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
2819
2656
  },
2820
2657
  {
2821
- "id": "webhookResponse",
2822
- "label": "Webhook response"
2658
+ "id": "output",
2659
+ "label": "Output mapping"
2823
2660
  }
2824
2661
  ],
2825
2662
  "properties": [
2826
2663
  {
2827
- "type": "Hidden",
2828
2664
  "value": "io.camunda:webhook:1",
2829
2665
  "binding": {
2830
- "type": "zeebe:property",
2831
- "name": "inbound.type"
2832
- }
2833
- },
2834
- {
2835
- "type": "Hidden",
2836
- "generatedValue": {
2837
- "type": "uuid"
2666
+ "name": "inbound.type",
2667
+ "type": "zeebe:property"
2838
2668
  },
2839
- "binding": {
2840
- "type": "bpmn:Message#property",
2841
- "name": "name"
2842
- }
2843
- },
2844
- {
2845
- "type": "Hidden",
2846
- "value": "ConfigurableInboundWebhook",
2847
- "binding": {
2848
- "type": "zeebe:property",
2849
- "name": "inbound.subtype"
2850
- }
2669
+ "type": "Hidden"
2851
2670
  },
2852
2671
  {
2853
- "id": "webhookMethod",
2672
+ "id": "inbound.method",
2854
2673
  "label": "Webhook method",
2855
- "group": "endpoint",
2856
2674
  "description": "Select HTTP method",
2675
+ "optional": false,
2857
2676
  "value": "any",
2677
+ "group": "endpoint",
2678
+ "binding": {
2679
+ "name": "inbound.method",
2680
+ "type": "zeebe:property"
2681
+ },
2858
2682
  "type": "Dropdown",
2859
2683
  "choices": [
2860
2684
  {
@@ -2862,50 +2686,53 @@
2862
2686
  "value": "any"
2863
2687
  },
2864
2688
  {
2865
- "name": "Get",
2689
+ "name": "GET",
2866
2690
  "value": "get"
2867
2691
  },
2868
2692
  {
2869
- "name": "Post",
2693
+ "name": "POST",
2870
2694
  "value": "post"
2871
2695
  },
2872
2696
  {
2873
- "name": "Put",
2697
+ "name": "PUT",
2874
2698
  "value": "put"
2875
2699
  },
2876
2700
  {
2877
- "name": "Delete",
2701
+ "name": "DELETE",
2878
2702
  "value": "delete"
2879
2703
  }
2880
- ],
2881
- "binding": {
2882
- "type": "zeebe:property",
2883
- "name": "inbound.method"
2884
- }
2704
+ ]
2885
2705
  },
2886
2706
  {
2707
+ "id": "inbound.context",
2887
2708
  "label": "Webhook ID",
2888
- "type": "String",
2889
- "group": "endpoint",
2890
- "binding": {
2891
- "type": "zeebe:property",
2892
- "name": "inbound.context"
2893
- },
2894
2709
  "description": "The webhook ID is a part of the URL",
2710
+ "optional": false,
2895
2711
  "constraints": {
2896
2712
  "notEmpty": true,
2897
2713
  "pattern": {
2898
2714
  "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
2899
2715
  "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
2900
2716
  }
2901
- }
2717
+ },
2718
+ "group": "endpoint",
2719
+ "binding": {
2720
+ "name": "inbound.context",
2721
+ "type": "zeebe:property"
2722
+ },
2723
+ "type": "String"
2902
2724
  },
2903
2725
  {
2904
- "id": "shouldValidateHmac",
2726
+ "id": "inbound.shouldValidateHmac",
2905
2727
  "label": "HMAC authentication",
2906
- "group": "authentication",
2907
- "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
2728
+ "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
2729
+ "optional": false,
2908
2730
  "value": "disabled",
2731
+ "group": "authentication",
2732
+ "binding": {
2733
+ "name": "inbound.shouldValidateHmac",
2734
+ "type": "zeebe:property"
2735
+ },
2909
2736
  "type": "Dropdown",
2910
2737
  "choices": [
2911
2738
  {
@@ -2916,47 +2743,60 @@
2916
2743
  "name": "Disabled",
2917
2744
  "value": "disabled"
2918
2745
  }
2919
- ],
2920
- "binding": {
2921
- "type": "zeebe:property",
2922
- "name": "inbound.shouldValidateHmac"
2923
- }
2746
+ ]
2924
2747
  },
2925
2748
  {
2749
+ "id": "inbound.hmacSecret",
2926
2750
  "label": "HMAC secret key",
2927
2751
  "description": "Shared secret key",
2928
- "type": "String",
2929
- "group": "authentication",
2930
2752
  "optional": true,
2753
+ "feel": "optional",
2754
+ "group": "authentication",
2931
2755
  "binding": {
2932
- "type": "zeebe:property",
2933
- "name": "inbound.hmacSecret"
2756
+ "name": "inbound.hmacSecret",
2757
+ "type": "zeebe:property"
2934
2758
  },
2935
2759
  "condition": {
2936
- "property": "shouldValidateHmac",
2937
- "equals": "enabled"
2938
- }
2760
+ "property": "inbound.shouldValidateHmac",
2761
+ "equals": "enabled",
2762
+ "type": "simple"
2763
+ },
2764
+ "type": "String"
2939
2765
  },
2940
2766
  {
2767
+ "id": "inbound.hmacHeader",
2941
2768
  "label": "HMAC header",
2942
2769
  "description": "Name of header attribute that will contain the HMAC value",
2943
- "type": "String",
2944
- "group": "authentication",
2945
2770
  "optional": true,
2771
+ "feel": "optional",
2772
+ "group": "authentication",
2946
2773
  "binding": {
2947
- "type": "zeebe:property",
2948
- "name": "inbound.hmacHeader"
2774
+ "name": "inbound.hmacHeader",
2775
+ "type": "zeebe:property"
2949
2776
  },
2950
2777
  "condition": {
2951
- "property": "shouldValidateHmac",
2952
- "equals": "enabled"
2953
- }
2778
+ "property": "inbound.shouldValidateHmac",
2779
+ "equals": "enabled",
2780
+ "type": "simple"
2781
+ },
2782
+ "type": "String"
2954
2783
  },
2955
2784
  {
2785
+ "id": "inbound.hmacAlgorithm",
2956
2786
  "label": "HMAC algorithm",
2957
- "group": "authentication",
2958
2787
  "description": "Choose HMAC algorithm",
2788
+ "optional": false,
2959
2789
  "value": "sha_256",
2790
+ "group": "authentication",
2791
+ "binding": {
2792
+ "name": "inbound.hmacAlgorithm",
2793
+ "type": "zeebe:property"
2794
+ },
2795
+ "condition": {
2796
+ "property": "inbound.shouldValidateHmac",
2797
+ "equals": "enabled",
2798
+ "type": "simple"
2799
+ },
2960
2800
  "type": "Dropdown",
2961
2801
  "choices": [
2962
2802
  {
@@ -2971,214 +2811,248 @@
2971
2811
  "name": "SHA-512",
2972
2812
  "value": "sha_512"
2973
2813
  }
2974
- ],
2975
- "binding": {
2976
- "type": "zeebe:property",
2977
- "name": "inbound.hmacAlgorithm"
2978
- },
2979
- "condition": {
2980
- "property": "shouldValidateHmac",
2981
- "equals": "enabled"
2982
- }
2814
+ ]
2983
2815
  },
2984
2816
  {
2817
+ "id": "inbound.hmacScopes",
2985
2818
  "label": "HMAC scopes",
2986
- "group": "authentication",
2987
- "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/' target='_blank'>documentation</a>",
2988
- "feel": "required",
2989
- "type": "String",
2819
+ "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/' target='_blank'>documentation</a>",
2990
2820
  "optional": true,
2821
+ "feel": "required",
2822
+ "group": "authentication",
2991
2823
  "binding": {
2992
- "type": "zeebe:property",
2993
- "name": "inbound.hmacScopes"
2824
+ "name": "inbound.hmacScopes",
2825
+ "type": "zeebe:property"
2994
2826
  },
2995
2827
  "condition": {
2996
- "property": "shouldValidateHmac",
2997
- "equals": "enabled"
2998
- }
2828
+ "property": "inbound.shouldValidateHmac",
2829
+ "equals": "enabled",
2830
+ "type": "simple"
2831
+ },
2832
+ "type": "String"
2999
2833
  },
3000
2834
  {
3001
- "id": "authorizationType",
2835
+ "id": "inbound.auth.type",
3002
2836
  "label": "Authorization type",
3003
- "group": "authorization",
3004
- "description": "Choose the authorization type.",
2837
+ "description": "Choose the authorization type",
3005
2838
  "value": "NONE",
2839
+ "group": "authorization",
2840
+ "binding": {
2841
+ "name": "inbound.auth.type",
2842
+ "type": "zeebe:property"
2843
+ },
3006
2844
  "type": "Dropdown",
3007
2845
  "choices": [
3008
2846
  {
3009
2847
  "name": "None",
3010
2848
  "value": "NONE"
3011
2849
  },
3012
- {
3013
- "name": "JWT",
3014
- "value": "JWT"
3015
- },
3016
2850
  {
3017
2851
  "name": "Basic",
3018
2852
  "value": "BASIC"
3019
2853
  },
3020
2854
  {
3021
- "name": "API Key",
2855
+ "name": "API key",
3022
2856
  "value": "APIKEY"
2857
+ },
2858
+ {
2859
+ "name": "JWT",
2860
+ "value": "JWT"
3023
2861
  }
3024
- ],
3025
- "binding": {
3026
- "type": "zeebe:property",
3027
- "name": "inbound.auth.type"
3028
- }
2862
+ ]
3029
2863
  },
3030
2864
  {
3031
- "label": "JWK url",
3032
- "description": "Well-known url of JWKs",
3033
- "type": "String",
3034
- "group": "authorization",
2865
+ "id": "inbound.auth.username",
2866
+ "label": "Username",
2867
+ "description": "Username for basic authentication",
2868
+ "optional": false,
3035
2869
  "feel": "optional",
3036
- "optional": true,
2870
+ "group": "authorization",
3037
2871
  "binding": {
3038
- "type": "zeebe:property",
3039
- "name": "inbound.auth.jwt.jwkUrl"
2872
+ "name": "inbound.auth.username",
2873
+ "type": "zeebe:property"
3040
2874
  },
3041
2875
  "condition": {
3042
- "property": "authorizationType",
3043
- "equals": "JWT"
3044
- }
2876
+ "property": "inbound.auth.type",
2877
+ "equals": "BASIC",
2878
+ "type": "simple"
2879
+ },
2880
+ "type": "String"
3045
2881
  },
3046
2882
  {
3047
- "label": "JWT role property expression",
3048
- "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
3049
- "type": "String",
2883
+ "id": "inbound.auth.password",
2884
+ "label": "Password",
2885
+ "description": "Password for basic authentication",
2886
+ "optional": false,
2887
+ "feel": "optional",
3050
2888
  "group": "authorization",
3051
- "feel": "required",
3052
- "optional": true,
3053
2889
  "binding": {
3054
- "type": "zeebe:property",
3055
- "name": "inbound.auth.jwt.permissionsExpression"
2890
+ "name": "inbound.auth.password",
2891
+ "type": "zeebe:property"
3056
2892
  },
3057
2893
  "condition": {
3058
- "property": "authorizationType",
3059
- "equals": "JWT"
3060
- }
2894
+ "property": "inbound.auth.type",
2895
+ "equals": "BASIC",
2896
+ "type": "simple"
2897
+ },
2898
+ "type": "String"
3061
2899
  },
3062
2900
  {
3063
- "label": "Required roles",
3064
- "description": "List of roles to test JWT roles against",
3065
- "type": "String",
2901
+ "id": "inbound.auth.apiKey",
2902
+ "label": "API key",
2903
+ "description": "Expected API key",
2904
+ "optional": false,
2905
+ "feel": "optional",
3066
2906
  "group": "authorization",
3067
- "feel": "required",
3068
- "optional": true,
3069
2907
  "binding": {
3070
- "type": "zeebe:property",
3071
- "name": "inbound.auth.jwt.requiredPermissions"
2908
+ "name": "inbound.auth.apiKey",
2909
+ "type": "zeebe:property"
3072
2910
  },
3073
2911
  "condition": {
3074
- "property": "authorizationType",
3075
- "equals": "JWT"
3076
- }
2912
+ "property": "inbound.auth.type",
2913
+ "equals": "APIKEY",
2914
+ "type": "simple"
2915
+ },
2916
+ "type": "String"
3077
2917
  },
3078
2918
  {
3079
- "label": "Username",
3080
- "description": "Username for basic authentication",
3081
- "type": "String",
2919
+ "id": "inbound.auth.apiKeyLocator",
2920
+ "label": "API key locator",
2921
+ "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
2922
+ "optional": false,
2923
+ "value": "=split(request.headers.authorization, \" \")[2]",
2924
+ "constraints": {
2925
+ "notEmpty": true
2926
+ },
2927
+ "feel": "required",
3082
2928
  "group": "authorization",
3083
- "feel": "optional",
3084
2929
  "binding": {
3085
- "type": "zeebe:property",
3086
- "name": "inbound.auth.username"
2930
+ "name": "inbound.auth.apiKeyLocator",
2931
+ "type": "zeebe:property"
3087
2932
  },
3088
2933
  "condition": {
3089
- "property": "authorizationType",
3090
- "equals": "BASIC"
2934
+ "property": "inbound.auth.type",
2935
+ "equals": "APIKEY",
2936
+ "type": "simple"
3091
2937
  },
3092
- "constraints": {
3093
- "notEmpty": true
3094
- }
2938
+ "type": "String"
3095
2939
  },
3096
2940
  {
3097
- "label": "Password",
3098
- "description": "Password for basic authentication",
3099
- "type": "String",
3100
- "group": "authorization",
2941
+ "id": "inbound.auth.jwt.jwkUrl",
2942
+ "label": "JWK URL",
2943
+ "description": "Well-known URL of JWKs",
2944
+ "optional": false,
3101
2945
  "feel": "optional",
2946
+ "group": "authorization",
3102
2947
  "binding": {
3103
- "type": "zeebe:property",
3104
- "name": "inbound.auth.password"
2948
+ "name": "inbound.auth.jwt.jwkUrl",
2949
+ "type": "zeebe:property"
3105
2950
  },
3106
2951
  "condition": {
3107
- "property": "authorizationType",
3108
- "equals": "BASIC"
2952
+ "property": "inbound.auth.type",
2953
+ "equals": "JWT",
2954
+ "type": "simple"
3109
2955
  },
3110
- "constraints": {
3111
- "notEmpty": true
3112
- }
2956
+ "type": "String"
3113
2957
  },
3114
2958
  {
3115
- "label": "API Key",
3116
- "description": "Expected API key",
3117
- "type": "String",
2959
+ "id": "inbound.auth.jwt.permissionsExpression",
2960
+ "label": "JWT role property expression",
2961
+ "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
2962
+ "optional": false,
2963
+ "feel": "required",
3118
2964
  "group": "authorization",
3119
- "feel": "optional",
3120
2965
  "binding": {
3121
- "type": "zeebe:property",
3122
- "name": "inbound.auth.apiKey"
2966
+ "name": "inbound.auth.jwt.permissionsExpression",
2967
+ "type": "zeebe:property"
3123
2968
  },
3124
2969
  "condition": {
3125
- "property": "authorizationType",
3126
- "equals": "APIKEY"
2970
+ "property": "inbound.auth.type",
2971
+ "equals": "JWT",
2972
+ "type": "simple"
3127
2973
  },
3128
- "constraints": {
3129
- "notEmpty": true
3130
- }
2974
+ "type": "String"
3131
2975
  },
3132
2976
  {
3133
- "label": "API Key locator",
3134
- "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
3135
- "type": "String",
3136
- "group": "authorization",
2977
+ "id": "inbound.auth.jwt.requiredPermissions",
2978
+ "label": "Required roles",
2979
+ "description": "List of roles to test JWT roles against",
2980
+ "optional": false,
3137
2981
  "feel": "required",
2982
+ "group": "authorization",
3138
2983
  "binding": {
3139
- "type": "zeebe:property",
3140
- "name": "inbound.auth.apiKeyLocator"
2984
+ "name": "inbound.auth.jwt.requiredPermissions",
2985
+ "type": "zeebe:property"
3141
2986
  },
3142
2987
  "condition": {
3143
- "property": "authorizationType",
3144
- "equals": "APIKEY"
2988
+ "property": "inbound.auth.type",
2989
+ "equals": "JWT",
2990
+ "type": "simple"
3145
2991
  },
3146
- "constraints": {
3147
- "notEmpty": true
2992
+ "type": "String"
2993
+ },
2994
+ {
2995
+ "id": "inbound.responseExpression",
2996
+ "label": "Response expression",
2997
+ "description": "Expression used to generate the HTTP response",
2998
+ "optional": true,
2999
+ "feel": "required",
3000
+ "group": "webhookResponse",
3001
+ "binding": {
3002
+ "name": "inbound.responseExpression",
3003
+ "type": "zeebe:property"
3148
3004
  },
3149
- "value": "=split(request.headers.authorization, \" \")[2]"
3005
+ "type": "Text"
3150
3006
  },
3151
3007
  {
3152
- "label": "Message ID expression",
3008
+ "id": "inbound.verificationExpression",
3009
+ "label": "One time verification response expression",
3010
+ "description": "Specify condition and response. Learn more in the <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#verification-expression' target='_blank'>documentation</a>",
3011
+ "optional": true,
3153
3012
  "feel": "required",
3154
- "type": "String",
3013
+ "group": "webhookResponse",
3014
+ "binding": {
3015
+ "name": "inbound.verificationExpression",
3016
+ "type": "zeebe:property"
3017
+ },
3018
+ "type": "Text"
3019
+ },
3020
+ {
3021
+ "id": "activationCondition",
3022
+ "label": "Activation condition",
3023
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
3155
3024
  "optional": true,
3025
+ "feel": "required",
3156
3026
  "group": "activation",
3157
3027
  "binding": {
3158
- "type": "zeebe:property",
3159
- "name": "messageIdExpression"
3028
+ "name": "activationCondition",
3029
+ "type": "zeebe:property"
3160
3030
  },
3161
- "description": "Expression to extract unique identifier of a message"
3031
+ "type": "String"
3162
3032
  },
3163
3033
  {
3164
- "label": "Condition",
3165
- "type": "String",
3034
+ "id": "consumeUnmatchedEvents",
3035
+ "label": "Consume unmatched events",
3036
+ "value": true,
3166
3037
  "group": "activation",
3167
- "feel": "required",
3168
- "optional": true,
3169
3038
  "binding": {
3170
- "type": "zeebe:property",
3171
- "name": "activationCondition"
3039
+ "name": "consumeUnmatchedEvents",
3040
+ "type": "zeebe:property"
3172
3041
  },
3173
- "description": "Condition under which the connector triggers. Leave empty to catch all events. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a>"
3042
+ "tooltip": "Unmatched events are rejected by default, allowing the upstream service to handle the error. Check this box to consume unmatched events and return a success response",
3043
+ "type": "Boolean"
3174
3044
  },
3175
3045
  {
3176
- "label": "Correlation required",
3177
- "description": "Indicates whether correlation is required. This is needed for event-based subprocess message start events",
3178
3046
  "id": "correlationRequired",
3047
+ "label": "Subprocess correlation required",
3048
+ "description": "Indicates whether correlation is required. This is needed for event-based subprocess message start events",
3049
+ "value": "notRequired",
3179
3050
  "group": "correlation",
3051
+ "binding": {
3052
+ "name": "correlationRequired",
3053
+ "type": "zeebe:property"
3054
+ },
3180
3055
  "type": "Dropdown",
3181
- "value": "notRequired",
3182
3056
  "choices": [
3183
3057
  {
3184
3058
  "name": "Correlation not required",
@@ -3188,101 +3062,122 @@
3188
3062
  "name": "Correlation required",
3189
3063
  "value": "required"
3190
3064
  }
3191
- ],
3192
- "binding": {
3193
- "type": "zeebe:property",
3194
- "name": "correlationRequired"
3195
- }
3065
+ ]
3196
3066
  },
3197
3067
  {
3068
+ "id": "correlationKeyProcess",
3198
3069
  "label": "Correlation key (process)",
3199
- "type": "String",
3200
- "group": "correlation",
3201
- "feel": "required",
3202
3070
  "description": "Sets up the correlation key from process variables",
3203
- "binding": {
3204
- "type": "bpmn:Message#zeebe:subscription#property",
3205
- "name": "correlationKey"
3206
- },
3207
3071
  "constraints": {
3208
3072
  "notEmpty": true
3209
3073
  },
3074
+ "feel": "required",
3075
+ "group": "correlation",
3076
+ "binding": {
3077
+ "name": "correlationKey",
3078
+ "type": "bpmn:Message#zeebe:subscription#property"
3079
+ },
3210
3080
  "condition": {
3211
3081
  "property": "correlationRequired",
3212
- "equals": "required"
3213
- }
3082
+ "equals": "required",
3083
+ "type": "simple"
3084
+ },
3085
+ "type": "String"
3214
3086
  },
3215
3087
  {
3088
+ "id": "correlationKeyPayload",
3216
3089
  "label": "Correlation key (payload)",
3217
- "type": "String",
3218
- "group": "correlation",
3219
- "feel": "required",
3220
- "binding": {
3221
- "type": "zeebe:property",
3222
- "name": "correlationKeyExpression"
3223
- },
3224
3090
  "description": "Extracts the correlation key from the incoming message payload",
3225
3091
  "constraints": {
3226
3092
  "notEmpty": true
3227
3093
  },
3094
+ "feel": "required",
3095
+ "group": "correlation",
3096
+ "binding": {
3097
+ "name": "correlationKeyExpression",
3098
+ "type": "zeebe:property"
3099
+ },
3228
3100
  "condition": {
3229
3101
  "property": "correlationRequired",
3230
- "equals": "required"
3231
- }
3102
+ "equals": "required",
3103
+ "type": "simple"
3104
+ },
3105
+ "type": "String"
3232
3106
  },
3233
3107
  {
3234
- "label": "Result variable",
3235
- "type": "String",
3236
- "group": "variable-mapping",
3108
+ "id": "messageTtl",
3109
+ "label": "Message TTL",
3110
+ "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
3237
3111
  "optional": true,
3112
+ "constraints": {
3113
+ "notEmpty": false,
3114
+ "pattern": {
3115
+ "value": "^(PT.*|)$",
3116
+ "message": "must be an ISO-8601 duration"
3117
+ }
3118
+ },
3119
+ "feel": "optional",
3120
+ "group": "correlation",
3238
3121
  "binding": {
3239
- "type": "zeebe:property",
3240
- "name": "resultVariable"
3122
+ "name": "messageTtl",
3123
+ "type": "zeebe:property"
3241
3124
  },
3242
- "description": "Name of variable to store the result of the connector in"
3125
+ "type": "String"
3243
3126
  },
3244
3127
  {
3245
- "label": "Result expression",
3246
- "type": "String",
3247
- "group": "variable-mapping",
3248
- "feel": "required",
3128
+ "id": "messageIdExpression",
3129
+ "label": "Message ID expression",
3130
+ "description": "Expression to extract unique identifier of a message",
3249
3131
  "optional": true,
3132
+ "feel": "required",
3133
+ "group": "correlation",
3250
3134
  "binding": {
3251
- "type": "zeebe:property",
3252
- "name": "resultExpression"
3135
+ "name": "messageIdExpression",
3136
+ "type": "zeebe:property"
3253
3137
  },
3254
- "description": "Expression to map the inbound payload to process variables"
3138
+ "type": "String"
3255
3139
  },
3256
3140
  {
3257
- "label": "One time verification response expression",
3258
- "description": "Specify condition and response. Learn more in the <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#verification-expression' target='_blank'>documentation</a>",
3259
- "type": "Text",
3260
- "group": "webhookResponse",
3261
- "feel": "required",
3262
- "optional": true,
3141
+ "id": "messageNameUuid",
3142
+ "generatedValue": {
3143
+ "type": "uuid"
3144
+ },
3145
+ "group": "correlation",
3263
3146
  "binding": {
3264
- "type": "zeebe:property",
3265
- "name": "inbound.verificationExpression"
3266
- }
3147
+ "name": "name",
3148
+ "type": "bpmn:Message#property"
3149
+ },
3150
+ "type": "Hidden"
3267
3151
  },
3268
3152
  {
3269
- "label": "Response body expression",
3270
- "type": "Text",
3271
- "group": "webhookResponse",
3153
+ "id": "resultVariable",
3154
+ "label": "Result variable",
3155
+ "description": "Name of variable to store the response in",
3156
+ "group": "output",
3157
+ "binding": {
3158
+ "name": "resultVariable",
3159
+ "type": "zeebe:property"
3160
+ },
3161
+ "type": "String"
3162
+ },
3163
+ {
3164
+ "id": "resultExpression",
3165
+ "label": "Result expression",
3166
+ "description": "Expression to map the response into process variables",
3272
3167
  "feel": "required",
3273
- "optional": true,
3168
+ "group": "output",
3274
3169
  "binding": {
3275
- "type": "zeebe:property",
3276
- "name": "inbound.responseBodyExpression"
3170
+ "name": "resultExpression",
3171
+ "type": "zeebe:property"
3277
3172
  },
3278
- "description": "Specify condition and response"
3173
+ "type": "Text"
3279
3174
  }
3280
3175
  ],
3281
- "icon": {
3282
- "contents": "data:image/svg+xml,%3Csvg id='icon' xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 32 32'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; %7D %3C/style%3E%3C/defs%3E%3Cpath d='M24,26a3,3,0,1,0-2.8164-4H13v1a5,5,0,1,1-5-5V16a7,7,0,1,0,6.9287,8h6.2549A2.9914,2.9914,0,0,0,24,26Z'/%3E%3Cpath d='M24,16a7.024,7.024,0,0,0-2.57.4873l-3.1656-5.5395a3.0469,3.0469,0,1,0-1.7326.9985l4.1189,7.2085.8686-.4976a5.0006,5.0006,0,1,1-1.851,6.8418L17.937,26.501A7.0005,7.0005,0,1,0,24,16Z'/%3E%3Cpath d='M8.532,20.0537a3.03,3.03,0,1,0,1.7326.9985C11.74,18.47,13.86,14.7607,13.89,14.708l.4976-.8682-.8677-.497a5,5,0,1,1,6.812-1.8438l1.7315,1.002a7.0008,7.0008,0,1,0-10.3462,2.0356c-.457.7427-1.1021,1.8716-2.0737,3.5728Z'/%3E%3Crect id='_Transparent_Rectangle_' data-name='&lt;Transparent Rectangle&gt;' class='cls-1' width='32' height='32'/%3E%3C/svg%3E"
3283
- },
3284
3176
  "engines": {
3285
- "camunda": "^8.5"
3177
+ "camunda": "^8.3"
3178
+ },
3179
+ "icon": {
3180
+ "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
3286
3181
  }
3287
3182
  },
3288
3183
  {
@@ -3290,8 +3185,11 @@
3290
3185
  "name": "Webhook Message Start Event Connector",
3291
3186
  "id": "io.camunda.connectors.webhook.WebhookConnectorStartMessage.v1",
3292
3187
  "description": "Configure webhook to receive callbacks",
3293
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
3294
- "version": 10,
3188
+ "metadata": {
3189
+ "keywords": []
3190
+ },
3191
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
3192
+ "version": 13,
3295
3193
  "category": {
3296
3194
  "id": "connectors",
3297
3195
  "name": "Connectors"
@@ -3301,6 +3199,9 @@
3301
3199
  "value": "bpmn:StartEvent",
3302
3200
  "eventDefinition": "bpmn:MessageEventDefinition"
3303
3201
  },
3202
+ "engines": {
3203
+ "camunda": "^8.3"
3204
+ },
3304
3205
  "groups": [
3305
3206
  {
3306
3207
  "id": "endpoint",
@@ -3324,7 +3225,13 @@
3324
3225
  },
3325
3226
  {
3326
3227
  "id": "correlation",
3327
- "label": "Correlation"
3228
+ "label": "Correlation",
3229
+ "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
3230
+ },
3231
+ {
3232
+ "id": "deduplication",
3233
+ "label": "Deduplication",
3234
+ "tooltip": "Deduplication allows you to configure multiple inbound connector elements to reuse the same backend (consumer/thread/endpoint) by sharing the same deduplication ID."
3328
3235
  },
3329
3236
  {
3330
3237
  "id": "output",
@@ -3397,7 +3304,7 @@
3397
3304
  {
3398
3305
  "id": "inbound.shouldValidateHmac",
3399
3306
  "label": "HMAC authentication",
3400
- "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
3307
+ "description": "Choose whether HMAC verification is enabled. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#make-your-http-webhook-connector-for-receiving-messages-executable' target='_blank'>See documentation</a> and <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
3401
3308
  "optional": false,
3402
3309
  "value": "disabled",
3403
3310
  "group": "authentication",
@@ -3488,7 +3395,7 @@
3488
3395
  {
3489
3396
  "id": "inbound.hmacScopes",
3490
3397
  "label": "HMAC scopes",
3491
- "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/' target='_blank'>documentation</a>",
3398
+ "description": "Set HMAC scopes for calculating signature data. See <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/' target='_blank'>documentation</a>",
3492
3399
  "optional": true,
3493
3400
  "feel": "required",
3494
3401
  "group": "authentication",
@@ -3590,7 +3497,7 @@
3590
3497
  {
3591
3498
  "id": "inbound.auth.apiKeyLocator",
3592
3499
  "label": "API key locator",
3593
- "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
3500
+ "description": "A FEEL expression that extracts API key from the request. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#how-to-configure-api-key-authorization'>See documentation</a>",
3594
3501
  "optional": false,
3595
3502
  "value": "=split(request.headers.authorization, \" \")[2]",
3596
3503
  "constraints": {
@@ -3630,7 +3537,7 @@
3630
3537
  {
3631
3538
  "id": "inbound.auth.jwt.permissionsExpression",
3632
3539
  "label": "JWT role property expression",
3633
- "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
3540
+ "description": "Expression to extract the roles from the JWT token. <a href='https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#how-to-extract-roles-from-jwt-data'>See documentation</a>",
3634
3541
  "optional": false,
3635
3542
  "feel": "required",
3636
3543
  "group": "authorization",
@@ -3664,14 +3571,14 @@
3664
3571
  "type": "String"
3665
3572
  },
3666
3573
  {
3667
- "id": "inbound.responseBodyExpression",
3668
- "label": "Response body expression",
3669
- "description": "Specify condition and response",
3574
+ "id": "inbound.responseExpression",
3575
+ "label": "Response expression",
3576
+ "description": "Expression used to generate the HTTP response",
3670
3577
  "optional": true,
3671
3578
  "feel": "required",
3672
3579
  "group": "webhookResponse",
3673
3580
  "binding": {
3674
- "name": "inbound.responseBodyExpression",
3581
+ "name": "inbound.responseExpression",
3675
3582
  "type": "zeebe:property"
3676
3583
  },
3677
3584
  "type": "Text"
@@ -3702,6 +3609,18 @@
3702
3609
  },
3703
3610
  "type": "String"
3704
3611
  },
3612
+ {
3613
+ "id": "consumeUnmatchedEvents",
3614
+ "label": "Consume unmatched events",
3615
+ "value": true,
3616
+ "group": "activation",
3617
+ "binding": {
3618
+ "name": "consumeUnmatchedEvents",
3619
+ "type": "zeebe:property"
3620
+ },
3621
+ "tooltip": "Unmatched events are rejected by default, allowing the upstream service to handle the error. Check this box to consume unmatched events and return a success response",
3622
+ "type": "Boolean"
3623
+ },
3705
3624
  {
3706
3625
  "id": "correlationRequired",
3707
3626
  "label": "Subprocess correlation required",
@@ -3764,6 +3683,26 @@
3764
3683
  },
3765
3684
  "type": "String"
3766
3685
  },
3686
+ {
3687
+ "id": "messageTtl",
3688
+ "label": "Message TTL",
3689
+ "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
3690
+ "optional": true,
3691
+ "constraints": {
3692
+ "notEmpty": false,
3693
+ "pattern": {
3694
+ "value": "^(PT.*|)$",
3695
+ "message": "must be an ISO-8601 duration"
3696
+ }
3697
+ },
3698
+ "feel": "optional",
3699
+ "group": "correlation",
3700
+ "binding": {
3701
+ "name": "messageTtl",
3702
+ "type": "zeebe:property"
3703
+ },
3704
+ "type": "String"
3705
+ },
3767
3706
  {
3768
3707
  "id": "messageIdExpression",
3769
3708
  "label": "Message ID expression",
@@ -3789,6 +3728,70 @@
3789
3728
  },
3790
3729
  "type": "Hidden"
3791
3730
  },
3731
+ {
3732
+ "id": "deduplicationModeManualFlag",
3733
+ "label": "Manual mode",
3734
+ "description": "By default, similar connectors receive the same deduplication ID. Customize by activating manual mode",
3735
+ "value": false,
3736
+ "group": "deduplication",
3737
+ "binding": {
3738
+ "name": "deduplicationModeManualFlag",
3739
+ "type": "zeebe:property"
3740
+ },
3741
+ "type": "Boolean"
3742
+ },
3743
+ {
3744
+ "id": "deduplicationId",
3745
+ "label": "Deduplication ID",
3746
+ "constraints": {
3747
+ "notEmpty": true,
3748
+ "pattern": {
3749
+ "value": "^[a-zA-Z0-9_-]+$",
3750
+ "message": "can only contain alphanumeric characters, dashes, and underscores"
3751
+ }
3752
+ },
3753
+ "group": "deduplication",
3754
+ "binding": {
3755
+ "name": "deduplicationId",
3756
+ "type": "zeebe:property"
3757
+ },
3758
+ "condition": {
3759
+ "property": "deduplicationModeManualFlag",
3760
+ "equals": true,
3761
+ "type": "simple"
3762
+ },
3763
+ "type": "String"
3764
+ },
3765
+ {
3766
+ "id": "deduplicationModeManual",
3767
+ "value": "MANUAL",
3768
+ "group": "deduplication",
3769
+ "binding": {
3770
+ "name": "deduplicationMode",
3771
+ "type": "zeebe:property"
3772
+ },
3773
+ "condition": {
3774
+ "property": "deduplicationId",
3775
+ "isActive": true,
3776
+ "type": "simple"
3777
+ },
3778
+ "type": "Hidden"
3779
+ },
3780
+ {
3781
+ "id": "deduplicationModeAuto",
3782
+ "value": "AUTO",
3783
+ "group": "deduplication",
3784
+ "binding": {
3785
+ "name": "deduplicationMode",
3786
+ "type": "zeebe:property"
3787
+ },
3788
+ "condition": {
3789
+ "property": "deduplicationId",
3790
+ "isActive": false,
3791
+ "type": "simple"
3792
+ },
3793
+ "type": "Hidden"
3794
+ },
3792
3795
  {
3793
3796
  "id": "resultVariable",
3794
3797
  "label": "Result variable",
@@ -3815,9 +3818,6 @@
3815
3818
  ],
3816
3819
  "icon": {
3817
3820
  "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
3818
- },
3819
- "engines": {
3820
- "camunda": "^8.5"
3821
3821
  }
3822
3822
  }
3823
3823
  ]