@camunda/connectors-element-templates 1.0.17 → 1.0.18

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 (125) hide show
  1. package/package.json +2 -2
  2. package/src/connectors.js +12 -2
  3. package/src/element-templates/agenticai-a2a-client-outbound-connector.json +2 -5
  4. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-intermediate.json +6 -6
  5. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-receive.json +6 -6
  6. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-intermediate.json +6 -6
  7. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-receive.json +6 -6
  8. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +10 -13
  9. package/src/element-templates/agenticai-aiagent-job-worker.json +3774 -33
  10. package/src/element-templates/agenticai-aiagent-outbound-connector.json +7968 -4288
  11. package/src/element-templates/agenticai-mcp-client-outbound-connector.json +2 -5
  12. package/src/element-templates/agenticai-mcp-message-start-event.json +122 -0
  13. package/src/element-templates/agenticai-mcp-remote-client-outbound-connector.json +2 -5
  14. package/src/element-templates/asana-connector.json +718 -7
  15. package/src/element-templates/automation-anywhere-outbound-connector.json +1175 -1171
  16. package/src/element-templates/aws-bedrock-agentcore-long-term-memory-outbound-connector.json +431 -0
  17. package/src/element-templates/aws-bedrock-agentcore-runtime-outbound-connector.json +285 -0
  18. package/src/element-templates/aws-bedrock-codeinterpreter-outbound-connector.json +341 -0
  19. package/src/element-templates/aws-bedrock-knowledgebase-outbound-connector.json +316 -0
  20. package/src/element-templates/aws-bedrock-outbound-connector.json +775 -38
  21. package/src/element-templates/aws-comprehend-outbound-connector.json +10 -5
  22. package/src/element-templates/aws-dynamodb-outbound-connector.json +1407 -1407
  23. package/src/element-templates/aws-eventbridge-connector-boundary.json +370 -5
  24. package/src/element-templates/aws-eventbridge-connector-intermediate.json +400 -35
  25. package/src/element-templates/aws-eventbridge-connector-message-start.json +399 -0
  26. package/src/element-templates/aws-eventbridge-connector-receive.json +364 -0
  27. package/src/element-templates/aws-eventbridge-connector-start-event.json +317 -0
  28. package/src/element-templates/aws-eventbridge-outbound-connector.json +300 -295
  29. package/src/element-templates/aws-lambda-outbound-connector.json +472 -468
  30. package/src/element-templates/aws-s3-outbound-connector.json +656 -15
  31. package/src/element-templates/aws-sagemaker-outbound-connector.json +56 -52
  32. package/src/element-templates/aws-sns-inbound-boundary.json +230 -223
  33. package/src/element-templates/aws-sns-inbound-intermediate.json +486 -479
  34. package/src/element-templates/aws-sns-inbound-message-start.json +240 -233
  35. package/src/element-templates/aws-sns-inbound-receive.json +13 -6
  36. package/src/element-templates/aws-sns-inbound-start-event.json +139 -132
  37. package/src/element-templates/aws-sns-outbound-connector.json +390 -386
  38. package/src/element-templates/aws-sqs-boundary-connector.json +472 -468
  39. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +388 -384
  40. package/src/element-templates/aws-sqs-outbound-connector.json +402 -400
  41. package/src/element-templates/aws-sqs-receive-connector.json +15 -11
  42. package/src/element-templates/aws-sqs-start-event-connector.json +571 -563
  43. package/src/element-templates/aws-sqs-start-message.json +866 -862
  44. package/src/element-templates/aws-textract-outbound-connector.json +358 -354
  45. package/src/element-templates/azure-blobstorage-outbound-connector.json +668 -11
  46. package/src/element-templates/azure-open-ai-connector.json +1325 -0
  47. package/src/element-templates/blue-prism-connector.json +595 -50
  48. package/src/element-templates/box-outbound-connector.json +924 -12
  49. package/src/element-templates/csv-outbound-connector.json +39 -31
  50. package/src/element-templates/easy-post-connector.json +1088 -120
  51. package/src/element-templates/email-inbound-connector-boundary.json +16 -8
  52. package/src/element-templates/email-inbound-connector-intermediate.json +16 -8
  53. package/src/element-templates/email-inbound-connector-receive.json +564 -0
  54. package/src/element-templates/email-message-start-event-connector.json +16 -8
  55. package/src/element-templates/email-outbound-connector.json +2114 -241
  56. package/src/element-templates/embeddings-vector-database-outbound-connector.json +513 -516
  57. package/src/element-templates/github-connector.json +12587 -9052
  58. package/src/element-templates/github-webhook-connector-boundary.json +27 -29
  59. package/src/element-templates/github-webhook-connector-intermediate.json +40 -42
  60. package/src/element-templates/github-webhook-connector-message-start.json +19 -21
  61. package/src/element-templates/github-webhook-connector-receive.json +13 -15
  62. package/src/element-templates/github-webhook-connector-start-event.json +11 -13
  63. package/src/element-templates/gitlab-connector.json +4756 -3124
  64. package/src/element-templates/google-cloud-storage-outbound-connector.json +561 -12
  65. package/src/element-templates/google-drive-outbound-connector.json +1285 -665
  66. package/src/element-templates/google-gemini-outbound-connector.json +117 -109
  67. package/src/element-templates/google-maps-platform-connector.json +1055 -26
  68. package/src/element-templates/google-sheets-outbound-connector.json +2413 -1419
  69. package/src/element-templates/graphql-outbound-connector.json +1136 -1127
  70. package/src/element-templates/http-json-connector.json +2779 -2129
  71. package/src/element-templates/http-polling-boundary-catch-event-connector.json +1483 -1472
  72. package/src/element-templates/http-polling-connector.json +746 -735
  73. package/src/element-templates/hubspot-outbound-connector.json +2376 -30
  74. package/src/element-templates/hugging-face-connector.json +249 -18
  75. package/src/element-templates/jdbc-outbound-connector.json +62 -48
  76. package/src/element-templates/kafka-inbound-connector-boundary.json +528 -519
  77. package/src/element-templates/kafka-inbound-connector-intermediate.json +729 -720
  78. package/src/element-templates/kafka-inbound-connector-receive.json +15 -6
  79. package/src/element-templates/kafka-inbound-connector-start-message.json +628 -619
  80. package/src/element-templates/kafka-inbound-connector.json +240 -240
  81. package/src/element-templates/kafka-outbound-connector.json +666 -660
  82. package/src/element-templates/microsoft-o365-email-boundary-event-connector.json +18 -6
  83. package/src/element-templates/microsoft-o365-email-intermediate-catch-event-connector.json +18 -6
  84. package/src/element-templates/microsoft-o365-email-message-start-event-connector.json +18 -6
  85. package/src/element-templates/microsoft-office365-mail-connector.json +883 -0
  86. package/src/element-templates/microsoft-teams-outbound-connector.json +4161 -1997
  87. package/src/element-templates/openai-connector.json +579 -116
  88. package/src/element-templates/operate-connector.json +1219 -67
  89. package/src/element-templates/power-automate-connector.json +604 -12
  90. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +863 -854
  91. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +926 -917
  92. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +469 -460
  93. package/src/element-templates/rabbitmq-inbound-connector-receive.json +15 -6
  94. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +601 -592
  95. package/src/element-templates/rabbitmq-outbound-connector.json +634 -628
  96. package/src/element-templates/rpa-connector.json +346 -0
  97. package/src/element-templates/salesforce-connector.json +553 -9
  98. package/src/element-templates/send-message-connector-intermediate-throw-event.json +10 -5
  99. package/src/element-templates/send-message-connector-message-end-event.json +10 -5
  100. package/src/element-templates/send-message-connector-send-task.json +10 -5
  101. package/src/element-templates/sendgrid-outbound-connector.json +1380 -772
  102. package/src/element-templates/servicenow-connector.json +971 -3
  103. package/src/element-templates/servicenow-flow-starter-connector.json +8 -3
  104. package/src/element-templates/servicenow-incident-connector.json +980 -3
  105. package/src/element-templates/slack-inbound-boundary.json +389 -91
  106. package/src/element-templates/slack-inbound-intermediate.json +393 -95
  107. package/src/element-templates/slack-inbound-message-start.json +566 -236
  108. package/src/element-templates/slack-inbound-receive.json +297 -0
  109. package/src/element-templates/slack-inbound-start-event.json +127 -122
  110. package/src/element-templates/slack-outbound-connector.json +2613 -915
  111. package/src/element-templates/soap-outbound-connector.json +812 -2
  112. package/src/element-templates/twilio-connector.json +1514 -34
  113. package/src/element-templates/twilio-webhook-boundary-connector.json +29 -20
  114. package/src/element-templates/twilio-webhook-connector.json +238 -8
  115. package/src/element-templates/twilio-webhook-intermediate-connector.json +39 -30
  116. package/src/element-templates/twilio-webhook-message-start-connector.json +312 -0
  117. package/src/element-templates/twilio-webhook-receive-connector.json +11 -2
  118. package/src/element-templates/uipath-connector.json +607 -15
  119. package/src/element-templates/webhook-connector-boundary.json +1218 -1208
  120. package/src/element-templates/webhook-connector-intermediate.json +1837 -1827
  121. package/src/element-templates/webhook-connector-receive.json +55 -45
  122. package/src/element-templates/webhook-connector-start-event.json +1299 -1292
  123. package/src/element-templates/webhook-connector-start-message.json +711 -701
  124. package/src/element-templates/whatsapp-connector.json +339 -5
  125. package/src/element-templates/http-connector.json.json +0 -654
@@ -4,11 +4,17 @@
4
4
  "name": "Webhook Boundary Event Connector",
5
5
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
6
6
  "description": "Configure webhook to receive callbacks",
7
- "metadata": {
8
- "keywords": []
9
- },
7
+ "keywords": [
8
+ "receive webhook",
9
+ "HTTP trigger",
10
+ "event received",
11
+ "inbound event",
12
+ "webhook trigger",
13
+ "HTTP callback",
14
+ "listen for event"
15
+ ],
10
16
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
11
- "version": 13,
17
+ "version": 14,
12
18
  "category": {
13
19
  "id": "connectors",
14
20
  "name": "Connectors"
@@ -42,6 +48,10 @@
42
48
  "id": "activation",
43
49
  "label": "Activation"
44
50
  },
51
+ {
52
+ "id": "synchronousResponse",
53
+ "label": "Response mode"
54
+ },
45
55
  {
46
56
  "id": "correlation",
47
57
  "label": "Correlation",
@@ -440,6 +450,29 @@
440
450
  "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
451
  "type": "Boolean"
442
452
  },
453
+ {
454
+ "id": "synchronousResponse",
455
+ "label": "Response mode",
456
+ "description": "Synchronous or Asynchronous <a href=\"https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#response-mode\" target=\"_blank\">response handling</a>",
457
+ "value": "false",
458
+ "group": "synchronousResponse",
459
+ "binding": {
460
+ "name": "synchronousResponse",
461
+ "type": "zeebe:property"
462
+ },
463
+ "tooltip": "Select synchronous to wait for the result of the correlation. This is either the result of the created process or the process instance key that matched the correlated message subscription. Select asynchronous to trigger the correlation and return immediately without waiting for a result. This affects the data available in the <a href=\"https://docs.camunda.io/docs/components/connectors/connectors/protocol/http-webhook/#use-the-correlation-object\">correlation</a> object for the response expression.",
464
+ "type": "Dropdown",
465
+ "choices": [
466
+ {
467
+ "name": "Asynchronous",
468
+ "value": "false"
469
+ },
470
+ {
471
+ "name": "Synchronous",
472
+ "value": "true"
473
+ }
474
+ ]
475
+ },
443
476
  {
444
477
  "id": "correlationKeyProcess",
445
478
  "label": "Correlation key (process)",
@@ -481,6 +514,11 @@
481
514
  "name": "messageIdExpression",
482
515
  "type": "zeebe:property"
483
516
  },
517
+ "condition": {
518
+ "property": "synchronousResponse",
519
+ "equals": "false",
520
+ "type": "simple"
521
+ },
484
522
  "type": "String"
485
523
  },
486
524
  {
@@ -501,19 +539,27 @@
501
539
  "name": "messageTtl",
502
540
  "type": "zeebe:property"
503
541
  },
542
+ "condition": {
543
+ "property": "synchronousResponse",
544
+ "equals": "false",
545
+ "type": "simple"
546
+ },
504
547
  "type": "String"
505
548
  },
506
549
  {
507
550
  "id": "messageNameUuid",
551
+ "label": "Message name",
508
552
  "generatedValue": {
509
553
  "type": "uuid"
510
554
  },
555
+ "feel": "optional",
511
556
  "group": "correlation",
512
557
  "binding": {
513
558
  "name": "name",
514
559
  "type": "bpmn:Message#property"
515
560
  },
516
- "type": "Hidden"
561
+ "tooltip": "By default, this is an auto-generated random UUID. We recommend using a unique message name for each connector element in the diagram. Override to set a custom message name. Learn more about <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-subscriptions\">message subscriptions</a> that power inbound connectors.",
562
+ "type": "String"
517
563
  },
518
564
  {
519
565
  "id": "deduplicationModeManualFlag",
@@ -582,7 +628,7 @@
582
628
  {
583
629
  "id": "resultVariable",
584
630
  "label": "Result variable",
585
- "description": "Name of variable to store the response in",
631
+ "description": "Name of variable to store the response in. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-variable\" target=\"_blank\">documentation</a>.",
586
632
  "group": "output",
587
633
  "binding": {
588
634
  "name": "resultVariable",
@@ -593,7 +639,8 @@
593
639
  {
594
640
  "id": "resultExpression",
595
641
  "label": "Result expression",
596
- "description": "Expression to map the response into process variables",
642
+ "description": "Expression to map the response into process variables. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#result-expression\" target=\"_blank\">documentation</a>.",
643
+ "value": "{\n myRequestBody: request.body\n // Use FEEL to extract values, e.g.,:\n // myMessage: request.body.message\n}",
597
644
  "feel": "required",
598
645
  "group": "output",
599
646
  "binding": {
@@ -612,11 +659,8 @@
612
659
  "name": "Webhook Boundary Event Connector",
613
660
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
614
661
  "description": "Configure webhook to receive callbacks",
615
- "metadata": {
616
- "keywords": []
617
- },
618
662
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
619
- "version": 12,
663
+ "version": 11,
620
664
  "category": {
621
665
  "id": "connectors",
622
666
  "name": "Connectors"
@@ -723,7 +767,7 @@
723
767
  {
724
768
  "id": "inbound.shouldValidateHmac",
725
769
  "label": "HMAC authentication",
726
- "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",
770
+ "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/webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
727
771
  "optional": false,
728
772
  "value": "disabled",
729
773
  "group": "authentication",
@@ -1139,18 +1183,18 @@
1139
1183
  "type": "Text"
1140
1184
  }
1141
1185
  ],
1142
- "engines": {
1143
- "camunda": "^8.3"
1144
- },
1145
1186
  "icon": {
1146
1187
  "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
1188
+ },
1189
+ "engines": {
1190
+ "camunda": "^8.6"
1147
1191
  }
1148
1192
  },
1149
1193
  {
1150
1194
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1151
1195
  "name": "Webhook Boundary Event Connector",
1152
1196
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
1153
- "version": 3,
1197
+ "version": 2,
1154
1198
  "description": "Configure webhook to receive callbacks",
1155
1199
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
1156
1200
  "category": {
@@ -1259,11 +1303,7 @@
1259
1303
  },
1260
1304
  "description": "The webhook ID is a part of the URL",
1261
1305
  "constraints": {
1262
- "notEmpty": true,
1263
- "pattern": {
1264
- "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
1265
- "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
1266
- }
1306
+ "notEmpty": true
1267
1307
  }
1268
1308
  },
1269
1309
  {
@@ -1618,16 +1658,16 @@
1618
1658
  "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"
1619
1659
  },
1620
1660
  "engines": {
1621
- "camunda": "^8.5"
1661
+ "camunda": "^8.4"
1622
1662
  }
1623
1663
  },
1624
1664
  {
1625
1665
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1626
1666
  "name": "Webhook Boundary Event Connector",
1627
1667
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
1668
+ "version": 1,
1628
1669
  "description": "Configure webhook to receive callbacks",
1629
1670
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
1630
- "version": 10,
1631
1671
  "category": {
1632
1672
  "id": "connectors",
1633
1673
  "name": "Connectors"
@@ -1650,43 +1690,52 @@
1650
1690
  "id": "authorization",
1651
1691
  "label": "Authorization"
1652
1692
  },
1653
- {
1654
- "id": "webhookResponse",
1655
- "label": "Webhook response"
1656
- },
1657
1693
  {
1658
1694
  "id": "activation",
1659
1695
  "label": "Activation"
1660
1696
  },
1661
1697
  {
1662
- "id": "correlation",
1663
- "label": "Correlation"
1698
+ "id": "variable-mapping",
1699
+ "label": "Variable mapping"
1664
1700
  },
1665
1701
  {
1666
- "id": "output",
1667
- "label": "Output mapping"
1702
+ "id": "webhookResponse",
1703
+ "label": "Webhook response"
1668
1704
  }
1669
1705
  ],
1670
1706
  "properties": [
1671
1707
  {
1708
+ "type": "Hidden",
1672
1709
  "value": "io.camunda:webhook:1",
1673
1710
  "binding": {
1674
- "name": "inbound.type",
1675
- "type": "zeebe:property"
1711
+ "type": "zeebe:property",
1712
+ "name": "inbound.type"
1713
+ }
1714
+ },
1715
+ {
1716
+ "type": "Hidden",
1717
+ "generatedValue": {
1718
+ "type": "uuid"
1676
1719
  },
1677
- "type": "Hidden"
1720
+ "binding": {
1721
+ "type": "bpmn:Message#property",
1722
+ "name": "name"
1723
+ }
1678
1724
  },
1679
1725
  {
1680
- "id": "inbound.method",
1726
+ "type": "Hidden",
1727
+ "value": "ConfigurableInboundWebhook",
1728
+ "binding": {
1729
+ "type": "zeebe:property",
1730
+ "name": "inbound.subtype"
1731
+ }
1732
+ },
1733
+ {
1734
+ "id": "webhookMethod",
1681
1735
  "label": "Webhook method",
1736
+ "group": "endpoint",
1682
1737
  "description": "Select HTTP method",
1683
- "optional": false,
1684
1738
  "value": "any",
1685
- "group": "endpoint",
1686
- "binding": {
1687
- "name": "inbound.method",
1688
- "type": "zeebe:property"
1689
- },
1690
1739
  "type": "Dropdown",
1691
1740
  "choices": [
1692
1741
  {
@@ -1694,53 +1743,46 @@
1694
1743
  "value": "any"
1695
1744
  },
1696
1745
  {
1697
- "name": "GET",
1746
+ "name": "Get",
1698
1747
  "value": "get"
1699
1748
  },
1700
1749
  {
1701
- "name": "POST",
1750
+ "name": "Post",
1702
1751
  "value": "post"
1703
1752
  },
1704
1753
  {
1705
- "name": "PUT",
1754
+ "name": "Put",
1706
1755
  "value": "put"
1707
1756
  },
1708
1757
  {
1709
- "name": "DELETE",
1758
+ "name": "Delete",
1710
1759
  "value": "delete"
1711
1760
  }
1712
- ]
1761
+ ],
1762
+ "binding": {
1763
+ "type": "zeebe:property",
1764
+ "name": "inbound.method"
1765
+ }
1713
1766
  },
1714
1767
  {
1715
- "id": "inbound.context",
1716
1768
  "label": "Webhook ID",
1717
- "description": "The webhook ID is a part of the URL",
1718
- "optional": false,
1719
- "constraints": {
1720
- "notEmpty": true,
1721
- "pattern": {
1722
- "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
1723
- "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
1724
- }
1725
- },
1769
+ "type": "String",
1726
1770
  "group": "endpoint",
1727
1771
  "binding": {
1728
- "name": "inbound.context",
1729
- "type": "zeebe:property"
1772
+ "type": "zeebe:property",
1773
+ "name": "inbound.context"
1730
1774
  },
1731
- "type": "String"
1775
+ "description": "The webhook ID is a part of the URL",
1776
+ "constraints": {
1777
+ "notEmpty": true
1778
+ }
1732
1779
  },
1733
1780
  {
1734
- "id": "inbound.shouldValidateHmac",
1781
+ "id": "shouldValidateHmac",
1735
1782
  "label": "HMAC authentication",
1783
+ "group": "authentication",
1736
1784
  "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",
1737
- "optional": false,
1738
1785
  "value": "disabled",
1739
- "group": "authentication",
1740
- "binding": {
1741
- "name": "inbound.shouldValidateHmac",
1742
- "type": "zeebe:property"
1743
- },
1744
1786
  "type": "Dropdown",
1745
1787
  "choices": [
1746
1788
  {
@@ -1751,60 +1793,47 @@
1751
1793
  "name": "Disabled",
1752
1794
  "value": "disabled"
1753
1795
  }
1754
- ]
1796
+ ],
1797
+ "binding": {
1798
+ "type": "zeebe:property",
1799
+ "name": "inbound.shouldValidateHmac"
1800
+ }
1755
1801
  },
1756
1802
  {
1757
- "id": "inbound.hmacSecret",
1758
1803
  "label": "HMAC secret key",
1759
1804
  "description": "Shared secret key",
1760
- "optional": true,
1761
- "feel": "optional",
1805
+ "type": "String",
1762
1806
  "group": "authentication",
1807
+ "optional": true,
1763
1808
  "binding": {
1764
- "name": "inbound.hmacSecret",
1765
- "type": "zeebe:property"
1809
+ "type": "zeebe:property",
1810
+ "name": "inbound.hmacSecret"
1766
1811
  },
1767
1812
  "condition": {
1768
- "property": "inbound.shouldValidateHmac",
1769
- "equals": "enabled",
1770
- "type": "simple"
1771
- },
1772
- "type": "String"
1813
+ "property": "shouldValidateHmac",
1814
+ "equals": "enabled"
1815
+ }
1773
1816
  },
1774
1817
  {
1775
- "id": "inbound.hmacHeader",
1776
1818
  "label": "HMAC header",
1777
1819
  "description": "Name of header attribute that will contain the HMAC value",
1778
- "optional": true,
1779
- "feel": "optional",
1820
+ "type": "String",
1780
1821
  "group": "authentication",
1822
+ "optional": true,
1781
1823
  "binding": {
1782
- "name": "inbound.hmacHeader",
1783
- "type": "zeebe:property"
1824
+ "type": "zeebe:property",
1825
+ "name": "inbound.hmacHeader"
1784
1826
  },
1785
1827
  "condition": {
1786
- "property": "inbound.shouldValidateHmac",
1787
- "equals": "enabled",
1788
- "type": "simple"
1789
- },
1790
- "type": "String"
1828
+ "property": "shouldValidateHmac",
1829
+ "equals": "enabled"
1830
+ }
1791
1831
  },
1792
1832
  {
1793
- "id": "inbound.hmacAlgorithm",
1794
1833
  "label": "HMAC algorithm",
1834
+ "group": "authentication",
1795
1835
  "description": "Choose HMAC algorithm",
1796
- "optional": false,
1797
1836
  "value": "sha_256",
1798
- "group": "authentication",
1799
- "binding": {
1800
- "name": "inbound.hmacAlgorithm",
1801
- "type": "zeebe:property"
1802
- },
1803
- "condition": {
1804
- "property": "inbound.shouldValidateHmac",
1805
- "equals": "enabled",
1806
- "type": "simple"
1807
- },
1808
1837
  "type": "Dropdown",
1809
1838
  "choices": [
1810
1839
  {
@@ -1819,309 +1848,264 @@
1819
1848
  "name": "SHA-512",
1820
1849
  "value": "sha_512"
1821
1850
  }
1822
- ]
1851
+ ],
1852
+ "binding": {
1853
+ "type": "zeebe:property",
1854
+ "name": "inbound.hmacAlgorithm"
1855
+ },
1856
+ "condition": {
1857
+ "property": "shouldValidateHmac",
1858
+ "equals": "enabled"
1859
+ }
1823
1860
  },
1824
1861
  {
1825
- "id": "inbound.hmacScopes",
1826
1862
  "label": "HMAC scopes",
1863
+ "group": "authentication",
1827
1864
  "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>",
1828
- "optional": true,
1829
1865
  "feel": "required",
1830
- "group": "authentication",
1866
+ "type": "String",
1867
+ "optional": true,
1831
1868
  "binding": {
1832
- "name": "inbound.hmacScopes",
1833
- "type": "zeebe:property"
1869
+ "type": "zeebe:property",
1870
+ "name": "inbound.hmacScopes"
1834
1871
  },
1835
1872
  "condition": {
1836
- "property": "inbound.shouldValidateHmac",
1837
- "equals": "enabled",
1838
- "type": "simple"
1839
- },
1840
- "type": "String"
1873
+ "property": "shouldValidateHmac",
1874
+ "equals": "enabled"
1875
+ }
1841
1876
  },
1842
1877
  {
1843
- "id": "inbound.auth.type",
1878
+ "id": "authorizationType",
1844
1879
  "label": "Authorization type",
1845
- "description": "Choose the authorization type",
1846
- "value": "NONE",
1847
1880
  "group": "authorization",
1848
- "binding": {
1849
- "name": "inbound.auth.type",
1850
- "type": "zeebe:property"
1851
- },
1881
+ "description": "Choose the authorization type.",
1882
+ "value": "NONE",
1852
1883
  "type": "Dropdown",
1853
1884
  "choices": [
1854
1885
  {
1855
1886
  "name": "None",
1856
1887
  "value": "NONE"
1857
1888
  },
1889
+ {
1890
+ "name": "JWT",
1891
+ "value": "JWT"
1892
+ },
1858
1893
  {
1859
1894
  "name": "Basic",
1860
1895
  "value": "BASIC"
1861
1896
  },
1862
1897
  {
1863
- "name": "API key",
1898
+ "name": "API Key",
1864
1899
  "value": "APIKEY"
1865
- },
1866
- {
1867
- "name": "JWT",
1868
- "value": "JWT"
1869
1900
  }
1870
- ]
1901
+ ],
1902
+ "binding": {
1903
+ "type": "zeebe:property",
1904
+ "name": "inbound.auth.type"
1905
+ }
1871
1906
  },
1872
1907
  {
1873
- "id": "inbound.auth.username",
1874
- "label": "Username",
1875
- "description": "Username for basic authentication",
1876
- "optional": false,
1877
- "feel": "optional",
1908
+ "label": "JWK url",
1909
+ "description": "Well-known url of JWKs",
1910
+ "type": "String",
1878
1911
  "group": "authorization",
1912
+ "feel": "optional",
1913
+ "optional": true,
1879
1914
  "binding": {
1880
- "name": "inbound.auth.username",
1881
- "type": "zeebe:property"
1915
+ "type": "zeebe:property",
1916
+ "name": "inbound.auth.jwt.jwkUrl"
1882
1917
  },
1883
1918
  "condition": {
1884
- "property": "inbound.auth.type",
1885
- "equals": "BASIC",
1886
- "type": "simple"
1887
- },
1888
- "type": "String"
1919
+ "property": "authorizationType",
1920
+ "equals": "JWT"
1921
+ }
1889
1922
  },
1890
1923
  {
1891
- "id": "inbound.auth.password",
1892
- "label": "Password",
1893
- "description": "Password for basic authentication",
1894
- "optional": false,
1895
- "feel": "optional",
1924
+ "label": "JWT role property expression",
1925
+ "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>",
1926
+ "type": "String",
1896
1927
  "group": "authorization",
1928
+ "feel": "required",
1929
+ "optional": true,
1897
1930
  "binding": {
1898
- "name": "inbound.auth.password",
1899
- "type": "zeebe:property"
1931
+ "type": "zeebe:property",
1932
+ "name": "inbound.auth.jwt.permissionsExpression"
1900
1933
  },
1901
1934
  "condition": {
1902
- "property": "inbound.auth.type",
1903
- "equals": "BASIC",
1904
- "type": "simple"
1905
- },
1906
- "type": "String"
1935
+ "property": "authorizationType",
1936
+ "equals": "JWT"
1937
+ }
1907
1938
  },
1908
1939
  {
1909
- "id": "inbound.auth.apiKey",
1910
- "label": "API key",
1911
- "description": "Expected API key",
1912
- "optional": false,
1913
- "feel": "optional",
1940
+ "label": "Required roles",
1941
+ "description": "List of roles to test JWT roles against",
1942
+ "type": "String",
1914
1943
  "group": "authorization",
1944
+ "feel": "required",
1945
+ "optional": true,
1915
1946
  "binding": {
1916
- "name": "inbound.auth.apiKey",
1917
- "type": "zeebe:property"
1947
+ "type": "zeebe:property",
1948
+ "name": "inbound.auth.jwt.requiredPermissions"
1918
1949
  },
1919
1950
  "condition": {
1920
- "property": "inbound.auth.type",
1921
- "equals": "APIKEY",
1922
- "type": "simple"
1923
- },
1924
- "type": "String"
1951
+ "property": "authorizationType",
1952
+ "equals": "JWT"
1953
+ }
1925
1954
  },
1926
1955
  {
1927
- "id": "inbound.auth.apiKeyLocator",
1928
- "label": "API key locator",
1929
- "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>",
1930
- "optional": false,
1931
- "value": "=split(request.headers.authorization, \" \")[2]",
1932
- "constraints": {
1933
- "notEmpty": true
1934
- },
1935
- "feel": "required",
1956
+ "label": "Username",
1957
+ "description": "Username for basic authentication",
1958
+ "type": "String",
1936
1959
  "group": "authorization",
1960
+ "feel": "optional",
1937
1961
  "binding": {
1938
- "name": "inbound.auth.apiKeyLocator",
1939
- "type": "zeebe:property"
1962
+ "type": "zeebe:property",
1963
+ "name": "inbound.auth.username"
1940
1964
  },
1941
1965
  "condition": {
1942
- "property": "inbound.auth.type",
1943
- "equals": "APIKEY",
1944
- "type": "simple"
1966
+ "property": "authorizationType",
1967
+ "equals": "BASIC"
1945
1968
  },
1946
- "type": "String"
1969
+ "constraints": {
1970
+ "notEmpty": true
1971
+ }
1947
1972
  },
1948
1973
  {
1949
- "id": "inbound.auth.jwt.jwkUrl",
1950
- "label": "JWK URL",
1951
- "description": "Well-known URL of JWKs",
1952
- "optional": false,
1953
- "feel": "optional",
1974
+ "label": "Password",
1975
+ "description": "Password for basic authentication",
1976
+ "type": "String",
1954
1977
  "group": "authorization",
1978
+ "feel": "optional",
1955
1979
  "binding": {
1956
- "name": "inbound.auth.jwt.jwkUrl",
1957
- "type": "zeebe:property"
1980
+ "type": "zeebe:property",
1981
+ "name": "inbound.auth.password"
1958
1982
  },
1959
1983
  "condition": {
1960
- "property": "inbound.auth.type",
1961
- "equals": "JWT",
1962
- "type": "simple"
1984
+ "property": "authorizationType",
1985
+ "equals": "BASIC"
1963
1986
  },
1964
- "type": "String"
1987
+ "constraints": {
1988
+ "notEmpty": true
1989
+ }
1965
1990
  },
1966
1991
  {
1967
- "id": "inbound.auth.jwt.permissionsExpression",
1968
- "label": "JWT role property expression",
1969
- "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>",
1970
- "optional": false,
1971
- "feel": "required",
1992
+ "label": "API Key",
1993
+ "description": "Expected API key",
1994
+ "type": "String",
1972
1995
  "group": "authorization",
1996
+ "feel": "optional",
1973
1997
  "binding": {
1974
- "name": "inbound.auth.jwt.permissionsExpression",
1975
- "type": "zeebe:property"
1998
+ "type": "zeebe:property",
1999
+ "name": "inbound.auth.apiKey"
1976
2000
  },
1977
2001
  "condition": {
1978
- "property": "inbound.auth.type",
1979
- "equals": "JWT",
1980
- "type": "simple"
2002
+ "property": "authorizationType",
2003
+ "equals": "APIKEY"
1981
2004
  },
1982
- "type": "String"
2005
+ "constraints": {
2006
+ "notEmpty": true
2007
+ }
1983
2008
  },
1984
2009
  {
1985
- "id": "inbound.auth.jwt.requiredPermissions",
1986
- "label": "Required roles",
1987
- "description": "List of roles to test JWT roles against",
1988
- "optional": false,
1989
- "feel": "required",
2010
+ "label": "API Key locator",
2011
+ "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>",
2012
+ "type": "String",
1990
2013
  "group": "authorization",
2014
+ "feel": "required",
1991
2015
  "binding": {
1992
- "name": "inbound.auth.jwt.requiredPermissions",
1993
- "type": "zeebe:property"
2016
+ "type": "zeebe:property",
2017
+ "name": "inbound.auth.apiKeyLocator"
1994
2018
  },
1995
2019
  "condition": {
1996
- "property": "inbound.auth.type",
1997
- "equals": "JWT",
1998
- "type": "simple"
2020
+ "property": "authorizationType",
2021
+ "equals": "APIKEY"
1999
2022
  },
2000
- "type": "String"
2023
+ "constraints": {
2024
+ "notEmpty": true
2025
+ },
2026
+ "value": "=split(request.headers.authorization, \" \")[2]"
2001
2027
  },
2002
2028
  {
2003
- "id": "inbound.responseBodyExpression",
2004
- "label": "Response body expression",
2005
- "description": "Specify condition and response",
2006
- "optional": true,
2029
+ "label": "Correlation key (process)",
2030
+ "type": "String",
2031
+ "group": "activation",
2007
2032
  "feel": "required",
2008
- "group": "webhookResponse",
2033
+ "description": "Sets up the correlation key from process variables",
2009
2034
  "binding": {
2010
- "name": "inbound.responseBodyExpression",
2011
- "type": "zeebe:property"
2035
+ "type": "bpmn:Message#zeebe:subscription#property",
2036
+ "name": "correlationKey"
2012
2037
  },
2013
- "type": "Text"
2038
+ "constraints": {
2039
+ "notEmpty": true
2040
+ }
2014
2041
  },
2015
2042
  {
2016
- "id": "inbound.verificationExpression",
2017
- "label": "One time verification response expression",
2018
- "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>",
2019
- "optional": true,
2043
+ "label": "Correlation key (payload)",
2044
+ "type": "String",
2045
+ "group": "activation",
2020
2046
  "feel": "required",
2021
- "group": "webhookResponse",
2022
2047
  "binding": {
2023
- "name": "inbound.verificationExpression",
2024
- "type": "zeebe:property"
2048
+ "type": "zeebe:property",
2049
+ "name": "correlationKeyExpression"
2025
2050
  },
2026
- "type": "Text"
2051
+ "description": "Extracts the correlation key from the incoming message payload",
2052
+ "constraints": {
2053
+ "notEmpty": true
2054
+ }
2027
2055
  },
2028
2056
  {
2029
- "id": "activationCondition",
2030
- "label": "Activation condition",
2031
- "description": "Condition under which the Connector triggers. Leave empty to catch all events",
2032
- "optional": true,
2033
- "feel": "required",
2057
+ "label": "Condition",
2058
+ "type": "String",
2034
2059
  "group": "activation",
2060
+ "feel": "required",
2061
+ "optional": true,
2035
2062
  "binding": {
2036
- "name": "activationCondition",
2037
- "type": "zeebe:property"
2063
+ "type": "zeebe:property",
2064
+ "name": "activationCondition"
2038
2065
  },
2039
- "type": "String"
2066
+ "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>"
2040
2067
  },
2041
2068
  {
2042
- "id": "correlationKeyProcess",
2043
- "label": "Correlation key (process)",
2044
- "description": "Sets up the correlation key from process variables",
2045
- "constraints": {
2046
- "notEmpty": true
2047
- },
2048
- "feel": "required",
2049
- "group": "correlation",
2069
+ "label": "Result variable",
2070
+ "type": "String",
2071
+ "group": "variable-mapping",
2072
+ "optional": true,
2050
2073
  "binding": {
2051
- "name": "correlationKey",
2052
- "type": "bpmn:Message#zeebe:subscription#property"
2074
+ "type": "zeebe:property",
2075
+ "name": "resultVariable"
2053
2076
  },
2054
- "type": "String"
2077
+ "description": "Name of variable to store the result of the connector in"
2055
2078
  },
2056
2079
  {
2057
- "id": "correlationKeyPayload",
2058
- "label": "Correlation key (payload)",
2059
- "description": "Extracts the correlation key from the incoming message payload",
2060
- "constraints": {
2061
- "notEmpty": true
2062
- },
2080
+ "label": "Result expression",
2081
+ "type": "String",
2082
+ "group": "variable-mapping",
2063
2083
  "feel": "required",
2064
- "group": "correlation",
2084
+ "optional": true,
2065
2085
  "binding": {
2066
- "name": "correlationKeyExpression",
2067
- "type": "zeebe:property"
2086
+ "type": "zeebe:property",
2087
+ "name": "resultExpression"
2068
2088
  },
2069
- "type": "String"
2089
+ "description": "Expression to map the inbound payload to process variables"
2070
2090
  },
2071
2091
  {
2072
- "id": "messageIdExpression",
2073
- "label": "Message ID expression",
2074
- "description": "Expression to extract unique identifier of a message",
2075
- "optional": true,
2076
- "feel": "required",
2077
- "group": "correlation",
2078
- "binding": {
2079
- "name": "messageIdExpression",
2080
- "type": "zeebe:property"
2081
- },
2082
- "type": "String"
2083
- },
2084
- {
2085
- "id": "messageNameUuid",
2086
- "generatedValue": {
2087
- "type": "uuid"
2088
- },
2089
- "group": "correlation",
2090
- "binding": {
2091
- "name": "name",
2092
- "type": "bpmn:Message#property"
2093
- },
2094
- "type": "Hidden"
2095
- },
2096
- {
2097
- "id": "resultVariable",
2098
- "label": "Result variable",
2099
- "description": "Name of variable to store the response in",
2100
- "group": "output",
2101
- "binding": {
2102
- "name": "resultVariable",
2103
- "type": "zeebe:property"
2104
- },
2105
- "type": "String"
2106
- },
2107
- {
2108
- "id": "resultExpression",
2109
- "label": "Result expression",
2110
- "description": "Expression to map the response into process variables",
2092
+ "label": "Response body expression",
2093
+ "type": "Text",
2094
+ "group": "webhookResponse",
2111
2095
  "feel": "required",
2112
- "group": "output",
2096
+ "optional": true,
2113
2097
  "binding": {
2114
- "name": "resultExpression",
2115
- "type": "zeebe:property"
2098
+ "type": "zeebe:property",
2099
+ "name": "inbound.responseBodyExpression"
2116
2100
  },
2117
- "type": "Text"
2101
+ "description": "Specify condition and response"
2118
2102
  }
2119
2103
  ],
2120
2104
  "icon": {
2121
- "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
2105
+ "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"
2122
2106
  },
2123
2107
  "engines": {
2124
- "camunda": "^8.5"
2108
+ "camunda": "^8.2"
2125
2109
  }
2126
2110
  },
2127
2111
  {
@@ -2129,8 +2113,8 @@
2129
2113
  "name": "Webhook Boundary Event Connector",
2130
2114
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
2131
2115
  "description": "Configure webhook to receive callbacks",
2132
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
2133
- "version": 11,
2116
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
2117
+ "version": 10,
2134
2118
  "category": {
2135
2119
  "id": "connectors",
2136
2120
  "name": "Connectors"
@@ -2163,8 +2147,7 @@
2163
2147
  },
2164
2148
  {
2165
2149
  "id": "correlation",
2166
- "label": "Correlation",
2167
- "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
2150
+ "label": "Correlation"
2168
2151
  },
2169
2152
  {
2170
2153
  "id": "output",
@@ -2237,7 +2220,7 @@
2237
2220
  {
2238
2221
  "id": "inbound.shouldValidateHmac",
2239
2222
  "label": "HMAC authentication",
2240
- "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/webhook/#example' target='_blank'>example</a> that explains how to use HMAC-related fields",
2223
+ "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",
2241
2224
  "optional": false,
2242
2225
  "value": "disabled",
2243
2226
  "group": "authentication",
@@ -2328,7 +2311,7 @@
2328
2311
  {
2329
2312
  "id": "inbound.hmacScopes",
2330
2313
  "label": "HMAC scopes",
2331
- "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>",
2314
+ "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>",
2332
2315
  "optional": true,
2333
2316
  "feel": "required",
2334
2317
  "group": "authentication",
@@ -2430,7 +2413,7 @@
2430
2413
  {
2431
2414
  "id": "inbound.auth.apiKeyLocator",
2432
2415
  "label": "API key locator",
2433
- "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>",
2416
+ "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>",
2434
2417
  "optional": false,
2435
2418
  "value": "=split(request.headers.authorization, \" \")[2]",
2436
2419
  "constraints": {
@@ -2470,7 +2453,7 @@
2470
2453
  {
2471
2454
  "id": "inbound.auth.jwt.permissionsExpression",
2472
2455
  "label": "JWT role property expression",
2473
- "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>",
2456
+ "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>",
2474
2457
  "optional": false,
2475
2458
  "feel": "required",
2476
2459
  "group": "authorization",
@@ -2504,14 +2487,14 @@
2504
2487
  "type": "String"
2505
2488
  },
2506
2489
  {
2507
- "id": "inbound.responseExpression",
2508
- "label": "Response expression",
2509
- "description": "Expression used to generate the HTTP response",
2490
+ "id": "inbound.responseBodyExpression",
2491
+ "label": "Response body expression",
2492
+ "description": "Specify condition and response",
2510
2493
  "optional": true,
2511
2494
  "feel": "required",
2512
2495
  "group": "webhookResponse",
2513
2496
  "binding": {
2514
- "name": "inbound.responseExpression",
2497
+ "name": "inbound.responseBodyExpression",
2515
2498
  "type": "zeebe:property"
2516
2499
  },
2517
2500
  "type": "Text"
@@ -2542,18 +2525,6 @@
2542
2525
  },
2543
2526
  "type": "String"
2544
2527
  },
2545
- {
2546
- "id": "consumeUnmatchedEvents",
2547
- "label": "Consume unmatched events",
2548
- "value": true,
2549
- "group": "activation",
2550
- "binding": {
2551
- "name": "consumeUnmatchedEvents",
2552
- "type": "zeebe:property"
2553
- },
2554
- "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",
2555
- "type": "Boolean"
2556
- },
2557
2528
  {
2558
2529
  "id": "correlationKeyProcess",
2559
2530
  "label": "Correlation key (process)",
@@ -2597,26 +2568,6 @@
2597
2568
  },
2598
2569
  "type": "String"
2599
2570
  },
2600
- {
2601
- "id": "messageTtl",
2602
- "label": "Message TTL",
2603
- "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
2604
- "optional": true,
2605
- "constraints": {
2606
- "notEmpty": false,
2607
- "pattern": {
2608
- "value": "^(PT.*|)$",
2609
- "message": "must be an ISO-8601 duration"
2610
- }
2611
- },
2612
- "feel": "optional",
2613
- "group": "correlation",
2614
- "binding": {
2615
- "name": "messageTtl",
2616
- "type": "zeebe:property"
2617
- },
2618
- "type": "String"
2619
- },
2620
2571
  {
2621
2572
  "id": "messageNameUuid",
2622
2573
  "generatedValue": {
@@ -2657,16 +2608,19 @@
2657
2608
  "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
2658
2609
  },
2659
2610
  "engines": {
2660
- "camunda": "^8.6"
2611
+ "camunda": "^8.5"
2661
2612
  }
2662
2613
  },
2663
2614
  {
2664
2615
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2665
2616
  "name": "Webhook Boundary Event Connector",
2666
2617
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
2667
- "version": 2,
2668
2618
  "description": "Configure webhook to receive callbacks",
2669
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
2619
+ "metadata": {
2620
+ "keywords": []
2621
+ },
2622
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
2623
+ "version": 12,
2670
2624
  "category": {
2671
2625
  "id": "connectors",
2672
2626
  "name": "Connectors"
@@ -2689,52 +2643,44 @@
2689
2643
  "id": "authorization",
2690
2644
  "label": "Authorization"
2691
2645
  },
2646
+ {
2647
+ "id": "webhookResponse",
2648
+ "label": "Webhook response"
2649
+ },
2692
2650
  {
2693
2651
  "id": "activation",
2694
2652
  "label": "Activation"
2695
2653
  },
2696
2654
  {
2697
- "id": "variable-mapping",
2698
- "label": "Variable mapping"
2655
+ "id": "correlation",
2656
+ "label": "Correlation",
2657
+ "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
2699
2658
  },
2700
2659
  {
2701
- "id": "webhookResponse",
2702
- "label": "Webhook response"
2660
+ "id": "output",
2661
+ "label": "Output mapping"
2703
2662
  }
2704
2663
  ],
2705
2664
  "properties": [
2706
2665
  {
2707
- "type": "Hidden",
2708
2666
  "value": "io.camunda:webhook:1",
2709
2667
  "binding": {
2710
- "type": "zeebe:property",
2711
- "name": "inbound.type"
2712
- }
2713
- },
2714
- {
2715
- "type": "Hidden",
2716
- "generatedValue": {
2717
- "type": "uuid"
2668
+ "name": "inbound.type",
2669
+ "type": "zeebe:property"
2718
2670
  },
2719
- "binding": {
2720
- "type": "bpmn:Message#property",
2721
- "name": "name"
2722
- }
2723
- },
2724
- {
2725
- "type": "Hidden",
2726
- "value": "ConfigurableInboundWebhook",
2727
- "binding": {
2728
- "type": "zeebe:property",
2729
- "name": "inbound.subtype"
2730
- }
2671
+ "type": "Hidden"
2731
2672
  },
2732
2673
  {
2733
- "id": "webhookMethod",
2674
+ "id": "inbound.method",
2734
2675
  "label": "Webhook method",
2735
- "group": "endpoint",
2736
2676
  "description": "Select HTTP method",
2677
+ "optional": false,
2737
2678
  "value": "any",
2679
+ "group": "endpoint",
2680
+ "binding": {
2681
+ "name": "inbound.method",
2682
+ "type": "zeebe:property"
2683
+ },
2738
2684
  "type": "Dropdown",
2739
2685
  "choices": [
2740
2686
  {
@@ -2742,46 +2688,53 @@
2742
2688
  "value": "any"
2743
2689
  },
2744
2690
  {
2745
- "name": "Get",
2691
+ "name": "GET",
2746
2692
  "value": "get"
2747
2693
  },
2748
2694
  {
2749
- "name": "Post",
2695
+ "name": "POST",
2750
2696
  "value": "post"
2751
2697
  },
2752
2698
  {
2753
- "name": "Put",
2699
+ "name": "PUT",
2754
2700
  "value": "put"
2755
2701
  },
2756
2702
  {
2757
- "name": "Delete",
2703
+ "name": "DELETE",
2758
2704
  "value": "delete"
2759
2705
  }
2760
- ],
2761
- "binding": {
2762
- "type": "zeebe:property",
2763
- "name": "inbound.method"
2764
- }
2706
+ ]
2765
2707
  },
2766
2708
  {
2709
+ "id": "inbound.context",
2767
2710
  "label": "Webhook ID",
2768
- "type": "String",
2711
+ "description": "The webhook ID is a part of the URL",
2712
+ "optional": false,
2713
+ "constraints": {
2714
+ "notEmpty": true,
2715
+ "pattern": {
2716
+ "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
2717
+ "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
2718
+ }
2719
+ },
2769
2720
  "group": "endpoint",
2770
2721
  "binding": {
2771
- "type": "zeebe:property",
2772
- "name": "inbound.context"
2722
+ "name": "inbound.context",
2723
+ "type": "zeebe:property"
2773
2724
  },
2774
- "description": "The webhook ID is a part of the URL",
2775
- "constraints": {
2776
- "notEmpty": true
2777
- }
2725
+ "type": "String"
2778
2726
  },
2779
2727
  {
2780
- "id": "shouldValidateHmac",
2728
+ "id": "inbound.shouldValidateHmac",
2781
2729
  "label": "HMAC authentication",
2782
- "group": "authentication",
2783
- "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",
2730
+ "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",
2731
+ "optional": false,
2784
2732
  "value": "disabled",
2733
+ "group": "authentication",
2734
+ "binding": {
2735
+ "name": "inbound.shouldValidateHmac",
2736
+ "type": "zeebe:property"
2737
+ },
2785
2738
  "type": "Dropdown",
2786
2739
  "choices": [
2787
2740
  {
@@ -2792,52 +2745,65 @@
2792
2745
  "name": "Disabled",
2793
2746
  "value": "disabled"
2794
2747
  }
2795
- ],
2796
- "binding": {
2797
- "type": "zeebe:property",
2798
- "name": "inbound.shouldValidateHmac"
2799
- }
2748
+ ]
2800
2749
  },
2801
2750
  {
2751
+ "id": "inbound.hmacSecret",
2802
2752
  "label": "HMAC secret key",
2803
2753
  "description": "Shared secret key",
2804
- "type": "String",
2805
- "group": "authentication",
2806
2754
  "optional": true,
2755
+ "feel": "optional",
2756
+ "group": "authentication",
2807
2757
  "binding": {
2808
- "type": "zeebe:property",
2809
- "name": "inbound.hmacSecret"
2758
+ "name": "inbound.hmacSecret",
2759
+ "type": "zeebe:property"
2810
2760
  },
2811
2761
  "condition": {
2812
- "property": "shouldValidateHmac",
2813
- "equals": "enabled"
2814
- }
2762
+ "property": "inbound.shouldValidateHmac",
2763
+ "equals": "enabled",
2764
+ "type": "simple"
2765
+ },
2766
+ "type": "String"
2815
2767
  },
2816
2768
  {
2769
+ "id": "inbound.hmacHeader",
2817
2770
  "label": "HMAC header",
2818
2771
  "description": "Name of header attribute that will contain the HMAC value",
2819
- "type": "String",
2820
- "group": "authentication",
2821
2772
  "optional": true,
2773
+ "feel": "optional",
2774
+ "group": "authentication",
2822
2775
  "binding": {
2823
- "type": "zeebe:property",
2824
- "name": "inbound.hmacHeader"
2776
+ "name": "inbound.hmacHeader",
2777
+ "type": "zeebe:property"
2825
2778
  },
2826
2779
  "condition": {
2827
- "property": "shouldValidateHmac",
2828
- "equals": "enabled"
2829
- }
2780
+ "property": "inbound.shouldValidateHmac",
2781
+ "equals": "enabled",
2782
+ "type": "simple"
2783
+ },
2784
+ "type": "String"
2830
2785
  },
2831
2786
  {
2787
+ "id": "inbound.hmacAlgorithm",
2832
2788
  "label": "HMAC algorithm",
2833
- "group": "authentication",
2834
2789
  "description": "Choose HMAC algorithm",
2790
+ "optional": false,
2835
2791
  "value": "sha_256",
2836
- "type": "Dropdown",
2837
- "choices": [
2838
- {
2839
- "name": "SHA-1",
2840
- "value": "sha_1"
2792
+ "group": "authentication",
2793
+ "binding": {
2794
+ "name": "inbound.hmacAlgorithm",
2795
+ "type": "zeebe:property"
2796
+ },
2797
+ "condition": {
2798
+ "property": "inbound.shouldValidateHmac",
2799
+ "equals": "enabled",
2800
+ "type": "simple"
2801
+ },
2802
+ "type": "Dropdown",
2803
+ "choices": [
2804
+ {
2805
+ "name": "SHA-1",
2806
+ "value": "sha_1"
2841
2807
  },
2842
2808
  {
2843
2809
  "name": "SHA-256",
@@ -2847,297 +2813,353 @@
2847
2813
  "name": "SHA-512",
2848
2814
  "value": "sha_512"
2849
2815
  }
2850
- ],
2851
- "binding": {
2852
- "type": "zeebe:property",
2853
- "name": "inbound.hmacAlgorithm"
2854
- },
2855
- "condition": {
2856
- "property": "shouldValidateHmac",
2857
- "equals": "enabled"
2858
- }
2816
+ ]
2859
2817
  },
2860
2818
  {
2819
+ "id": "inbound.hmacScopes",
2861
2820
  "label": "HMAC scopes",
2862
- "group": "authentication",
2863
- "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>",
2864
- "feel": "required",
2865
- "type": "String",
2821
+ "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>",
2866
2822
  "optional": true,
2823
+ "feel": "required",
2824
+ "group": "authentication",
2867
2825
  "binding": {
2868
- "type": "zeebe:property",
2869
- "name": "inbound.hmacScopes"
2826
+ "name": "inbound.hmacScopes",
2827
+ "type": "zeebe:property"
2870
2828
  },
2871
2829
  "condition": {
2872
- "property": "shouldValidateHmac",
2873
- "equals": "enabled"
2874
- }
2830
+ "property": "inbound.shouldValidateHmac",
2831
+ "equals": "enabled",
2832
+ "type": "simple"
2833
+ },
2834
+ "type": "String"
2875
2835
  },
2876
2836
  {
2877
- "id": "authorizationType",
2837
+ "id": "inbound.auth.type",
2878
2838
  "label": "Authorization type",
2879
- "group": "authorization",
2880
- "description": "Choose the authorization type.",
2839
+ "description": "Choose the authorization type",
2881
2840
  "value": "NONE",
2841
+ "group": "authorization",
2842
+ "binding": {
2843
+ "name": "inbound.auth.type",
2844
+ "type": "zeebe:property"
2845
+ },
2882
2846
  "type": "Dropdown",
2883
2847
  "choices": [
2884
2848
  {
2885
2849
  "name": "None",
2886
2850
  "value": "NONE"
2887
2851
  },
2888
- {
2889
- "name": "JWT",
2890
- "value": "JWT"
2891
- },
2892
2852
  {
2893
2853
  "name": "Basic",
2894
2854
  "value": "BASIC"
2895
2855
  },
2896
2856
  {
2897
- "name": "API Key",
2857
+ "name": "API key",
2898
2858
  "value": "APIKEY"
2859
+ },
2860
+ {
2861
+ "name": "JWT",
2862
+ "value": "JWT"
2899
2863
  }
2900
- ],
2901
- "binding": {
2902
- "type": "zeebe:property",
2903
- "name": "inbound.auth.type"
2904
- }
2864
+ ]
2905
2865
  },
2906
2866
  {
2907
- "label": "JWK url",
2908
- "description": "Well-known url of JWKs",
2909
- "type": "String",
2910
- "group": "authorization",
2867
+ "id": "inbound.auth.username",
2868
+ "label": "Username",
2869
+ "description": "Username for basic authentication",
2870
+ "optional": false,
2911
2871
  "feel": "optional",
2912
- "optional": true,
2872
+ "group": "authorization",
2913
2873
  "binding": {
2914
- "type": "zeebe:property",
2915
- "name": "inbound.auth.jwt.jwkUrl"
2874
+ "name": "inbound.auth.username",
2875
+ "type": "zeebe:property"
2916
2876
  },
2917
2877
  "condition": {
2918
- "property": "authorizationType",
2919
- "equals": "JWT"
2920
- }
2878
+ "property": "inbound.auth.type",
2879
+ "equals": "BASIC",
2880
+ "type": "simple"
2881
+ },
2882
+ "type": "String"
2921
2883
  },
2922
2884
  {
2923
- "label": "JWT role property expression",
2924
- "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>",
2925
- "type": "String",
2885
+ "id": "inbound.auth.password",
2886
+ "label": "Password",
2887
+ "description": "Password for basic authentication",
2888
+ "optional": false,
2889
+ "feel": "optional",
2926
2890
  "group": "authorization",
2927
- "feel": "required",
2928
- "optional": true,
2929
2891
  "binding": {
2930
- "type": "zeebe:property",
2931
- "name": "inbound.auth.jwt.permissionsExpression"
2892
+ "name": "inbound.auth.password",
2893
+ "type": "zeebe:property"
2932
2894
  },
2933
2895
  "condition": {
2934
- "property": "authorizationType",
2935
- "equals": "JWT"
2936
- }
2896
+ "property": "inbound.auth.type",
2897
+ "equals": "BASIC",
2898
+ "type": "simple"
2899
+ },
2900
+ "type": "String"
2937
2901
  },
2938
2902
  {
2939
- "label": "Required roles",
2940
- "description": "List of roles to test JWT roles against",
2941
- "type": "String",
2903
+ "id": "inbound.auth.apiKey",
2904
+ "label": "API key",
2905
+ "description": "Expected API key",
2906
+ "optional": false,
2907
+ "feel": "optional",
2942
2908
  "group": "authorization",
2943
- "feel": "required",
2944
- "optional": true,
2945
2909
  "binding": {
2946
- "type": "zeebe:property",
2947
- "name": "inbound.auth.jwt.requiredPermissions"
2910
+ "name": "inbound.auth.apiKey",
2911
+ "type": "zeebe:property"
2948
2912
  },
2949
2913
  "condition": {
2950
- "property": "authorizationType",
2951
- "equals": "JWT"
2952
- }
2914
+ "property": "inbound.auth.type",
2915
+ "equals": "APIKEY",
2916
+ "type": "simple"
2917
+ },
2918
+ "type": "String"
2953
2919
  },
2954
2920
  {
2955
- "label": "Username",
2956
- "description": "Username for basic authentication",
2957
- "type": "String",
2921
+ "id": "inbound.auth.apiKeyLocator",
2922
+ "label": "API key locator",
2923
+ "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>",
2924
+ "optional": false,
2925
+ "value": "=split(request.headers.authorization, \" \")[2]",
2926
+ "constraints": {
2927
+ "notEmpty": true
2928
+ },
2929
+ "feel": "required",
2958
2930
  "group": "authorization",
2959
- "feel": "optional",
2960
2931
  "binding": {
2961
- "type": "zeebe:property",
2962
- "name": "inbound.auth.username"
2932
+ "name": "inbound.auth.apiKeyLocator",
2933
+ "type": "zeebe:property"
2963
2934
  },
2964
2935
  "condition": {
2965
- "property": "authorizationType",
2966
- "equals": "BASIC"
2936
+ "property": "inbound.auth.type",
2937
+ "equals": "APIKEY",
2938
+ "type": "simple"
2967
2939
  },
2968
- "constraints": {
2969
- "notEmpty": true
2970
- }
2940
+ "type": "String"
2971
2941
  },
2972
2942
  {
2973
- "label": "Password",
2974
- "description": "Password for basic authentication",
2975
- "type": "String",
2976
- "group": "authorization",
2943
+ "id": "inbound.auth.jwt.jwkUrl",
2944
+ "label": "JWK URL",
2945
+ "description": "Well-known URL of JWKs",
2946
+ "optional": false,
2977
2947
  "feel": "optional",
2948
+ "group": "authorization",
2978
2949
  "binding": {
2979
- "type": "zeebe:property",
2980
- "name": "inbound.auth.password"
2950
+ "name": "inbound.auth.jwt.jwkUrl",
2951
+ "type": "zeebe:property"
2981
2952
  },
2982
2953
  "condition": {
2983
- "property": "authorizationType",
2984
- "equals": "BASIC"
2954
+ "property": "inbound.auth.type",
2955
+ "equals": "JWT",
2956
+ "type": "simple"
2985
2957
  },
2986
- "constraints": {
2987
- "notEmpty": true
2988
- }
2958
+ "type": "String"
2989
2959
  },
2990
2960
  {
2991
- "label": "API Key",
2992
- "description": "Expected API key",
2993
- "type": "String",
2961
+ "id": "inbound.auth.jwt.permissionsExpression",
2962
+ "label": "JWT role property expression",
2963
+ "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>",
2964
+ "optional": false,
2965
+ "feel": "required",
2994
2966
  "group": "authorization",
2995
- "feel": "optional",
2996
2967
  "binding": {
2997
- "type": "zeebe:property",
2998
- "name": "inbound.auth.apiKey"
2968
+ "name": "inbound.auth.jwt.permissionsExpression",
2969
+ "type": "zeebe:property"
2999
2970
  },
3000
2971
  "condition": {
3001
- "property": "authorizationType",
3002
- "equals": "APIKEY"
2972
+ "property": "inbound.auth.type",
2973
+ "equals": "JWT",
2974
+ "type": "simple"
3003
2975
  },
3004
- "constraints": {
3005
- "notEmpty": true
3006
- }
2976
+ "type": "String"
3007
2977
  },
3008
2978
  {
3009
- "label": "API Key locator",
3010
- "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>",
3011
- "type": "String",
3012
- "group": "authorization",
2979
+ "id": "inbound.auth.jwt.requiredPermissions",
2980
+ "label": "Required roles",
2981
+ "description": "List of roles to test JWT roles against",
2982
+ "optional": false,
3013
2983
  "feel": "required",
2984
+ "group": "authorization",
3014
2985
  "binding": {
3015
- "type": "zeebe:property",
3016
- "name": "inbound.auth.apiKeyLocator"
2986
+ "name": "inbound.auth.jwt.requiredPermissions",
2987
+ "type": "zeebe:property"
3017
2988
  },
3018
2989
  "condition": {
3019
- "property": "authorizationType",
3020
- "equals": "APIKEY"
3021
- },
3022
- "constraints": {
3023
- "notEmpty": true
2990
+ "property": "inbound.auth.type",
2991
+ "equals": "JWT",
2992
+ "type": "simple"
3024
2993
  },
3025
- "value": "=split(request.headers.authorization, \" \")[2]"
2994
+ "type": "String"
3026
2995
  },
3027
2996
  {
3028
- "label": "Correlation key (process)",
3029
- "type": "String",
3030
- "group": "activation",
2997
+ "id": "inbound.responseExpression",
2998
+ "label": "Response expression",
2999
+ "description": "Expression used to generate the HTTP response",
3000
+ "optional": true,
3031
3001
  "feel": "required",
3032
- "description": "Sets up the correlation key from process variables",
3002
+ "group": "webhookResponse",
3033
3003
  "binding": {
3034
- "type": "bpmn:Message#zeebe:subscription#property",
3035
- "name": "correlationKey"
3004
+ "name": "inbound.responseExpression",
3005
+ "type": "zeebe:property"
3036
3006
  },
3037
- "constraints": {
3038
- "notEmpty": true
3039
- }
3007
+ "type": "Text"
3040
3008
  },
3041
3009
  {
3042
- "label": "Correlation key (payload)",
3043
- "type": "String",
3044
- "group": "activation",
3010
+ "id": "inbound.verificationExpression",
3011
+ "label": "One time verification response expression",
3012
+ "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>",
3013
+ "optional": true,
3045
3014
  "feel": "required",
3015
+ "group": "webhookResponse",
3046
3016
  "binding": {
3047
- "type": "zeebe:property",
3048
- "name": "correlationKeyExpression"
3017
+ "name": "inbound.verificationExpression",
3018
+ "type": "zeebe:property"
3049
3019
  },
3050
- "description": "Extracts the correlation key from the incoming message payload",
3051
- "constraints": {
3052
- "notEmpty": true
3053
- }
3020
+ "type": "Text"
3054
3021
  },
3055
3022
  {
3056
- "label": "Message ID expression",
3057
- "feel": "required",
3058
- "type": "String",
3023
+ "id": "activationCondition",
3024
+ "label": "Activation condition",
3025
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
3059
3026
  "optional": true,
3027
+ "feel": "required",
3060
3028
  "group": "activation",
3061
3029
  "binding": {
3062
- "type": "zeebe:property",
3063
- "name": "messageIdExpression"
3030
+ "name": "activationCondition",
3031
+ "type": "zeebe:property"
3064
3032
  },
3065
- "description": "Expression to extract unique identifier of a message"
3033
+ "type": "String"
3066
3034
  },
3067
3035
  {
3068
- "label": "Condition",
3069
- "type": "String",
3036
+ "id": "consumeUnmatchedEvents",
3037
+ "label": "Consume unmatched events",
3038
+ "value": true,
3070
3039
  "group": "activation",
3071
- "feel": "required",
3072
- "optional": true,
3073
3040
  "binding": {
3074
- "type": "zeebe:property",
3075
- "name": "activationCondition"
3041
+ "name": "consumeUnmatchedEvents",
3042
+ "type": "zeebe:property"
3076
3043
  },
3077
- "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>"
3044
+ "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",
3045
+ "type": "Boolean"
3078
3046
  },
3079
3047
  {
3080
- "label": "Result variable",
3081
- "type": "String",
3082
- "group": "variable-mapping",
3083
- "optional": true,
3048
+ "id": "correlationKeyProcess",
3049
+ "label": "Correlation key (process)",
3050
+ "description": "Sets up the correlation key from process variables",
3051
+ "constraints": {
3052
+ "notEmpty": true
3053
+ },
3054
+ "feel": "required",
3055
+ "group": "correlation",
3084
3056
  "binding": {
3085
- "type": "zeebe:property",
3086
- "name": "resultVariable"
3057
+ "name": "correlationKey",
3058
+ "type": "bpmn:Message#zeebe:subscription#property"
3087
3059
  },
3088
- "description": "Name of variable to store the result of the connector in"
3060
+ "type": "String"
3089
3061
  },
3090
3062
  {
3091
- "label": "Result expression",
3092
- "type": "String",
3093
- "group": "variable-mapping",
3063
+ "id": "correlationKeyPayload",
3064
+ "label": "Correlation key (payload)",
3065
+ "description": "Extracts the correlation key from the incoming message payload",
3066
+ "constraints": {
3067
+ "notEmpty": true
3068
+ },
3094
3069
  "feel": "required",
3095
- "optional": true,
3070
+ "group": "correlation",
3096
3071
  "binding": {
3097
- "type": "zeebe:property",
3098
- "name": "resultExpression"
3072
+ "name": "correlationKeyExpression",
3073
+ "type": "zeebe:property"
3099
3074
  },
3100
- "description": "Expression to map the inbound payload to process variables"
3075
+ "type": "String"
3101
3076
  },
3102
3077
  {
3103
- "label": "One time verification response expression",
3104
- "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>",
3105
- "type": "Text",
3106
- "group": "webhookResponse",
3078
+ "id": "messageIdExpression",
3079
+ "label": "Message ID expression",
3080
+ "description": "Expression to extract unique identifier of a message",
3081
+ "optional": true,
3107
3082
  "feel": "required",
3083
+ "group": "correlation",
3084
+ "binding": {
3085
+ "name": "messageIdExpression",
3086
+ "type": "zeebe:property"
3087
+ },
3088
+ "type": "String"
3089
+ },
3090
+ {
3091
+ "id": "messageTtl",
3092
+ "label": "Message TTL",
3093
+ "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
3108
3094
  "optional": true,
3095
+ "constraints": {
3096
+ "notEmpty": false,
3097
+ "pattern": {
3098
+ "value": "^(PT.*|)$",
3099
+ "message": "must be an ISO-8601 duration"
3100
+ }
3101
+ },
3102
+ "feel": "optional",
3103
+ "group": "correlation",
3109
3104
  "binding": {
3110
- "type": "zeebe:property",
3111
- "name": "inbound.verificationExpression"
3112
- }
3105
+ "name": "messageTtl",
3106
+ "type": "zeebe:property"
3107
+ },
3108
+ "type": "String"
3113
3109
  },
3114
3110
  {
3115
- "label": "Response body expression",
3116
- "type": "Text",
3117
- "group": "webhookResponse",
3111
+ "id": "messageNameUuid",
3112
+ "generatedValue": {
3113
+ "type": "uuid"
3114
+ },
3115
+ "group": "correlation",
3116
+ "binding": {
3117
+ "name": "name",
3118
+ "type": "bpmn:Message#property"
3119
+ },
3120
+ "type": "Hidden"
3121
+ },
3122
+ {
3123
+ "id": "resultVariable",
3124
+ "label": "Result variable",
3125
+ "description": "Name of variable to store the response in",
3126
+ "group": "output",
3127
+ "binding": {
3128
+ "name": "resultVariable",
3129
+ "type": "zeebe:property"
3130
+ },
3131
+ "type": "String"
3132
+ },
3133
+ {
3134
+ "id": "resultExpression",
3135
+ "label": "Result expression",
3136
+ "description": "Expression to map the response into process variables",
3118
3137
  "feel": "required",
3119
- "optional": true,
3138
+ "group": "output",
3120
3139
  "binding": {
3121
- "type": "zeebe:property",
3122
- "name": "inbound.responseBodyExpression"
3140
+ "name": "resultExpression",
3141
+ "type": "zeebe:property"
3123
3142
  },
3124
- "description": "Specify condition and response"
3143
+ "type": "Text"
3125
3144
  }
3126
3145
  ],
3127
- "icon": {
3128
- "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"
3129
- },
3130
3146
  "engines": {
3131
- "camunda": "^8.4"
3147
+ "camunda": "^8.3"
3148
+ },
3149
+ "icon": {
3150
+ "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
3132
3151
  }
3133
3152
  },
3134
3153
  {
3135
3154
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
3136
3155
  "name": "Webhook Boundary Event Connector",
3137
3156
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
3138
- "version": 1,
3139
3157
  "description": "Configure webhook to receive callbacks",
3140
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
3158
+ "metadata": {
3159
+ "keywords": []
3160
+ },
3161
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
3162
+ "version": 13,
3141
3163
  "category": {
3142
3164
  "id": "connectors",
3143
3165
  "name": "Connectors"
@@ -3147,6 +3169,9 @@
3147
3169
  "value": "bpmn:BoundaryEvent",
3148
3170
  "eventDefinition": "bpmn:MessageEventDefinition"
3149
3171
  },
3172
+ "engines": {
3173
+ "camunda": "^8.3"
3174
+ },
3150
3175
  "groups": [
3151
3176
  {
3152
3177
  "id": "endpoint",
@@ -3160,52 +3185,49 @@
3160
3185
  "id": "authorization",
3161
3186
  "label": "Authorization"
3162
3187
  },
3188
+ {
3189
+ "id": "webhookResponse",
3190
+ "label": "Webhook response"
3191
+ },
3163
3192
  {
3164
3193
  "id": "activation",
3165
3194
  "label": "Activation"
3166
3195
  },
3167
3196
  {
3168
- "id": "variable-mapping",
3169
- "label": "Variable mapping"
3197
+ "id": "correlation",
3198
+ "label": "Correlation",
3199
+ "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
3170
3200
  },
3171
3201
  {
3172
- "id": "webhookResponse",
3173
- "label": "Webhook response"
3202
+ "id": "deduplication",
3203
+ "label": "Deduplication",
3204
+ "tooltip": "Deduplication allows you to configure multiple inbound connector elements to reuse the same backend (consumer/thread/endpoint) by sharing the same deduplication ID."
3205
+ },
3206
+ {
3207
+ "id": "output",
3208
+ "label": "Output mapping"
3174
3209
  }
3175
3210
  ],
3176
3211
  "properties": [
3177
3212
  {
3178
- "type": "Hidden",
3179
3213
  "value": "io.camunda:webhook:1",
3180
3214
  "binding": {
3181
- "type": "zeebe:property",
3182
- "name": "inbound.type"
3183
- }
3184
- },
3185
- {
3186
- "type": "Hidden",
3187
- "generatedValue": {
3188
- "type": "uuid"
3215
+ "name": "inbound.type",
3216
+ "type": "zeebe:property"
3189
3217
  },
3190
- "binding": {
3191
- "type": "bpmn:Message#property",
3192
- "name": "name"
3193
- }
3194
- },
3195
- {
3196
- "type": "Hidden",
3197
- "value": "ConfigurableInboundWebhook",
3198
- "binding": {
3199
- "type": "zeebe:property",
3200
- "name": "inbound.subtype"
3201
- }
3218
+ "type": "Hidden"
3202
3219
  },
3203
3220
  {
3204
- "id": "webhookMethod",
3221
+ "id": "inbound.method",
3205
3222
  "label": "Webhook method",
3206
- "group": "endpoint",
3207
3223
  "description": "Select HTTP method",
3224
+ "optional": false,
3208
3225
  "value": "any",
3226
+ "group": "endpoint",
3227
+ "binding": {
3228
+ "name": "inbound.method",
3229
+ "type": "zeebe:property"
3230
+ },
3209
3231
  "type": "Dropdown",
3210
3232
  "choices": [
3211
3233
  {
@@ -3213,46 +3235,53 @@
3213
3235
  "value": "any"
3214
3236
  },
3215
3237
  {
3216
- "name": "Get",
3238
+ "name": "GET",
3217
3239
  "value": "get"
3218
3240
  },
3219
3241
  {
3220
- "name": "Post",
3242
+ "name": "POST",
3221
3243
  "value": "post"
3222
3244
  },
3223
3245
  {
3224
- "name": "Put",
3246
+ "name": "PUT",
3225
3247
  "value": "put"
3226
3248
  },
3227
3249
  {
3228
- "name": "Delete",
3250
+ "name": "DELETE",
3229
3251
  "value": "delete"
3230
3252
  }
3231
- ],
3232
- "binding": {
3233
- "type": "zeebe:property",
3234
- "name": "inbound.method"
3235
- }
3253
+ ]
3236
3254
  },
3237
3255
  {
3256
+ "id": "inbound.context",
3238
3257
  "label": "Webhook ID",
3239
- "type": "String",
3258
+ "description": "The webhook ID is a part of the URL",
3259
+ "optional": false,
3260
+ "constraints": {
3261
+ "notEmpty": true,
3262
+ "pattern": {
3263
+ "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
3264
+ "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
3265
+ }
3266
+ },
3240
3267
  "group": "endpoint",
3241
3268
  "binding": {
3242
- "type": "zeebe:property",
3243
- "name": "inbound.context"
3269
+ "name": "inbound.context",
3270
+ "type": "zeebe:property"
3244
3271
  },
3245
- "description": "The webhook ID is a part of the URL",
3246
- "constraints": {
3247
- "notEmpty": true
3248
- }
3272
+ "type": "String"
3249
3273
  },
3250
3274
  {
3251
- "id": "shouldValidateHmac",
3275
+ "id": "inbound.shouldValidateHmac",
3252
3276
  "label": "HMAC authentication",
3253
- "group": "authentication",
3254
- "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",
3277
+ "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",
3278
+ "optional": false,
3255
3279
  "value": "disabled",
3280
+ "group": "authentication",
3281
+ "binding": {
3282
+ "name": "inbound.shouldValidateHmac",
3283
+ "type": "zeebe:property"
3284
+ },
3256
3285
  "type": "Dropdown",
3257
3286
  "choices": [
3258
3287
  {
@@ -3263,47 +3292,60 @@
3263
3292
  "name": "Disabled",
3264
3293
  "value": "disabled"
3265
3294
  }
3266
- ],
3267
- "binding": {
3268
- "type": "zeebe:property",
3269
- "name": "inbound.shouldValidateHmac"
3270
- }
3295
+ ]
3271
3296
  },
3272
3297
  {
3298
+ "id": "inbound.hmacSecret",
3273
3299
  "label": "HMAC secret key",
3274
3300
  "description": "Shared secret key",
3275
- "type": "String",
3276
- "group": "authentication",
3277
3301
  "optional": true,
3302
+ "feel": "optional",
3303
+ "group": "authentication",
3278
3304
  "binding": {
3279
- "type": "zeebe:property",
3280
- "name": "inbound.hmacSecret"
3305
+ "name": "inbound.hmacSecret",
3306
+ "type": "zeebe:property"
3281
3307
  },
3282
3308
  "condition": {
3283
- "property": "shouldValidateHmac",
3284
- "equals": "enabled"
3285
- }
3309
+ "property": "inbound.shouldValidateHmac",
3310
+ "equals": "enabled",
3311
+ "type": "simple"
3312
+ },
3313
+ "type": "String"
3286
3314
  },
3287
3315
  {
3316
+ "id": "inbound.hmacHeader",
3288
3317
  "label": "HMAC header",
3289
3318
  "description": "Name of header attribute that will contain the HMAC value",
3290
- "type": "String",
3291
- "group": "authentication",
3292
3319
  "optional": true,
3320
+ "feel": "optional",
3321
+ "group": "authentication",
3293
3322
  "binding": {
3294
- "type": "zeebe:property",
3295
- "name": "inbound.hmacHeader"
3323
+ "name": "inbound.hmacHeader",
3324
+ "type": "zeebe:property"
3296
3325
  },
3297
3326
  "condition": {
3298
- "property": "shouldValidateHmac",
3299
- "equals": "enabled"
3300
- }
3327
+ "property": "inbound.shouldValidateHmac",
3328
+ "equals": "enabled",
3329
+ "type": "simple"
3330
+ },
3331
+ "type": "String"
3301
3332
  },
3302
3333
  {
3334
+ "id": "inbound.hmacAlgorithm",
3303
3335
  "label": "HMAC algorithm",
3304
- "group": "authentication",
3305
3336
  "description": "Choose HMAC algorithm",
3337
+ "optional": false,
3306
3338
  "value": "sha_256",
3339
+ "group": "authentication",
3340
+ "binding": {
3341
+ "name": "inbound.hmacAlgorithm",
3342
+ "type": "zeebe:property"
3343
+ },
3344
+ "condition": {
3345
+ "property": "inbound.shouldValidateHmac",
3346
+ "equals": "enabled",
3347
+ "type": "simple"
3348
+ },
3307
3349
  "type": "Dropdown",
3308
3350
  "choices": [
3309
3351
  {
@@ -3318,276 +3360,411 @@
3318
3360
  "name": "SHA-512",
3319
3361
  "value": "sha_512"
3320
3362
  }
3321
- ],
3322
- "binding": {
3323
- "type": "zeebe:property",
3324
- "name": "inbound.hmacAlgorithm"
3325
- },
3326
- "condition": {
3327
- "property": "shouldValidateHmac",
3328
- "equals": "enabled"
3329
- }
3363
+ ]
3330
3364
  },
3331
3365
  {
3366
+ "id": "inbound.hmacScopes",
3332
3367
  "label": "HMAC scopes",
3333
- "group": "authentication",
3334
- "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>",
3335
- "feel": "required",
3336
- "type": "String",
3368
+ "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>",
3337
3369
  "optional": true,
3370
+ "feel": "required",
3371
+ "group": "authentication",
3338
3372
  "binding": {
3339
- "type": "zeebe:property",
3340
- "name": "inbound.hmacScopes"
3373
+ "name": "inbound.hmacScopes",
3374
+ "type": "zeebe:property"
3341
3375
  },
3342
3376
  "condition": {
3343
- "property": "shouldValidateHmac",
3344
- "equals": "enabled"
3345
- }
3377
+ "property": "inbound.shouldValidateHmac",
3378
+ "equals": "enabled",
3379
+ "type": "simple"
3380
+ },
3381
+ "type": "String"
3346
3382
  },
3347
3383
  {
3348
- "id": "authorizationType",
3384
+ "id": "inbound.auth.type",
3349
3385
  "label": "Authorization type",
3350
- "group": "authorization",
3351
- "description": "Choose the authorization type.",
3386
+ "description": "Choose the authorization type",
3352
3387
  "value": "NONE",
3388
+ "group": "authorization",
3389
+ "binding": {
3390
+ "name": "inbound.auth.type",
3391
+ "type": "zeebe:property"
3392
+ },
3353
3393
  "type": "Dropdown",
3354
3394
  "choices": [
3355
3395
  {
3356
3396
  "name": "None",
3357
3397
  "value": "NONE"
3358
3398
  },
3359
- {
3360
- "name": "JWT",
3361
- "value": "JWT"
3362
- },
3363
3399
  {
3364
3400
  "name": "Basic",
3365
3401
  "value": "BASIC"
3366
3402
  },
3367
3403
  {
3368
- "name": "API Key",
3404
+ "name": "API key",
3369
3405
  "value": "APIKEY"
3406
+ },
3407
+ {
3408
+ "name": "JWT",
3409
+ "value": "JWT"
3370
3410
  }
3371
- ],
3372
- "binding": {
3373
- "type": "zeebe:property",
3374
- "name": "inbound.auth.type"
3375
- }
3411
+ ]
3376
3412
  },
3377
3413
  {
3378
- "label": "JWK url",
3379
- "description": "Well-known url of JWKs",
3380
- "type": "String",
3381
- "group": "authorization",
3414
+ "id": "inbound.auth.username",
3415
+ "label": "Username",
3416
+ "description": "Username for basic authentication",
3417
+ "optional": false,
3382
3418
  "feel": "optional",
3383
- "optional": true,
3419
+ "group": "authorization",
3384
3420
  "binding": {
3385
- "type": "zeebe:property",
3386
- "name": "inbound.auth.jwt.jwkUrl"
3421
+ "name": "inbound.auth.username",
3422
+ "type": "zeebe:property"
3387
3423
  },
3388
3424
  "condition": {
3389
- "property": "authorizationType",
3390
- "equals": "JWT"
3391
- }
3425
+ "property": "inbound.auth.type",
3426
+ "equals": "BASIC",
3427
+ "type": "simple"
3428
+ },
3429
+ "type": "String"
3392
3430
  },
3393
3431
  {
3394
- "label": "JWT role property expression",
3395
- "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>",
3396
- "type": "String",
3432
+ "id": "inbound.auth.password",
3433
+ "label": "Password",
3434
+ "description": "Password for basic authentication",
3435
+ "optional": false,
3436
+ "feel": "optional",
3397
3437
  "group": "authorization",
3398
- "feel": "required",
3399
- "optional": true,
3400
3438
  "binding": {
3401
- "type": "zeebe:property",
3402
- "name": "inbound.auth.jwt.permissionsExpression"
3439
+ "name": "inbound.auth.password",
3440
+ "type": "zeebe:property"
3403
3441
  },
3404
3442
  "condition": {
3405
- "property": "authorizationType",
3406
- "equals": "JWT"
3407
- }
3443
+ "property": "inbound.auth.type",
3444
+ "equals": "BASIC",
3445
+ "type": "simple"
3446
+ },
3447
+ "type": "String"
3408
3448
  },
3409
3449
  {
3410
- "label": "Required roles",
3411
- "description": "List of roles to test JWT roles against",
3412
- "type": "String",
3450
+ "id": "inbound.auth.apiKey",
3451
+ "label": "API key",
3452
+ "description": "Expected API key",
3453
+ "optional": false,
3454
+ "feel": "optional",
3413
3455
  "group": "authorization",
3414
- "feel": "required",
3415
- "optional": true,
3416
3456
  "binding": {
3417
- "type": "zeebe:property",
3418
- "name": "inbound.auth.jwt.requiredPermissions"
3457
+ "name": "inbound.auth.apiKey",
3458
+ "type": "zeebe:property"
3419
3459
  },
3420
3460
  "condition": {
3421
- "property": "authorizationType",
3422
- "equals": "JWT"
3423
- }
3461
+ "property": "inbound.auth.type",
3462
+ "equals": "APIKEY",
3463
+ "type": "simple"
3464
+ },
3465
+ "type": "String"
3424
3466
  },
3425
3467
  {
3426
- "label": "Username",
3427
- "description": "Username for basic authentication",
3428
- "type": "String",
3468
+ "id": "inbound.auth.apiKeyLocator",
3469
+ "label": "API key locator",
3470
+ "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>",
3471
+ "optional": false,
3472
+ "value": "=split(request.headers.authorization, \" \")[2]",
3473
+ "constraints": {
3474
+ "notEmpty": true
3475
+ },
3476
+ "feel": "required",
3429
3477
  "group": "authorization",
3430
- "feel": "optional",
3431
3478
  "binding": {
3432
- "type": "zeebe:property",
3433
- "name": "inbound.auth.username"
3479
+ "name": "inbound.auth.apiKeyLocator",
3480
+ "type": "zeebe:property"
3434
3481
  },
3435
3482
  "condition": {
3436
- "property": "authorizationType",
3437
- "equals": "BASIC"
3483
+ "property": "inbound.auth.type",
3484
+ "equals": "APIKEY",
3485
+ "type": "simple"
3438
3486
  },
3439
- "constraints": {
3440
- "notEmpty": true
3441
- }
3487
+ "type": "String"
3442
3488
  },
3443
3489
  {
3444
- "label": "Password",
3445
- "description": "Password for basic authentication",
3446
- "type": "String",
3447
- "group": "authorization",
3490
+ "id": "inbound.auth.jwt.jwkUrl",
3491
+ "label": "JWK URL",
3492
+ "description": "Well-known URL of JWKs",
3493
+ "optional": false,
3448
3494
  "feel": "optional",
3495
+ "group": "authorization",
3449
3496
  "binding": {
3450
- "type": "zeebe:property",
3451
- "name": "inbound.auth.password"
3497
+ "name": "inbound.auth.jwt.jwkUrl",
3498
+ "type": "zeebe:property"
3452
3499
  },
3453
3500
  "condition": {
3454
- "property": "authorizationType",
3455
- "equals": "BASIC"
3501
+ "property": "inbound.auth.type",
3502
+ "equals": "JWT",
3503
+ "type": "simple"
3456
3504
  },
3457
- "constraints": {
3458
- "notEmpty": true
3459
- }
3505
+ "type": "String"
3460
3506
  },
3461
3507
  {
3462
- "label": "API Key",
3463
- "description": "Expected API key",
3464
- "type": "String",
3508
+ "id": "inbound.auth.jwt.permissionsExpression",
3509
+ "label": "JWT role property expression",
3510
+ "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>",
3511
+ "optional": false,
3512
+ "feel": "required",
3465
3513
  "group": "authorization",
3466
- "feel": "optional",
3467
3514
  "binding": {
3468
- "type": "zeebe:property",
3469
- "name": "inbound.auth.apiKey"
3515
+ "name": "inbound.auth.jwt.permissionsExpression",
3516
+ "type": "zeebe:property"
3470
3517
  },
3471
3518
  "condition": {
3472
- "property": "authorizationType",
3473
- "equals": "APIKEY"
3519
+ "property": "inbound.auth.type",
3520
+ "equals": "JWT",
3521
+ "type": "simple"
3474
3522
  },
3475
- "constraints": {
3476
- "notEmpty": true
3477
- }
3523
+ "type": "String"
3478
3524
  },
3479
3525
  {
3480
- "label": "API Key locator",
3481
- "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>",
3482
- "type": "String",
3483
- "group": "authorization",
3526
+ "id": "inbound.auth.jwt.requiredPermissions",
3527
+ "label": "Required roles",
3528
+ "description": "List of roles to test JWT roles against",
3529
+ "optional": false,
3484
3530
  "feel": "required",
3531
+ "group": "authorization",
3485
3532
  "binding": {
3486
- "type": "zeebe:property",
3487
- "name": "inbound.auth.apiKeyLocator"
3533
+ "name": "inbound.auth.jwt.requiredPermissions",
3534
+ "type": "zeebe:property"
3488
3535
  },
3489
3536
  "condition": {
3490
- "property": "authorizationType",
3491
- "equals": "APIKEY"
3537
+ "property": "inbound.auth.type",
3538
+ "equals": "JWT",
3539
+ "type": "simple"
3492
3540
  },
3493
- "constraints": {
3494
- "notEmpty": true
3541
+ "type": "String"
3542
+ },
3543
+ {
3544
+ "id": "inbound.responseExpression",
3545
+ "label": "Response expression",
3546
+ "description": "Expression used to generate the HTTP response",
3547
+ "optional": true,
3548
+ "feel": "required",
3549
+ "group": "webhookResponse",
3550
+ "binding": {
3551
+ "name": "inbound.responseExpression",
3552
+ "type": "zeebe:property"
3495
3553
  },
3496
- "value": "=split(request.headers.authorization, \" \")[2]"
3554
+ "type": "Text"
3497
3555
  },
3498
3556
  {
3499
- "label": "Correlation key (process)",
3500
- "type": "String",
3501
- "group": "activation",
3557
+ "id": "inbound.verificationExpression",
3558
+ "label": "One time verification response expression",
3559
+ "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>",
3560
+ "optional": true,
3502
3561
  "feel": "required",
3503
- "description": "Sets up the correlation key from process variables",
3562
+ "group": "webhookResponse",
3504
3563
  "binding": {
3505
- "type": "bpmn:Message#zeebe:subscription#property",
3506
- "name": "correlationKey"
3564
+ "name": "inbound.verificationExpression",
3565
+ "type": "zeebe:property"
3507
3566
  },
3508
- "constraints": {
3509
- "notEmpty": true
3510
- }
3567
+ "type": "Text"
3511
3568
  },
3512
3569
  {
3513
- "label": "Correlation key (payload)",
3514
- "type": "String",
3570
+ "id": "activationCondition",
3571
+ "label": "Activation condition",
3572
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
3573
+ "optional": true,
3574
+ "feel": "required",
3575
+ "group": "activation",
3576
+ "binding": {
3577
+ "name": "activationCondition",
3578
+ "type": "zeebe:property"
3579
+ },
3580
+ "type": "String"
3581
+ },
3582
+ {
3583
+ "id": "consumeUnmatchedEvents",
3584
+ "label": "Consume unmatched events",
3585
+ "value": true,
3515
3586
  "group": "activation",
3587
+ "binding": {
3588
+ "name": "consumeUnmatchedEvents",
3589
+ "type": "zeebe:property"
3590
+ },
3591
+ "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",
3592
+ "type": "Boolean"
3593
+ },
3594
+ {
3595
+ "id": "correlationKeyProcess",
3596
+ "label": "Correlation key (process)",
3597
+ "description": "Sets up the correlation key from process variables",
3598
+ "constraints": {
3599
+ "notEmpty": true
3600
+ },
3516
3601
  "feel": "required",
3602
+ "group": "correlation",
3517
3603
  "binding": {
3518
- "type": "zeebe:property",
3519
- "name": "correlationKeyExpression"
3604
+ "name": "correlationKey",
3605
+ "type": "bpmn:Message#zeebe:subscription#property"
3520
3606
  },
3607
+ "type": "String"
3608
+ },
3609
+ {
3610
+ "id": "correlationKeyPayload",
3611
+ "label": "Correlation key (payload)",
3521
3612
  "description": "Extracts the correlation key from the incoming message payload",
3522
3613
  "constraints": {
3523
3614
  "notEmpty": true
3524
- }
3615
+ },
3616
+ "feel": "required",
3617
+ "group": "correlation",
3618
+ "binding": {
3619
+ "name": "correlationKeyExpression",
3620
+ "type": "zeebe:property"
3621
+ },
3622
+ "type": "String"
3525
3623
  },
3526
3624
  {
3527
- "label": "Condition",
3528
- "type": "String",
3529
- "group": "activation",
3530
- "feel": "required",
3625
+ "id": "messageIdExpression",
3626
+ "label": "Message ID expression",
3627
+ "description": "Expression to extract unique identifier of a message",
3531
3628
  "optional": true,
3629
+ "feel": "required",
3630
+ "group": "correlation",
3532
3631
  "binding": {
3533
- "type": "zeebe:property",
3534
- "name": "activationCondition"
3632
+ "name": "messageIdExpression",
3633
+ "type": "zeebe:property"
3535
3634
  },
3536
- "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>"
3635
+ "type": "String"
3537
3636
  },
3538
3637
  {
3539
- "label": "Result variable",
3540
- "type": "String",
3541
- "group": "variable-mapping",
3638
+ "id": "messageTtl",
3639
+ "label": "Message TTL",
3640
+ "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
3542
3641
  "optional": true,
3642
+ "constraints": {
3643
+ "notEmpty": false,
3644
+ "pattern": {
3645
+ "value": "^(PT.*|)$",
3646
+ "message": "must be an ISO-8601 duration"
3647
+ }
3648
+ },
3649
+ "feel": "optional",
3650
+ "group": "correlation",
3543
3651
  "binding": {
3544
- "type": "zeebe:property",
3545
- "name": "resultVariable"
3652
+ "name": "messageTtl",
3653
+ "type": "zeebe:property"
3546
3654
  },
3547
- "description": "Name of variable to store the result of the connector in"
3655
+ "type": "String"
3548
3656
  },
3549
3657
  {
3550
- "label": "Result expression",
3551
- "type": "String",
3552
- "group": "variable-mapping",
3553
- "feel": "required",
3554
- "optional": true,
3658
+ "id": "messageNameUuid",
3659
+ "generatedValue": {
3660
+ "type": "uuid"
3661
+ },
3662
+ "group": "correlation",
3555
3663
  "binding": {
3556
- "type": "zeebe:property",
3557
- "name": "resultExpression"
3664
+ "name": "name",
3665
+ "type": "bpmn:Message#property"
3558
3666
  },
3559
- "description": "Expression to map the inbound payload to process variables"
3667
+ "type": "Hidden"
3560
3668
  },
3561
3669
  {
3562
- "label": "Response body expression",
3563
- "type": "Text",
3564
- "group": "webhookResponse",
3670
+ "id": "deduplicationModeManualFlag",
3671
+ "label": "Manual mode",
3672
+ "description": "By default, similar connectors receive the same deduplication ID. Customize by activating manual mode",
3673
+ "value": false,
3674
+ "group": "deduplication",
3675
+ "binding": {
3676
+ "name": "deduplicationModeManualFlag",
3677
+ "type": "zeebe:property"
3678
+ },
3679
+ "type": "Boolean"
3680
+ },
3681
+ {
3682
+ "id": "deduplicationId",
3683
+ "label": "Deduplication ID",
3684
+ "constraints": {
3685
+ "notEmpty": true,
3686
+ "pattern": {
3687
+ "value": "^[a-zA-Z0-9_-]+$",
3688
+ "message": "can only contain alphanumeric characters, dashes, and underscores"
3689
+ }
3690
+ },
3691
+ "group": "deduplication",
3692
+ "binding": {
3693
+ "name": "deduplicationId",
3694
+ "type": "zeebe:property"
3695
+ },
3696
+ "condition": {
3697
+ "property": "deduplicationModeManualFlag",
3698
+ "equals": true,
3699
+ "type": "simple"
3700
+ },
3701
+ "type": "String"
3702
+ },
3703
+ {
3704
+ "id": "deduplicationModeManual",
3705
+ "value": "MANUAL",
3706
+ "group": "deduplication",
3707
+ "binding": {
3708
+ "name": "deduplicationMode",
3709
+ "type": "zeebe:property"
3710
+ },
3711
+ "condition": {
3712
+ "property": "deduplicationId",
3713
+ "isActive": true,
3714
+ "type": "simple"
3715
+ },
3716
+ "type": "Hidden"
3717
+ },
3718
+ {
3719
+ "id": "deduplicationModeAuto",
3720
+ "value": "AUTO",
3721
+ "group": "deduplication",
3722
+ "binding": {
3723
+ "name": "deduplicationMode",
3724
+ "type": "zeebe:property"
3725
+ },
3726
+ "condition": {
3727
+ "property": "deduplicationId",
3728
+ "isActive": false,
3729
+ "type": "simple"
3730
+ },
3731
+ "type": "Hidden"
3732
+ },
3733
+ {
3734
+ "id": "resultVariable",
3735
+ "label": "Result variable",
3736
+ "description": "Name of variable to store the response in",
3737
+ "group": "output",
3738
+ "binding": {
3739
+ "name": "resultVariable",
3740
+ "type": "zeebe:property"
3741
+ },
3742
+ "type": "String"
3743
+ },
3744
+ {
3745
+ "id": "resultExpression",
3746
+ "label": "Result expression",
3747
+ "description": "Expression to map the response into process variables",
3565
3748
  "feel": "required",
3566
- "optional": true,
3749
+ "group": "output",
3567
3750
  "binding": {
3568
- "type": "zeebe:property",
3569
- "name": "inbound.responseBodyExpression"
3751
+ "name": "resultExpression",
3752
+ "type": "zeebe:property"
3570
3753
  },
3571
- "description": "Specify condition and response"
3754
+ "type": "Text"
3572
3755
  }
3573
3756
  ],
3574
3757
  "icon": {
3575
- "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"
3576
- },
3577
- "engines": {
3578
- "camunda": "^8.2"
3758
+ "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
3579
3759
  }
3580
3760
  },
3581
3761
  {
3582
3762
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
3583
3763
  "name": "Webhook Boundary Event Connector",
3584
3764
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
3765
+ "version": 3,
3585
3766
  "description": "Configure webhook to receive callbacks",
3586
- "metadata": {
3587
- "keywords": []
3588
- },
3589
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
3590
- "version": 14,
3767
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
3591
3768
  "category": {
3592
3769
  "id": "connectors",
3593
3770
  "name": "Connectors"
@@ -3597,9 +3774,6 @@
3597
3774
  "value": "bpmn:BoundaryEvent",
3598
3775
  "eventDefinition": "bpmn:MessageEventDefinition"
3599
3776
  },
3600
- "engines": {
3601
- "camunda": "^8.3"
3602
- },
3603
3777
  "groups": [
3604
3778
  {
3605
3779
  "id": "endpoint",
@@ -3613,53 +3787,52 @@
3613
3787
  "id": "authorization",
3614
3788
  "label": "Authorization"
3615
3789
  },
3616
- {
3617
- "id": "webhookResponse",
3618
- "label": "Webhook response"
3619
- },
3620
3790
  {
3621
3791
  "id": "activation",
3622
3792
  "label": "Activation"
3623
3793
  },
3624
3794
  {
3625
- "id": "synchronousResponse",
3626
- "label": "Response mode"
3795
+ "id": "variable-mapping",
3796
+ "label": "Variable mapping"
3627
3797
  },
3628
3798
  {
3629
- "id": "correlation",
3630
- "label": "Correlation",
3631
- "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
3632
- },
3633
- {
3634
- "id": "deduplication",
3635
- "label": "Deduplication",
3636
- "tooltip": "Deduplication allows you to configure multiple inbound connector elements to reuse the same backend (consumer/thread/endpoint) by sharing the same deduplication ID."
3637
- },
3638
- {
3639
- "id": "output",
3640
- "label": "Output mapping"
3799
+ "id": "webhookResponse",
3800
+ "label": "Webhook response"
3641
3801
  }
3642
3802
  ],
3643
3803
  "properties": [
3644
3804
  {
3805
+ "type": "Hidden",
3645
3806
  "value": "io.camunda:webhook:1",
3646
3807
  "binding": {
3647
- "name": "inbound.type",
3648
- "type": "zeebe:property"
3808
+ "type": "zeebe:property",
3809
+ "name": "inbound.type"
3810
+ }
3811
+ },
3812
+ {
3813
+ "type": "Hidden",
3814
+ "generatedValue": {
3815
+ "type": "uuid"
3649
3816
  },
3650
- "type": "Hidden"
3817
+ "binding": {
3818
+ "type": "bpmn:Message#property",
3819
+ "name": "name"
3820
+ }
3651
3821
  },
3652
3822
  {
3653
- "id": "inbound.method",
3823
+ "type": "Hidden",
3824
+ "value": "ConfigurableInboundWebhook",
3825
+ "binding": {
3826
+ "type": "zeebe:property",
3827
+ "name": "inbound.subtype"
3828
+ }
3829
+ },
3830
+ {
3831
+ "id": "webhookMethod",
3654
3832
  "label": "Webhook method",
3833
+ "group": "endpoint",
3655
3834
  "description": "Select HTTP method",
3656
- "optional": false,
3657
3835
  "value": "any",
3658
- "group": "endpoint",
3659
- "binding": {
3660
- "name": "inbound.method",
3661
- "type": "zeebe:property"
3662
- },
3663
3836
  "type": "Dropdown",
3664
3837
  "choices": [
3665
3838
  {
@@ -3667,53 +3840,50 @@
3667
3840
  "value": "any"
3668
3841
  },
3669
3842
  {
3670
- "name": "GET",
3843
+ "name": "Get",
3671
3844
  "value": "get"
3672
3845
  },
3673
3846
  {
3674
- "name": "POST",
3847
+ "name": "Post",
3675
3848
  "value": "post"
3676
3849
  },
3677
3850
  {
3678
- "name": "PUT",
3851
+ "name": "Put",
3679
3852
  "value": "put"
3680
3853
  },
3681
3854
  {
3682
- "name": "DELETE",
3855
+ "name": "Delete",
3683
3856
  "value": "delete"
3684
3857
  }
3685
- ]
3858
+ ],
3859
+ "binding": {
3860
+ "type": "zeebe:property",
3861
+ "name": "inbound.method"
3862
+ }
3686
3863
  },
3687
3864
  {
3688
- "id": "inbound.context",
3689
3865
  "label": "Webhook ID",
3866
+ "type": "String",
3867
+ "group": "endpoint",
3868
+ "binding": {
3869
+ "type": "zeebe:property",
3870
+ "name": "inbound.context"
3871
+ },
3690
3872
  "description": "The webhook ID is a part of the URL",
3691
- "optional": false,
3692
3873
  "constraints": {
3693
3874
  "notEmpty": true,
3694
3875
  "pattern": {
3695
3876
  "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
3696
3877
  "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
3697
3878
  }
3698
- },
3699
- "group": "endpoint",
3700
- "binding": {
3701
- "name": "inbound.context",
3702
- "type": "zeebe:property"
3703
- },
3704
- "type": "String"
3879
+ }
3705
3880
  },
3706
3881
  {
3707
- "id": "inbound.shouldValidateHmac",
3882
+ "id": "shouldValidateHmac",
3708
3883
  "label": "HMAC authentication",
3709
- "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",
3710
- "optional": false,
3711
- "value": "disabled",
3712
3884
  "group": "authentication",
3713
- "binding": {
3714
- "name": "inbound.shouldValidateHmac",
3715
- "type": "zeebe:property"
3716
- },
3885
+ "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",
3886
+ "value": "disabled",
3717
3887
  "type": "Dropdown",
3718
3888
  "choices": [
3719
3889
  {
@@ -3724,60 +3894,47 @@
3724
3894
  "name": "Disabled",
3725
3895
  "value": "disabled"
3726
3896
  }
3727
- ]
3897
+ ],
3898
+ "binding": {
3899
+ "type": "zeebe:property",
3900
+ "name": "inbound.shouldValidateHmac"
3901
+ }
3728
3902
  },
3729
3903
  {
3730
- "id": "inbound.hmacSecret",
3731
3904
  "label": "HMAC secret key",
3732
3905
  "description": "Shared secret key",
3733
- "optional": true,
3734
- "feel": "optional",
3906
+ "type": "String",
3735
3907
  "group": "authentication",
3908
+ "optional": true,
3736
3909
  "binding": {
3737
- "name": "inbound.hmacSecret",
3738
- "type": "zeebe:property"
3910
+ "type": "zeebe:property",
3911
+ "name": "inbound.hmacSecret"
3739
3912
  },
3740
3913
  "condition": {
3741
- "property": "inbound.shouldValidateHmac",
3742
- "equals": "enabled",
3743
- "type": "simple"
3744
- },
3745
- "type": "String"
3914
+ "property": "shouldValidateHmac",
3915
+ "equals": "enabled"
3916
+ }
3746
3917
  },
3747
3918
  {
3748
- "id": "inbound.hmacHeader",
3749
3919
  "label": "HMAC header",
3750
3920
  "description": "Name of header attribute that will contain the HMAC value",
3751
- "optional": true,
3752
- "feel": "optional",
3921
+ "type": "String",
3753
3922
  "group": "authentication",
3923
+ "optional": true,
3754
3924
  "binding": {
3755
- "name": "inbound.hmacHeader",
3756
- "type": "zeebe:property"
3925
+ "type": "zeebe:property",
3926
+ "name": "inbound.hmacHeader"
3757
3927
  },
3758
3928
  "condition": {
3759
- "property": "inbound.shouldValidateHmac",
3760
- "equals": "enabled",
3761
- "type": "simple"
3762
- },
3763
- "type": "String"
3929
+ "property": "shouldValidateHmac",
3930
+ "equals": "enabled"
3931
+ }
3764
3932
  },
3765
3933
  {
3766
- "id": "inbound.hmacAlgorithm",
3767
3934
  "label": "HMAC algorithm",
3935
+ "group": "authentication",
3768
3936
  "description": "Choose HMAC algorithm",
3769
- "optional": false,
3770
3937
  "value": "sha_256",
3771
- "group": "authentication",
3772
- "binding": {
3773
- "name": "inbound.hmacAlgorithm",
3774
- "type": "zeebe:property"
3775
- },
3776
- "condition": {
3777
- "property": "inbound.shouldValidateHmac",
3778
- "equals": "enabled",
3779
- "type": "simple"
3780
- },
3781
3938
  "type": "Dropdown",
3782
3939
  "choices": [
3783
3940
  {
@@ -3792,435 +3949,288 @@
3792
3949
  "name": "SHA-512",
3793
3950
  "value": "sha_512"
3794
3951
  }
3795
- ]
3952
+ ],
3953
+ "binding": {
3954
+ "type": "zeebe:property",
3955
+ "name": "inbound.hmacAlgorithm"
3956
+ },
3957
+ "condition": {
3958
+ "property": "shouldValidateHmac",
3959
+ "equals": "enabled"
3960
+ }
3796
3961
  },
3797
3962
  {
3798
- "id": "inbound.hmacScopes",
3799
3963
  "label": "HMAC scopes",
3800
- "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>",
3801
- "optional": true,
3802
- "feel": "required",
3803
3964
  "group": "authentication",
3965
+ "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>",
3966
+ "feel": "required",
3967
+ "type": "String",
3968
+ "optional": true,
3804
3969
  "binding": {
3805
- "name": "inbound.hmacScopes",
3806
- "type": "zeebe:property"
3970
+ "type": "zeebe:property",
3971
+ "name": "inbound.hmacScopes"
3807
3972
  },
3808
3973
  "condition": {
3809
- "property": "inbound.shouldValidateHmac",
3810
- "equals": "enabled",
3811
- "type": "simple"
3812
- },
3813
- "type": "String"
3974
+ "property": "shouldValidateHmac",
3975
+ "equals": "enabled"
3976
+ }
3814
3977
  },
3815
3978
  {
3816
- "id": "inbound.auth.type",
3979
+ "id": "authorizationType",
3817
3980
  "label": "Authorization type",
3818
- "description": "Choose the authorization type",
3819
- "value": "NONE",
3820
3981
  "group": "authorization",
3821
- "binding": {
3822
- "name": "inbound.auth.type",
3823
- "type": "zeebe:property"
3824
- },
3982
+ "description": "Choose the authorization type.",
3983
+ "value": "NONE",
3825
3984
  "type": "Dropdown",
3826
3985
  "choices": [
3827
3986
  {
3828
3987
  "name": "None",
3829
3988
  "value": "NONE"
3830
3989
  },
3990
+ {
3991
+ "name": "JWT",
3992
+ "value": "JWT"
3993
+ },
3831
3994
  {
3832
3995
  "name": "Basic",
3833
3996
  "value": "BASIC"
3834
3997
  },
3835
3998
  {
3836
- "name": "API key",
3999
+ "name": "API Key",
3837
4000
  "value": "APIKEY"
3838
- },
3839
- {
3840
- "name": "JWT",
3841
- "value": "JWT"
3842
4001
  }
3843
- ]
4002
+ ],
4003
+ "binding": {
4004
+ "type": "zeebe:property",
4005
+ "name": "inbound.auth.type"
4006
+ }
3844
4007
  },
3845
4008
  {
3846
- "id": "inbound.auth.username",
3847
- "label": "Username",
3848
- "description": "Username for basic authentication",
3849
- "optional": false,
3850
- "feel": "optional",
4009
+ "label": "JWK url",
4010
+ "description": "Well-known url of JWKs",
4011
+ "type": "String",
3851
4012
  "group": "authorization",
4013
+ "feel": "optional",
4014
+ "optional": true,
3852
4015
  "binding": {
3853
- "name": "inbound.auth.username",
3854
- "type": "zeebe:property"
4016
+ "type": "zeebe:property",
4017
+ "name": "inbound.auth.jwt.jwkUrl"
3855
4018
  },
3856
4019
  "condition": {
3857
- "property": "inbound.auth.type",
3858
- "equals": "BASIC",
3859
- "type": "simple"
3860
- },
3861
- "type": "String"
4020
+ "property": "authorizationType",
4021
+ "equals": "JWT"
4022
+ }
3862
4023
  },
3863
4024
  {
3864
- "id": "inbound.auth.password",
3865
- "label": "Password",
3866
- "description": "Password for basic authentication",
3867
- "optional": false,
3868
- "feel": "optional",
4025
+ "label": "JWT role property expression",
4026
+ "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>",
4027
+ "type": "String",
3869
4028
  "group": "authorization",
4029
+ "feel": "required",
4030
+ "optional": true,
3870
4031
  "binding": {
3871
- "name": "inbound.auth.password",
3872
- "type": "zeebe:property"
4032
+ "type": "zeebe:property",
4033
+ "name": "inbound.auth.jwt.permissionsExpression"
3873
4034
  },
3874
4035
  "condition": {
3875
- "property": "inbound.auth.type",
3876
- "equals": "BASIC",
3877
- "type": "simple"
3878
- },
3879
- "type": "String"
4036
+ "property": "authorizationType",
4037
+ "equals": "JWT"
4038
+ }
3880
4039
  },
3881
4040
  {
3882
- "id": "inbound.auth.apiKey",
3883
- "label": "API key",
3884
- "description": "Expected API key",
3885
- "optional": false,
3886
- "feel": "optional",
4041
+ "label": "Required roles",
4042
+ "description": "List of roles to test JWT roles against",
4043
+ "type": "String",
3887
4044
  "group": "authorization",
4045
+ "feel": "required",
4046
+ "optional": true,
3888
4047
  "binding": {
3889
- "name": "inbound.auth.apiKey",
3890
- "type": "zeebe:property"
4048
+ "type": "zeebe:property",
4049
+ "name": "inbound.auth.jwt.requiredPermissions"
3891
4050
  },
3892
4051
  "condition": {
3893
- "property": "inbound.auth.type",
3894
- "equals": "APIKEY",
3895
- "type": "simple"
3896
- },
3897
- "type": "String"
4052
+ "property": "authorizationType",
4053
+ "equals": "JWT"
4054
+ }
3898
4055
  },
3899
4056
  {
3900
- "id": "inbound.auth.apiKeyLocator",
3901
- "label": "API key locator",
3902
- "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>",
3903
- "optional": false,
3904
- "value": "=split(request.headers.authorization, \" \")[2]",
3905
- "constraints": {
3906
- "notEmpty": true
3907
- },
3908
- "feel": "required",
4057
+ "label": "Username",
4058
+ "description": "Username for basic authentication",
4059
+ "type": "String",
3909
4060
  "group": "authorization",
4061
+ "feel": "optional",
3910
4062
  "binding": {
3911
- "name": "inbound.auth.apiKeyLocator",
3912
- "type": "zeebe:property"
4063
+ "type": "zeebe:property",
4064
+ "name": "inbound.auth.username"
3913
4065
  },
3914
4066
  "condition": {
3915
- "property": "inbound.auth.type",
3916
- "equals": "APIKEY",
3917
- "type": "simple"
4067
+ "property": "authorizationType",
4068
+ "equals": "BASIC"
3918
4069
  },
3919
- "type": "String"
4070
+ "constraints": {
4071
+ "notEmpty": true
4072
+ }
3920
4073
  },
3921
4074
  {
3922
- "id": "inbound.auth.jwt.jwkUrl",
3923
- "label": "JWK URL",
3924
- "description": "Well-known URL of JWKs",
3925
- "optional": false,
3926
- "feel": "optional",
4075
+ "label": "Password",
4076
+ "description": "Password for basic authentication",
4077
+ "type": "String",
3927
4078
  "group": "authorization",
4079
+ "feel": "optional",
3928
4080
  "binding": {
3929
- "name": "inbound.auth.jwt.jwkUrl",
3930
- "type": "zeebe:property"
4081
+ "type": "zeebe:property",
4082
+ "name": "inbound.auth.password"
3931
4083
  },
3932
4084
  "condition": {
3933
- "property": "inbound.auth.type",
3934
- "equals": "JWT",
3935
- "type": "simple"
4085
+ "property": "authorizationType",
4086
+ "equals": "BASIC"
3936
4087
  },
3937
- "type": "String"
4088
+ "constraints": {
4089
+ "notEmpty": true
4090
+ }
3938
4091
  },
3939
4092
  {
3940
- "id": "inbound.auth.jwt.permissionsExpression",
3941
- "label": "JWT role property expression",
3942
- "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>",
3943
- "optional": false,
3944
- "feel": "required",
4093
+ "label": "API Key",
4094
+ "description": "Expected API key",
4095
+ "type": "String",
3945
4096
  "group": "authorization",
4097
+ "feel": "optional",
3946
4098
  "binding": {
3947
- "name": "inbound.auth.jwt.permissionsExpression",
3948
- "type": "zeebe:property"
4099
+ "type": "zeebe:property",
4100
+ "name": "inbound.auth.apiKey"
3949
4101
  },
3950
4102
  "condition": {
3951
- "property": "inbound.auth.type",
3952
- "equals": "JWT",
3953
- "type": "simple"
4103
+ "property": "authorizationType",
4104
+ "equals": "APIKEY"
3954
4105
  },
3955
- "type": "String"
4106
+ "constraints": {
4107
+ "notEmpty": true
4108
+ }
3956
4109
  },
3957
4110
  {
3958
- "id": "inbound.auth.jwt.requiredPermissions",
3959
- "label": "Required roles",
3960
- "description": "List of roles to test JWT roles against",
3961
- "optional": false,
3962
- "feel": "required",
4111
+ "label": "API Key locator",
4112
+ "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>",
4113
+ "type": "String",
3963
4114
  "group": "authorization",
4115
+ "feel": "required",
3964
4116
  "binding": {
3965
- "name": "inbound.auth.jwt.requiredPermissions",
3966
- "type": "zeebe:property"
4117
+ "type": "zeebe:property",
4118
+ "name": "inbound.auth.apiKeyLocator"
3967
4119
  },
3968
4120
  "condition": {
3969
- "property": "inbound.auth.type",
3970
- "equals": "JWT",
3971
- "type": "simple"
3972
- },
3973
- "type": "String"
3974
- },
3975
- {
3976
- "id": "inbound.responseExpression",
3977
- "label": "Response expression",
3978
- "description": "Expression used to generate the HTTP response",
3979
- "optional": true,
3980
- "feel": "required",
3981
- "group": "webhookResponse",
3982
- "binding": {
3983
- "name": "inbound.responseExpression",
3984
- "type": "zeebe:property"
4121
+ "property": "authorizationType",
4122
+ "equals": "APIKEY"
3985
4123
  },
3986
- "type": "Text"
3987
- },
3988
- {
3989
- "id": "inbound.verificationExpression",
3990
- "label": "One time verification response expression",
3991
- "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>",
3992
- "optional": true,
3993
- "feel": "required",
3994
- "group": "webhookResponse",
3995
- "binding": {
3996
- "name": "inbound.verificationExpression",
3997
- "type": "zeebe:property"
4124
+ "constraints": {
4125
+ "notEmpty": true
3998
4126
  },
3999
- "type": "Text"
4127
+ "value": "=split(request.headers.authorization, \" \")[2]"
4000
4128
  },
4001
4129
  {
4002
- "id": "activationCondition",
4003
- "label": "Activation condition",
4004
- "description": "Condition under which the Connector triggers. Leave empty to catch all events",
4005
- "optional": true,
4006
- "feel": "required",
4130
+ "label": "Correlation key (process)",
4131
+ "type": "String",
4007
4132
  "group": "activation",
4133
+ "feel": "required",
4134
+ "description": "Sets up the correlation key from process variables",
4008
4135
  "binding": {
4009
- "name": "activationCondition",
4010
- "type": "zeebe:property"
4136
+ "type": "bpmn:Message#zeebe:subscription#property",
4137
+ "name": "correlationKey"
4011
4138
  },
4012
- "type": "String"
4139
+ "constraints": {
4140
+ "notEmpty": true
4141
+ }
4013
4142
  },
4014
4143
  {
4015
- "id": "consumeUnmatchedEvents",
4016
- "label": "Consume unmatched events",
4017
- "value": true,
4144
+ "label": "Correlation key (payload)",
4145
+ "type": "String",
4018
4146
  "group": "activation",
4019
- "binding": {
4020
- "name": "consumeUnmatchedEvents",
4021
- "type": "zeebe:property"
4022
- },
4023
- "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",
4024
- "type": "Boolean"
4025
- },
4026
- {
4027
- "id": "synchronousResponse",
4028
- "label": "Response mode",
4029
- "description": "Synchronous or Asynchronous <a href=\"https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#response-mode\" target=\"_blank\">response handling</a>",
4030
- "value": "false",
4031
- "group": "synchronousResponse",
4032
- "binding": {
4033
- "name": "synchronousResponse",
4034
- "type": "zeebe:property"
4035
- },
4036
- "tooltip": "Select synchronous to wait for the result of the correlation. This is either the result of the created process or the process instance key that matched the correlated message subscription. Select asynchronous to trigger the correlation and return immediately without waiting for a result. This affects the data available in the <a href=\"https://docs.camunda.io/docs/components/connectors/connectors/protocol/http-webhook/#use-the-correlation-object\">correlation</a> object for the response expression.",
4037
- "type": "Dropdown",
4038
- "choices": [
4039
- {
4040
- "name": "Asynchronous",
4041
- "value": "false"
4042
- },
4043
- {
4044
- "name": "Synchronous",
4045
- "value": "true"
4046
- }
4047
- ]
4048
- },
4049
- {
4050
- "id": "correlationKeyProcess",
4051
- "label": "Correlation key (process)",
4052
- "description": "Sets up the correlation key from process variables",
4053
- "constraints": {
4054
- "notEmpty": true
4055
- },
4056
4147
  "feel": "required",
4057
- "group": "correlation",
4058
4148
  "binding": {
4059
- "name": "correlationKey",
4060
- "type": "bpmn:Message#zeebe:subscription#property"
4149
+ "type": "zeebe:property",
4150
+ "name": "correlationKeyExpression"
4061
4151
  },
4062
- "type": "String"
4063
- },
4064
- {
4065
- "id": "correlationKeyPayload",
4066
- "label": "Correlation key (payload)",
4067
4152
  "description": "Extracts the correlation key from the incoming message payload",
4068
4153
  "constraints": {
4069
4154
  "notEmpty": true
4070
- },
4071
- "feel": "required",
4072
- "group": "correlation",
4073
- "binding": {
4074
- "name": "correlationKeyExpression",
4075
- "type": "zeebe:property"
4076
- },
4077
- "type": "String"
4155
+ }
4078
4156
  },
4079
4157
  {
4080
- "id": "messageIdExpression",
4081
4158
  "label": "Message ID expression",
4082
- "description": "Expression to extract unique identifier of a message",
4083
- "optional": true,
4084
4159
  "feel": "required",
4085
- "group": "correlation",
4086
- "binding": {
4087
- "name": "messageIdExpression",
4088
- "type": "zeebe:property"
4089
- },
4090
- "condition": {
4091
- "property": "synchronousResponse",
4092
- "equals": "false",
4093
- "type": "simple"
4094
- },
4095
- "type": "String"
4096
- },
4097
- {
4098
- "id": "messageTtl",
4099
- "label": "Message TTL",
4100
- "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
4160
+ "type": "String",
4101
4161
  "optional": true,
4102
- "constraints": {
4103
- "notEmpty": false,
4104
- "pattern": {
4105
- "value": "^(PT.*|)$",
4106
- "message": "must be an ISO-8601 duration"
4107
- }
4108
- },
4109
- "feel": "optional",
4110
- "group": "correlation",
4111
- "binding": {
4112
- "name": "messageTtl",
4113
- "type": "zeebe:property"
4114
- },
4115
- "condition": {
4116
- "property": "synchronousResponse",
4117
- "equals": "false",
4118
- "type": "simple"
4119
- },
4120
- "type": "String"
4121
- },
4122
- {
4123
- "id": "messageNameUuid",
4124
- "generatedValue": {
4125
- "type": "uuid"
4126
- },
4127
- "group": "correlation",
4128
- "binding": {
4129
- "name": "name",
4130
- "type": "bpmn:Message#property"
4131
- },
4132
- "type": "Hidden"
4133
- },
4134
- {
4135
- "id": "deduplicationModeManualFlag",
4136
- "label": "Manual mode",
4137
- "description": "By default, similar connectors receive the same deduplication ID. Customize by activating manual mode",
4138
- "value": false,
4139
- "group": "deduplication",
4162
+ "group": "activation",
4140
4163
  "binding": {
4141
- "name": "deduplicationModeManualFlag",
4142
- "type": "zeebe:property"
4164
+ "type": "zeebe:property",
4165
+ "name": "messageIdExpression"
4143
4166
  },
4144
- "type": "Boolean"
4167
+ "description": "Expression to extract unique identifier of a message"
4145
4168
  },
4146
4169
  {
4147
- "id": "deduplicationId",
4148
- "label": "Deduplication ID",
4149
- "constraints": {
4150
- "notEmpty": true,
4151
- "pattern": {
4152
- "value": "^[a-zA-Z0-9_-]+$",
4153
- "message": "can only contain alphanumeric characters, dashes, and underscores"
4154
- }
4155
- },
4156
- "group": "deduplication",
4170
+ "label": "Condition",
4171
+ "type": "String",
4172
+ "group": "activation",
4173
+ "feel": "required",
4174
+ "optional": true,
4157
4175
  "binding": {
4158
- "name": "deduplicationId",
4159
- "type": "zeebe:property"
4160
- },
4161
- "condition": {
4162
- "property": "deduplicationModeManualFlag",
4163
- "equals": true,
4164
- "type": "simple"
4176
+ "type": "zeebe:property",
4177
+ "name": "activationCondition"
4165
4178
  },
4166
- "type": "String"
4179
+ "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>"
4167
4180
  },
4168
4181
  {
4169
- "id": "deduplicationModeManual",
4170
- "value": "MANUAL",
4171
- "group": "deduplication",
4182
+ "label": "Result variable",
4183
+ "type": "String",
4184
+ "group": "variable-mapping",
4185
+ "optional": true,
4172
4186
  "binding": {
4173
- "name": "deduplicationMode",
4174
- "type": "zeebe:property"
4175
- },
4176
- "condition": {
4177
- "property": "deduplicationId",
4178
- "isActive": true,
4179
- "type": "simple"
4187
+ "type": "zeebe:property",
4188
+ "name": "resultVariable"
4180
4189
  },
4181
- "type": "Hidden"
4190
+ "description": "Name of variable to store the result of the connector in"
4182
4191
  },
4183
4192
  {
4184
- "id": "deduplicationModeAuto",
4185
- "value": "AUTO",
4186
- "group": "deduplication",
4193
+ "label": "Result expression",
4194
+ "type": "String",
4195
+ "group": "variable-mapping",
4196
+ "feel": "required",
4197
+ "optional": true,
4187
4198
  "binding": {
4188
- "name": "deduplicationMode",
4189
- "type": "zeebe:property"
4190
- },
4191
- "condition": {
4192
- "property": "deduplicationId",
4193
- "isActive": false,
4194
- "type": "simple"
4199
+ "type": "zeebe:property",
4200
+ "name": "resultExpression"
4195
4201
  },
4196
- "type": "Hidden"
4202
+ "description": "Expression to map the inbound payload to process variables"
4197
4203
  },
4198
4204
  {
4199
- "id": "resultVariable",
4200
- "label": "Result variable",
4201
- "description": "Name of variable to store the response in",
4202
- "group": "output",
4205
+ "label": "One time verification response expression",
4206
+ "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>",
4207
+ "type": "Text",
4208
+ "group": "webhookResponse",
4209
+ "feel": "required",
4210
+ "optional": true,
4203
4211
  "binding": {
4204
- "name": "resultVariable",
4205
- "type": "zeebe:property"
4206
- },
4207
- "type": "String"
4212
+ "type": "zeebe:property",
4213
+ "name": "inbound.verificationExpression"
4214
+ }
4208
4215
  },
4209
4216
  {
4210
- "id": "resultExpression",
4211
- "label": "Result expression",
4212
- "description": "Expression to map the response into process variables",
4217
+ "label": "Response body expression",
4218
+ "type": "Text",
4219
+ "group": "webhookResponse",
4213
4220
  "feel": "required",
4214
- "group": "output",
4221
+ "optional": true,
4215
4222
  "binding": {
4216
- "name": "resultExpression",
4217
- "type": "zeebe:property"
4223
+ "type": "zeebe:property",
4224
+ "name": "inbound.responseBodyExpression"
4218
4225
  },
4219
- "type": "Text"
4226
+ "description": "Specify condition and response"
4220
4227
  }
4221
4228
  ],
4222
4229
  "icon": {
4223
- "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
4230
+ "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"
4231
+ },
4232
+ "engines": {
4233
+ "camunda": "^8.5"
4224
4234
  }
4225
4235
  }
4226
4236
  ]