@camunda/connectors-element-templates 1.0.17 → 1.0.19

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 +4 -7
  4. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-intermediate.json +8 -8
  5. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-receive.json +8 -8
  6. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-intermediate.json +8 -8
  7. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-receive.json +8 -8
  8. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +9 -12
  9. package/src/element-templates/agenticai-aiagent-job-worker.json +3770 -29
  10. package/src/element-templates/agenticai-aiagent-outbound-connector.json +6274 -2594
  11. package/src/element-templates/agenticai-mcp-client-outbound-connector.json +549 -552
  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 +736 -739
  14. package/src/element-templates/asana-connector.json +759 -48
  15. package/src/element-templates/automation-anywhere-outbound-connector.json +1763 -1759
  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 +747 -10
  21. package/src/element-templates/aws-comprehend-outbound-connector.json +10 -5
  22. package/src/element-templates/aws-dynamodb-outbound-connector.json +1358 -1358
  23. package/src/element-templates/aws-eventbridge-connector-boundary.json +383 -18
  24. package/src/element-templates/aws-eventbridge-connector-intermediate.json +377 -12
  25. package/src/element-templates/aws-eventbridge-connector-message-start.json +407 -8
  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 +238 -234
  30. package/src/element-templates/aws-s3-outbound-connector.json +646 -5
  31. package/src/element-templates/aws-sagemaker-outbound-connector.json +13 -9
  32. package/src/element-templates/aws-sns-inbound-boundary.json +44 -37
  33. package/src/element-templates/aws-sns-inbound-intermediate.json +210 -203
  34. package/src/element-templates/aws-sns-inbound-message-start.json +125 -118
  35. package/src/element-templates/aws-sns-inbound-receive.json +13 -6
  36. package/src/element-templates/aws-sns-inbound-start-event.json +134 -127
  37. package/src/element-templates/aws-sns-outbound-connector.json +581 -577
  38. package/src/element-templates/aws-sqs-boundary-connector.json +453 -449
  39. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +530 -526
  40. package/src/element-templates/aws-sqs-outbound-connector.json +711 -709
  41. package/src/element-templates/aws-sqs-receive-connector.json +15 -11
  42. package/src/element-templates/aws-sqs-start-event-connector.json +213 -205
  43. package/src/element-templates/aws-sqs-start-message.json +461 -457
  44. package/src/element-templates/aws-textract-outbound-connector.json +109 -105
  45. package/src/element-templates/azure-blobstorage-outbound-connector.json +676 -19
  46. package/src/element-templates/azure-open-ai-connector.json +1329 -4
  47. package/src/element-templates/blue-prism-connector.json +569 -24
  48. package/src/element-templates/box-outbound-connector.json +924 -12
  49. package/src/element-templates/csv-outbound-connector.json +13 -5
  50. package/src/element-templates/easy-post-connector.json +1077 -109
  51. package/src/element-templates/email-inbound-connector-boundary.json +32 -24
  52. package/src/element-templates/email-inbound-connector-intermediate.json +32 -24
  53. package/src/element-templates/email-inbound-connector-receive.json +564 -0
  54. package/src/element-templates/email-message-start-event-connector.json +58 -50
  55. package/src/element-templates/email-outbound-connector.json +2116 -243
  56. package/src/element-templates/embeddings-vector-database-outbound-connector.json +3 -6
  57. package/src/element-templates/github-connector.json +15257 -11722
  58. package/src/element-templates/github-webhook-connector-boundary.json +27 -29
  59. package/src/element-templates/github-webhook-connector-intermediate.json +36 -38
  60. package/src/element-templates/github-webhook-connector-message-start.json +11 -13
  61. package/src/element-templates/github-webhook-connector-receive.json +13 -15
  62. package/src/element-templates/github-webhook-connector-start-event.json +54 -56
  63. package/src/element-templates/gitlab-connector.json +4177 -2545
  64. package/src/element-templates/google-cloud-storage-outbound-connector.json +562 -13
  65. package/src/element-templates/google-drive-outbound-connector.json +1386 -766
  66. package/src/element-templates/google-gemini-outbound-connector.json +13 -5
  67. package/src/element-templates/google-maps-platform-connector.json +1059 -30
  68. package/src/element-templates/google-sheets-outbound-connector.json +2449 -1455
  69. package/src/element-templates/graphql-outbound-connector.json +1744 -1735
  70. package/src/element-templates/http-json-connector.json +2982 -2332
  71. package/src/element-templates/http-polling-boundary-catch-event-connector.json +752 -741
  72. package/src/element-templates/http-polling-connector.json +1512 -1501
  73. package/src/element-templates/hubspot-outbound-connector.json +2371 -25
  74. package/src/element-templates/hugging-face-connector.json +234 -3
  75. package/src/element-templates/jdbc-outbound-connector.json +20 -6
  76. package/src/element-templates/kafka-inbound-connector-boundary.json +613 -604
  77. package/src/element-templates/kafka-inbound-connector-intermediate.json +528 -519
  78. package/src/element-templates/kafka-inbound-connector-receive.json +15 -6
  79. package/src/element-templates/kafka-inbound-connector-start-message.json +530 -521
  80. package/src/element-templates/kafka-inbound-connector.json +240 -240
  81. package/src/element-templates/kafka-outbound-connector.json +518 -512
  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 +893 -10
  86. package/src/element-templates/microsoft-teams-outbound-connector.json +5971 -3807
  87. package/src/element-templates/openai-connector.json +550 -87
  88. package/src/element-templates/operate-connector.json +1198 -46
  89. package/src/element-templates/power-automate-connector.json +601 -9
  90. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +444 -435
  91. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +484 -475
  92. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +367 -358
  93. package/src/element-templates/rabbitmq-inbound-connector-receive.json +15 -6
  94. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +479 -470
  95. package/src/element-templates/rabbitmq-outbound-connector.json +356 -350
  96. package/src/element-templates/rpa-connector.json +346 -0
  97. package/src/element-templates/salesforce-connector.json +544 -0
  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 +945 -337
  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 +490 -192
  106. package/src/element-templates/slack-inbound-intermediate.json +421 -123
  107. package/src/element-templates/slack-inbound-message-start.json +469 -139
  108. package/src/element-templates/slack-inbound-receive.json +297 -0
  109. package/src/element-templates/slack-inbound-start-event.json +216 -211
  110. package/src/element-templates/slack-outbound-connector.json +2451 -753
  111. package/src/element-templates/soap-outbound-connector.json +812 -2
  112. package/src/element-templates/twilio-connector.json +1573 -93
  113. package/src/element-templates/twilio-webhook-boundary-connector.json +19 -10
  114. package/src/element-templates/twilio-webhook-connector.json +243 -13
  115. package/src/element-templates/twilio-webhook-intermediate-connector.json +34 -25
  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 +594 -2
  119. package/src/element-templates/webhook-connector-boundary.json +580 -570
  120. package/src/element-templates/webhook-connector-intermediate.json +1390 -1380
  121. package/src/element-templates/webhook-connector-receive.json +16 -6
  122. package/src/element-templates/webhook-connector-start-event.json +1382 -1375
  123. package/src/element-templates/webhook-connector-start-message.json +1306 -1296
  124. package/src/element-templates/whatsapp-connector.json +343 -9
  125. package/src/element-templates/http-connector.json.json +0 -654
@@ -611,12 +611,9 @@
611
611
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
612
612
  "name": "Webhook Boundary Event Connector",
613
613
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
614
+ "version": 2,
614
615
  "description": "Configure webhook to receive callbacks",
615
- "metadata": {
616
- "keywords": []
617
- },
618
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
619
- "version": 12,
616
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
620
617
  "category": {
621
618
  "id": "connectors",
622
619
  "name": "Connectors"
@@ -639,44 +636,52 @@
639
636
  "id": "authorization",
640
637
  "label": "Authorization"
641
638
  },
642
- {
643
- "id": "webhookResponse",
644
- "label": "Webhook response"
645
- },
646
639
  {
647
640
  "id": "activation",
648
641
  "label": "Activation"
649
642
  },
650
643
  {
651
- "id": "correlation",
652
- "label": "Correlation",
653
- "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
644
+ "id": "variable-mapping",
645
+ "label": "Variable mapping"
654
646
  },
655
647
  {
656
- "id": "output",
657
- "label": "Output mapping"
648
+ "id": "webhookResponse",
649
+ "label": "Webhook response"
658
650
  }
659
651
  ],
660
652
  "properties": [
661
653
  {
654
+ "type": "Hidden",
662
655
  "value": "io.camunda:webhook:1",
663
656
  "binding": {
664
- "name": "inbound.type",
665
- "type": "zeebe:property"
657
+ "type": "zeebe:property",
658
+ "name": "inbound.type"
659
+ }
660
+ },
661
+ {
662
+ "type": "Hidden",
663
+ "generatedValue": {
664
+ "type": "uuid"
666
665
  },
667
- "type": "Hidden"
666
+ "binding": {
667
+ "type": "bpmn:Message#property",
668
+ "name": "name"
669
+ }
668
670
  },
669
671
  {
670
- "id": "inbound.method",
672
+ "type": "Hidden",
673
+ "value": "ConfigurableInboundWebhook",
674
+ "binding": {
675
+ "type": "zeebe:property",
676
+ "name": "inbound.subtype"
677
+ }
678
+ },
679
+ {
680
+ "id": "webhookMethod",
671
681
  "label": "Webhook method",
682
+ "group": "endpoint",
672
683
  "description": "Select HTTP method",
673
- "optional": false,
674
684
  "value": "any",
675
- "group": "endpoint",
676
- "binding": {
677
- "name": "inbound.method",
678
- "type": "zeebe:property"
679
- },
680
685
  "type": "Dropdown",
681
686
  "choices": [
682
687
  {
@@ -684,53 +689,46 @@
684
689
  "value": "any"
685
690
  },
686
691
  {
687
- "name": "GET",
692
+ "name": "Get",
688
693
  "value": "get"
689
694
  },
690
695
  {
691
- "name": "POST",
696
+ "name": "Post",
692
697
  "value": "post"
693
698
  },
694
699
  {
695
- "name": "PUT",
700
+ "name": "Put",
696
701
  "value": "put"
697
702
  },
698
703
  {
699
- "name": "DELETE",
704
+ "name": "Delete",
700
705
  "value": "delete"
701
706
  }
702
- ]
707
+ ],
708
+ "binding": {
709
+ "type": "zeebe:property",
710
+ "name": "inbound.method"
711
+ }
703
712
  },
704
713
  {
705
- "id": "inbound.context",
706
714
  "label": "Webhook ID",
707
- "description": "The webhook ID is a part of the URL",
708
- "optional": false,
709
- "constraints": {
710
- "notEmpty": true,
711
- "pattern": {
712
- "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
713
- "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
714
- }
715
- },
715
+ "type": "String",
716
716
  "group": "endpoint",
717
717
  "binding": {
718
- "name": "inbound.context",
719
- "type": "zeebe:property"
718
+ "type": "zeebe:property",
719
+ "name": "inbound.context"
720
720
  },
721
- "type": "String"
721
+ "description": "The webhook ID is a part of the URL",
722
+ "constraints": {
723
+ "notEmpty": true
724
+ }
722
725
  },
723
726
  {
724
- "id": "inbound.shouldValidateHmac",
727
+ "id": "shouldValidateHmac",
725
728
  "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",
727
- "optional": false,
728
- "value": "disabled",
729
729
  "group": "authentication",
730
- "binding": {
731
- "name": "inbound.shouldValidateHmac",
732
- "type": "zeebe:property"
733
- },
730
+ "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",
731
+ "value": "disabled",
734
732
  "type": "Dropdown",
735
733
  "choices": [
736
734
  {
@@ -741,60 +739,47 @@
741
739
  "name": "Disabled",
742
740
  "value": "disabled"
743
741
  }
744
- ]
742
+ ],
743
+ "binding": {
744
+ "type": "zeebe:property",
745
+ "name": "inbound.shouldValidateHmac"
746
+ }
745
747
  },
746
748
  {
747
- "id": "inbound.hmacSecret",
748
749
  "label": "HMAC secret key",
749
750
  "description": "Shared secret key",
750
- "optional": true,
751
- "feel": "optional",
751
+ "type": "String",
752
752
  "group": "authentication",
753
+ "optional": true,
753
754
  "binding": {
754
- "name": "inbound.hmacSecret",
755
- "type": "zeebe:property"
755
+ "type": "zeebe:property",
756
+ "name": "inbound.hmacSecret"
756
757
  },
757
758
  "condition": {
758
- "property": "inbound.shouldValidateHmac",
759
- "equals": "enabled",
760
- "type": "simple"
761
- },
762
- "type": "String"
759
+ "property": "shouldValidateHmac",
760
+ "equals": "enabled"
761
+ }
763
762
  },
764
763
  {
765
- "id": "inbound.hmacHeader",
766
764
  "label": "HMAC header",
767
765
  "description": "Name of header attribute that will contain the HMAC value",
768
- "optional": true,
769
- "feel": "optional",
766
+ "type": "String",
770
767
  "group": "authentication",
768
+ "optional": true,
771
769
  "binding": {
772
- "name": "inbound.hmacHeader",
773
- "type": "zeebe:property"
770
+ "type": "zeebe:property",
771
+ "name": "inbound.hmacHeader"
774
772
  },
775
773
  "condition": {
776
- "property": "inbound.shouldValidateHmac",
777
- "equals": "enabled",
778
- "type": "simple"
779
- },
780
- "type": "String"
774
+ "property": "shouldValidateHmac",
775
+ "equals": "enabled"
776
+ }
781
777
  },
782
778
  {
783
- "id": "inbound.hmacAlgorithm",
784
779
  "label": "HMAC algorithm",
780
+ "group": "authentication",
785
781
  "description": "Choose HMAC algorithm",
786
- "optional": false,
787
782
  "value": "sha_256",
788
- "group": "authentication",
789
- "binding": {
790
- "name": "inbound.hmacAlgorithm",
791
- "type": "zeebe:property"
792
- },
793
- "condition": {
794
- "property": "inbound.shouldValidateHmac",
795
- "equals": "enabled",
796
- "type": "simple"
797
- },
798
783
  "type": "Dropdown",
799
784
  "choices": [
800
785
  {
@@ -809,348 +794,295 @@
809
794
  "name": "SHA-512",
810
795
  "value": "sha_512"
811
796
  }
812
- ]
797
+ ],
798
+ "binding": {
799
+ "type": "zeebe:property",
800
+ "name": "inbound.hmacAlgorithm"
801
+ },
802
+ "condition": {
803
+ "property": "shouldValidateHmac",
804
+ "equals": "enabled"
805
+ }
813
806
  },
814
807
  {
815
- "id": "inbound.hmacScopes",
816
808
  "label": "HMAC scopes",
817
- "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>",
818
- "optional": true,
819
- "feel": "required",
820
809
  "group": "authentication",
810
+ "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>",
811
+ "feel": "required",
812
+ "type": "String",
813
+ "optional": true,
821
814
  "binding": {
822
- "name": "inbound.hmacScopes",
823
- "type": "zeebe:property"
815
+ "type": "zeebe:property",
816
+ "name": "inbound.hmacScopes"
824
817
  },
825
818
  "condition": {
826
- "property": "inbound.shouldValidateHmac",
827
- "equals": "enabled",
828
- "type": "simple"
829
- },
830
- "type": "String"
819
+ "property": "shouldValidateHmac",
820
+ "equals": "enabled"
821
+ }
831
822
  },
832
823
  {
833
- "id": "inbound.auth.type",
824
+ "id": "authorizationType",
834
825
  "label": "Authorization type",
835
- "description": "Choose the authorization type",
836
- "value": "NONE",
837
826
  "group": "authorization",
838
- "binding": {
839
- "name": "inbound.auth.type",
840
- "type": "zeebe:property"
841
- },
827
+ "description": "Choose the authorization type.",
828
+ "value": "NONE",
842
829
  "type": "Dropdown",
843
830
  "choices": [
844
831
  {
845
832
  "name": "None",
846
833
  "value": "NONE"
847
834
  },
835
+ {
836
+ "name": "JWT",
837
+ "value": "JWT"
838
+ },
848
839
  {
849
840
  "name": "Basic",
850
841
  "value": "BASIC"
851
842
  },
852
843
  {
853
- "name": "API key",
844
+ "name": "API Key",
854
845
  "value": "APIKEY"
855
- },
856
- {
857
- "name": "JWT",
858
- "value": "JWT"
859
846
  }
860
- ]
847
+ ],
848
+ "binding": {
849
+ "type": "zeebe:property",
850
+ "name": "inbound.auth.type"
851
+ }
861
852
  },
862
853
  {
863
- "id": "inbound.auth.username",
864
- "label": "Username",
865
- "description": "Username for basic authentication",
866
- "optional": false,
867
- "feel": "optional",
854
+ "label": "JWK url",
855
+ "description": "Well-known url of JWKs",
856
+ "type": "String",
868
857
  "group": "authorization",
858
+ "feel": "optional",
859
+ "optional": true,
869
860
  "binding": {
870
- "name": "inbound.auth.username",
871
- "type": "zeebe:property"
861
+ "type": "zeebe:property",
862
+ "name": "inbound.auth.jwt.jwkUrl"
872
863
  },
873
864
  "condition": {
874
- "property": "inbound.auth.type",
875
- "equals": "BASIC",
876
- "type": "simple"
877
- },
878
- "type": "String"
865
+ "property": "authorizationType",
866
+ "equals": "JWT"
867
+ }
879
868
  },
880
869
  {
881
- "id": "inbound.auth.password",
882
- "label": "Password",
883
- "description": "Password for basic authentication",
884
- "optional": false,
885
- "feel": "optional",
870
+ "label": "JWT role property expression",
871
+ "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>",
872
+ "type": "String",
886
873
  "group": "authorization",
874
+ "feel": "required",
875
+ "optional": true,
887
876
  "binding": {
888
- "name": "inbound.auth.password",
889
- "type": "zeebe:property"
877
+ "type": "zeebe:property",
878
+ "name": "inbound.auth.jwt.permissionsExpression"
890
879
  },
891
880
  "condition": {
892
- "property": "inbound.auth.type",
893
- "equals": "BASIC",
894
- "type": "simple"
895
- },
896
- "type": "String"
881
+ "property": "authorizationType",
882
+ "equals": "JWT"
883
+ }
897
884
  },
898
885
  {
899
- "id": "inbound.auth.apiKey",
900
- "label": "API key",
901
- "description": "Expected API key",
902
- "optional": false,
903
- "feel": "optional",
886
+ "label": "Required roles",
887
+ "description": "List of roles to test JWT roles against",
888
+ "type": "String",
904
889
  "group": "authorization",
890
+ "feel": "required",
891
+ "optional": true,
905
892
  "binding": {
906
- "name": "inbound.auth.apiKey",
907
- "type": "zeebe:property"
893
+ "type": "zeebe:property",
894
+ "name": "inbound.auth.jwt.requiredPermissions"
908
895
  },
909
896
  "condition": {
910
- "property": "inbound.auth.type",
911
- "equals": "APIKEY",
912
- "type": "simple"
913
- },
914
- "type": "String"
897
+ "property": "authorizationType",
898
+ "equals": "JWT"
899
+ }
915
900
  },
916
901
  {
917
- "id": "inbound.auth.apiKeyLocator",
918
- "label": "API key locator",
919
- "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>",
920
- "optional": false,
921
- "value": "=split(request.headers.authorization, \" \")[2]",
922
- "constraints": {
923
- "notEmpty": true
924
- },
925
- "feel": "required",
902
+ "label": "Username",
903
+ "description": "Username for basic authentication",
904
+ "type": "String",
926
905
  "group": "authorization",
906
+ "feel": "optional",
927
907
  "binding": {
928
- "name": "inbound.auth.apiKeyLocator",
929
- "type": "zeebe:property"
908
+ "type": "zeebe:property",
909
+ "name": "inbound.auth.username"
930
910
  },
931
911
  "condition": {
932
- "property": "inbound.auth.type",
933
- "equals": "APIKEY",
934
- "type": "simple"
912
+ "property": "authorizationType",
913
+ "equals": "BASIC"
935
914
  },
936
- "type": "String"
915
+ "constraints": {
916
+ "notEmpty": true
917
+ }
937
918
  },
938
919
  {
939
- "id": "inbound.auth.jwt.jwkUrl",
940
- "label": "JWK URL",
941
- "description": "Well-known URL of JWKs",
942
- "optional": false,
943
- "feel": "optional",
920
+ "label": "Password",
921
+ "description": "Password for basic authentication",
922
+ "type": "String",
944
923
  "group": "authorization",
924
+ "feel": "optional",
945
925
  "binding": {
946
- "name": "inbound.auth.jwt.jwkUrl",
947
- "type": "zeebe:property"
926
+ "type": "zeebe:property",
927
+ "name": "inbound.auth.password"
948
928
  },
949
929
  "condition": {
950
- "property": "inbound.auth.type",
951
- "equals": "JWT",
952
- "type": "simple"
930
+ "property": "authorizationType",
931
+ "equals": "BASIC"
953
932
  },
954
- "type": "String"
933
+ "constraints": {
934
+ "notEmpty": true
935
+ }
955
936
  },
956
937
  {
957
- "id": "inbound.auth.jwt.permissionsExpression",
958
- "label": "JWT role property expression",
959
- "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>",
960
- "optional": false,
961
- "feel": "required",
938
+ "label": "API Key",
939
+ "description": "Expected API key",
940
+ "type": "String",
962
941
  "group": "authorization",
942
+ "feel": "optional",
963
943
  "binding": {
964
- "name": "inbound.auth.jwt.permissionsExpression",
965
- "type": "zeebe:property"
944
+ "type": "zeebe:property",
945
+ "name": "inbound.auth.apiKey"
966
946
  },
967
947
  "condition": {
968
- "property": "inbound.auth.type",
969
- "equals": "JWT",
970
- "type": "simple"
948
+ "property": "authorizationType",
949
+ "equals": "APIKEY"
971
950
  },
972
- "type": "String"
951
+ "constraints": {
952
+ "notEmpty": true
953
+ }
973
954
  },
974
955
  {
975
- "id": "inbound.auth.jwt.requiredPermissions",
976
- "label": "Required roles",
977
- "description": "List of roles to test JWT roles against",
978
- "optional": false,
979
- "feel": "required",
956
+ "label": "API Key locator",
957
+ "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>",
958
+ "type": "String",
980
959
  "group": "authorization",
960
+ "feel": "required",
981
961
  "binding": {
982
- "name": "inbound.auth.jwt.requiredPermissions",
983
- "type": "zeebe:property"
962
+ "type": "zeebe:property",
963
+ "name": "inbound.auth.apiKeyLocator"
984
964
  },
985
965
  "condition": {
986
- "property": "inbound.auth.type",
987
- "equals": "JWT",
988
- "type": "simple"
989
- },
990
- "type": "String"
991
- },
992
- {
993
- "id": "inbound.responseExpression",
994
- "label": "Response expression",
995
- "description": "Expression used to generate the HTTP response",
996
- "optional": true,
997
- "feel": "required",
998
- "group": "webhookResponse",
999
- "binding": {
1000
- "name": "inbound.responseExpression",
1001
- "type": "zeebe:property"
966
+ "property": "authorizationType",
967
+ "equals": "APIKEY"
1002
968
  },
1003
- "type": "Text"
1004
- },
1005
- {
1006
- "id": "inbound.verificationExpression",
1007
- "label": "One time verification response expression",
1008
- "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>",
1009
- "optional": true,
1010
- "feel": "required",
1011
- "group": "webhookResponse",
1012
- "binding": {
1013
- "name": "inbound.verificationExpression",
1014
- "type": "zeebe:property"
969
+ "constraints": {
970
+ "notEmpty": true
1015
971
  },
1016
- "type": "Text"
972
+ "value": "=split(request.headers.authorization, \" \")[2]"
1017
973
  },
1018
974
  {
1019
- "id": "activationCondition",
1020
- "label": "Activation condition",
1021
- "description": "Condition under which the Connector triggers. Leave empty to catch all events",
1022
- "optional": true,
1023
- "feel": "required",
975
+ "label": "Correlation key (process)",
976
+ "type": "String",
1024
977
  "group": "activation",
978
+ "feel": "required",
979
+ "description": "Sets up the correlation key from process variables",
1025
980
  "binding": {
1026
- "name": "activationCondition",
1027
- "type": "zeebe:property"
981
+ "type": "bpmn:Message#zeebe:subscription#property",
982
+ "name": "correlationKey"
1028
983
  },
1029
- "type": "String"
984
+ "constraints": {
985
+ "notEmpty": true
986
+ }
1030
987
  },
1031
988
  {
1032
- "id": "consumeUnmatchedEvents",
1033
- "label": "Consume unmatched events",
1034
- "value": true,
989
+ "label": "Correlation key (payload)",
990
+ "type": "String",
1035
991
  "group": "activation",
1036
- "binding": {
1037
- "name": "consumeUnmatchedEvents",
1038
- "type": "zeebe:property"
1039
- },
1040
- "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",
1041
- "type": "Boolean"
1042
- },
1043
- {
1044
- "id": "correlationKeyProcess",
1045
- "label": "Correlation key (process)",
1046
- "description": "Sets up the correlation key from process variables",
1047
- "constraints": {
1048
- "notEmpty": true
1049
- },
1050
992
  "feel": "required",
1051
- "group": "correlation",
1052
993
  "binding": {
1053
- "name": "correlationKey",
1054
- "type": "bpmn:Message#zeebe:subscription#property"
994
+ "type": "zeebe:property",
995
+ "name": "correlationKeyExpression"
1055
996
  },
1056
- "type": "String"
1057
- },
1058
- {
1059
- "id": "correlationKeyPayload",
1060
- "label": "Correlation key (payload)",
1061
997
  "description": "Extracts the correlation key from the incoming message payload",
1062
998
  "constraints": {
1063
999
  "notEmpty": true
1064
- },
1000
+ }
1001
+ },
1002
+ {
1003
+ "label": "Message ID expression",
1065
1004
  "feel": "required",
1066
- "group": "correlation",
1005
+ "type": "String",
1006
+ "optional": true,
1007
+ "group": "activation",
1067
1008
  "binding": {
1068
- "name": "correlationKeyExpression",
1069
- "type": "zeebe:property"
1009
+ "type": "zeebe:property",
1010
+ "name": "messageIdExpression"
1070
1011
  },
1071
- "type": "String"
1012
+ "description": "Expression to extract unique identifier of a message"
1072
1013
  },
1073
1014
  {
1074
- "id": "messageIdExpression",
1075
- "label": "Message ID expression",
1076
- "description": "Expression to extract unique identifier of a message",
1077
- "optional": true,
1015
+ "label": "Condition",
1016
+ "type": "String",
1017
+ "group": "activation",
1078
1018
  "feel": "required",
1079
- "group": "correlation",
1019
+ "optional": true,
1080
1020
  "binding": {
1081
- "name": "messageIdExpression",
1082
- "type": "zeebe:property"
1021
+ "type": "zeebe:property",
1022
+ "name": "activationCondition"
1083
1023
  },
1084
- "type": "String"
1024
+ "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>"
1085
1025
  },
1086
1026
  {
1087
- "id": "messageTtl",
1088
- "label": "Message TTL",
1089
- "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
1027
+ "label": "Result variable",
1028
+ "type": "String",
1029
+ "group": "variable-mapping",
1090
1030
  "optional": true,
1091
- "constraints": {
1092
- "notEmpty": false,
1093
- "pattern": {
1094
- "value": "^(PT.*|)$",
1095
- "message": "must be an ISO-8601 duration"
1096
- }
1097
- },
1098
- "feel": "optional",
1099
- "group": "correlation",
1100
1031
  "binding": {
1101
- "name": "messageTtl",
1102
- "type": "zeebe:property"
1032
+ "type": "zeebe:property",
1033
+ "name": "resultVariable"
1103
1034
  },
1104
- "type": "String"
1035
+ "description": "Name of variable to store the result of the connector in"
1105
1036
  },
1106
1037
  {
1107
- "id": "messageNameUuid",
1108
- "generatedValue": {
1109
- "type": "uuid"
1110
- },
1111
- "group": "correlation",
1038
+ "label": "Result expression",
1039
+ "type": "String",
1040
+ "group": "variable-mapping",
1041
+ "feel": "required",
1042
+ "optional": true,
1112
1043
  "binding": {
1113
- "name": "name",
1114
- "type": "bpmn:Message#property"
1044
+ "type": "zeebe:property",
1045
+ "name": "resultExpression"
1115
1046
  },
1116
- "type": "Hidden"
1047
+ "description": "Expression to map the inbound payload to process variables"
1117
1048
  },
1118
1049
  {
1119
- "id": "resultVariable",
1120
- "label": "Result variable",
1121
- "description": "Name of variable to store the response in",
1122
- "group": "output",
1050
+ "label": "One time verification response expression",
1051
+ "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>",
1052
+ "type": "Text",
1053
+ "group": "webhookResponse",
1054
+ "feel": "required",
1055
+ "optional": true,
1123
1056
  "binding": {
1124
- "name": "resultVariable",
1125
- "type": "zeebe:property"
1126
- },
1127
- "type": "String"
1057
+ "type": "zeebe:property",
1058
+ "name": "inbound.verificationExpression"
1059
+ }
1128
1060
  },
1129
1061
  {
1130
- "id": "resultExpression",
1131
- "label": "Result expression",
1132
- "description": "Expression to map the response into process variables",
1062
+ "label": "Response body expression",
1063
+ "type": "Text",
1064
+ "group": "webhookResponse",
1133
1065
  "feel": "required",
1134
- "group": "output",
1066
+ "optional": true,
1135
1067
  "binding": {
1136
- "name": "resultExpression",
1137
- "type": "zeebe:property"
1068
+ "type": "zeebe:property",
1069
+ "name": "inbound.responseBodyExpression"
1138
1070
  },
1139
- "type": "Text"
1071
+ "description": "Specify condition and response"
1140
1072
  }
1141
1073
  ],
1142
- "engines": {
1143
- "camunda": "^8.3"
1144
- },
1145
1074
  "icon": {
1146
- "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
1075
+ "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"
1076
+ },
1077
+ "engines": {
1078
+ "camunda": "^8.4"
1147
1079
  }
1148
1080
  },
1149
1081
  {
1150
1082
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1151
1083
  "name": "Webhook Boundary Event Connector",
1152
1084
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
1153
- "version": 3,
1085
+ "version": 1,
1154
1086
  "description": "Configure webhook to receive callbacks",
1155
1087
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
1156
1088
  "category": {
@@ -1259,11 +1191,7 @@
1259
1191
  },
1260
1192
  "description": "The webhook ID is a part of the URL",
1261
1193
  "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
- }
1194
+ "notEmpty": true
1267
1195
  }
1268
1196
  },
1269
1197
  {
@@ -1542,18 +1470,6 @@
1542
1470
  "notEmpty": true
1543
1471
  }
1544
1472
  },
1545
- {
1546
- "label": "Message ID expression",
1547
- "feel": "required",
1548
- "type": "String",
1549
- "optional": true,
1550
- "group": "activation",
1551
- "binding": {
1552
- "type": "zeebe:property",
1553
- "name": "messageIdExpression"
1554
- },
1555
- "description": "Expression to extract unique identifier of a message"
1556
- },
1557
1473
  {
1558
1474
  "label": "Condition",
1559
1475
  "type": "String",
@@ -1589,18 +1505,6 @@
1589
1505
  },
1590
1506
  "description": "Expression to map the inbound payload to process variables"
1591
1507
  },
1592
- {
1593
- "label": "One time verification response expression",
1594
- "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>",
1595
- "type": "Text",
1596
- "group": "webhookResponse",
1597
- "feel": "required",
1598
- "optional": true,
1599
- "binding": {
1600
- "type": "zeebe:property",
1601
- "name": "inbound.verificationExpression"
1602
- }
1603
- },
1604
1508
  {
1605
1509
  "label": "Response body expression",
1606
1510
  "type": "Text",
@@ -1618,7 +1522,7 @@
1618
1522
  "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
1523
  },
1620
1524
  "engines": {
1621
- "camunda": "^8.5"
1525
+ "camunda": "^8.2"
1622
1526
  }
1623
1527
  },
1624
1528
  {
@@ -2664,7 +2568,7 @@
2664
2568
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2665
2569
  "name": "Webhook Boundary Event Connector",
2666
2570
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
2667
- "version": 2,
2571
+ "version": 3,
2668
2572
  "description": "Configure webhook to receive callbacks",
2669
2573
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
2670
2574
  "category": {
@@ -2773,7 +2677,11 @@
2773
2677
  },
2774
2678
  "description": "The webhook ID is a part of the URL",
2775
2679
  "constraints": {
2776
- "notEmpty": true
2680
+ "notEmpty": true,
2681
+ "pattern": {
2682
+ "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
2683
+ "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
2684
+ }
2777
2685
  }
2778
2686
  },
2779
2687
  {
@@ -3128,16 +3036,19 @@
3128
3036
  "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
3037
  },
3130
3038
  "engines": {
3131
- "camunda": "^8.4"
3039
+ "camunda": "^8.5"
3132
3040
  }
3133
3041
  },
3134
3042
  {
3135
3043
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
3136
3044
  "name": "Webhook Boundary Event Connector",
3137
3045
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
3138
- "version": 1,
3139
3046
  "description": "Configure webhook to receive callbacks",
3140
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
3047
+ "metadata": {
3048
+ "keywords": []
3049
+ },
3050
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
3051
+ "version": 12,
3141
3052
  "category": {
3142
3053
  "id": "connectors",
3143
3054
  "name": "Connectors"
@@ -3160,52 +3071,44 @@
3160
3071
  "id": "authorization",
3161
3072
  "label": "Authorization"
3162
3073
  },
3163
- {
3164
- "id": "activation",
3165
- "label": "Activation"
3166
- },
3167
- {
3168
- "id": "variable-mapping",
3169
- "label": "Variable mapping"
3170
- },
3171
3074
  {
3172
3075
  "id": "webhookResponse",
3173
3076
  "label": "Webhook response"
3174
- }
3175
- ],
3176
- "properties": [
3077
+ },
3177
3078
  {
3178
- "type": "Hidden",
3179
- "value": "io.camunda:webhook:1",
3180
- "binding": {
3181
- "type": "zeebe:property",
3182
- "name": "inbound.type"
3183
- }
3079
+ "id": "activation",
3080
+ "label": "Activation"
3184
3081
  },
3185
3082
  {
3186
- "type": "Hidden",
3187
- "generatedValue": {
3188
- "type": "uuid"
3189
- },
3190
- "binding": {
3191
- "type": "bpmn:Message#property",
3192
- "name": "name"
3193
- }
3083
+ "id": "correlation",
3084
+ "label": "Correlation",
3085
+ "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
3194
3086
  },
3195
3087
  {
3196
- "type": "Hidden",
3197
- "value": "ConfigurableInboundWebhook",
3088
+ "id": "output",
3089
+ "label": "Output mapping"
3090
+ }
3091
+ ],
3092
+ "properties": [
3093
+ {
3094
+ "value": "io.camunda:webhook:1",
3198
3095
  "binding": {
3199
- "type": "zeebe:property",
3200
- "name": "inbound.subtype"
3201
- }
3096
+ "name": "inbound.type",
3097
+ "type": "zeebe:property"
3098
+ },
3099
+ "type": "Hidden"
3202
3100
  },
3203
3101
  {
3204
- "id": "webhookMethod",
3102
+ "id": "inbound.method",
3205
3103
  "label": "Webhook method",
3206
- "group": "endpoint",
3207
3104
  "description": "Select HTTP method",
3105
+ "optional": false,
3208
3106
  "value": "any",
3107
+ "group": "endpoint",
3108
+ "binding": {
3109
+ "name": "inbound.method",
3110
+ "type": "zeebe:property"
3111
+ },
3209
3112
  "type": "Dropdown",
3210
3113
  "choices": [
3211
3114
  {
@@ -3213,46 +3116,53 @@
3213
3116
  "value": "any"
3214
3117
  },
3215
3118
  {
3216
- "name": "Get",
3119
+ "name": "GET",
3217
3120
  "value": "get"
3218
3121
  },
3219
3122
  {
3220
- "name": "Post",
3123
+ "name": "POST",
3221
3124
  "value": "post"
3222
3125
  },
3223
3126
  {
3224
- "name": "Put",
3127
+ "name": "PUT",
3225
3128
  "value": "put"
3226
3129
  },
3227
3130
  {
3228
- "name": "Delete",
3131
+ "name": "DELETE",
3229
3132
  "value": "delete"
3230
3133
  }
3231
- ],
3232
- "binding": {
3233
- "type": "zeebe:property",
3234
- "name": "inbound.method"
3235
- }
3134
+ ]
3236
3135
  },
3237
3136
  {
3137
+ "id": "inbound.context",
3238
3138
  "label": "Webhook ID",
3239
- "type": "String",
3139
+ "description": "The webhook ID is a part of the URL",
3140
+ "optional": false,
3141
+ "constraints": {
3142
+ "notEmpty": true,
3143
+ "pattern": {
3144
+ "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
3145
+ "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
3146
+ }
3147
+ },
3240
3148
  "group": "endpoint",
3241
3149
  "binding": {
3242
- "type": "zeebe:property",
3243
- "name": "inbound.context"
3150
+ "name": "inbound.context",
3151
+ "type": "zeebe:property"
3244
3152
  },
3245
- "description": "The webhook ID is a part of the URL",
3246
- "constraints": {
3247
- "notEmpty": true
3248
- }
3153
+ "type": "String"
3249
3154
  },
3250
3155
  {
3251
- "id": "shouldValidateHmac",
3156
+ "id": "inbound.shouldValidateHmac",
3252
3157
  "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",
3158
+ "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",
3159
+ "optional": false,
3255
3160
  "value": "disabled",
3161
+ "group": "authentication",
3162
+ "binding": {
3163
+ "name": "inbound.shouldValidateHmac",
3164
+ "type": "zeebe:property"
3165
+ },
3256
3166
  "type": "Dropdown",
3257
3167
  "choices": [
3258
3168
  {
@@ -3263,47 +3173,60 @@
3263
3173
  "name": "Disabled",
3264
3174
  "value": "disabled"
3265
3175
  }
3266
- ],
3267
- "binding": {
3268
- "type": "zeebe:property",
3269
- "name": "inbound.shouldValidateHmac"
3270
- }
3176
+ ]
3271
3177
  },
3272
3178
  {
3179
+ "id": "inbound.hmacSecret",
3273
3180
  "label": "HMAC secret key",
3274
3181
  "description": "Shared secret key",
3275
- "type": "String",
3276
- "group": "authentication",
3277
3182
  "optional": true,
3183
+ "feel": "optional",
3184
+ "group": "authentication",
3278
3185
  "binding": {
3279
- "type": "zeebe:property",
3280
- "name": "inbound.hmacSecret"
3186
+ "name": "inbound.hmacSecret",
3187
+ "type": "zeebe:property"
3281
3188
  },
3282
3189
  "condition": {
3283
- "property": "shouldValidateHmac",
3284
- "equals": "enabled"
3285
- }
3190
+ "property": "inbound.shouldValidateHmac",
3191
+ "equals": "enabled",
3192
+ "type": "simple"
3193
+ },
3194
+ "type": "String"
3286
3195
  },
3287
3196
  {
3197
+ "id": "inbound.hmacHeader",
3288
3198
  "label": "HMAC header",
3289
3199
  "description": "Name of header attribute that will contain the HMAC value",
3290
- "type": "String",
3291
- "group": "authentication",
3292
3200
  "optional": true,
3201
+ "feel": "optional",
3202
+ "group": "authentication",
3293
3203
  "binding": {
3294
- "type": "zeebe:property",
3295
- "name": "inbound.hmacHeader"
3204
+ "name": "inbound.hmacHeader",
3205
+ "type": "zeebe:property"
3296
3206
  },
3297
3207
  "condition": {
3298
- "property": "shouldValidateHmac",
3299
- "equals": "enabled"
3300
- }
3208
+ "property": "inbound.shouldValidateHmac",
3209
+ "equals": "enabled",
3210
+ "type": "simple"
3211
+ },
3212
+ "type": "String"
3301
3213
  },
3302
3214
  {
3215
+ "id": "inbound.hmacAlgorithm",
3303
3216
  "label": "HMAC algorithm",
3304
- "group": "authentication",
3305
3217
  "description": "Choose HMAC algorithm",
3218
+ "optional": false,
3306
3219
  "value": "sha_256",
3220
+ "group": "authentication",
3221
+ "binding": {
3222
+ "name": "inbound.hmacAlgorithm",
3223
+ "type": "zeebe:property"
3224
+ },
3225
+ "condition": {
3226
+ "property": "inbound.shouldValidateHmac",
3227
+ "equals": "enabled",
3228
+ "type": "simple"
3229
+ },
3307
3230
  "type": "Dropdown",
3308
3231
  "choices": [
3309
3232
  {
@@ -3318,264 +3241,341 @@
3318
3241
  "name": "SHA-512",
3319
3242
  "value": "sha_512"
3320
3243
  }
3321
- ],
3322
- "binding": {
3323
- "type": "zeebe:property",
3324
- "name": "inbound.hmacAlgorithm"
3325
- },
3326
- "condition": {
3327
- "property": "shouldValidateHmac",
3328
- "equals": "enabled"
3329
- }
3244
+ ]
3330
3245
  },
3331
3246
  {
3247
+ "id": "inbound.hmacScopes",
3332
3248
  "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",
3249
+ "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
3250
  "optional": true,
3251
+ "feel": "required",
3252
+ "group": "authentication",
3338
3253
  "binding": {
3339
- "type": "zeebe:property",
3340
- "name": "inbound.hmacScopes"
3254
+ "name": "inbound.hmacScopes",
3255
+ "type": "zeebe:property"
3341
3256
  },
3342
3257
  "condition": {
3343
- "property": "shouldValidateHmac",
3344
- "equals": "enabled"
3345
- }
3258
+ "property": "inbound.shouldValidateHmac",
3259
+ "equals": "enabled",
3260
+ "type": "simple"
3261
+ },
3262
+ "type": "String"
3346
3263
  },
3347
3264
  {
3348
- "id": "authorizationType",
3265
+ "id": "inbound.auth.type",
3349
3266
  "label": "Authorization type",
3350
- "group": "authorization",
3351
- "description": "Choose the authorization type.",
3267
+ "description": "Choose the authorization type",
3352
3268
  "value": "NONE",
3269
+ "group": "authorization",
3270
+ "binding": {
3271
+ "name": "inbound.auth.type",
3272
+ "type": "zeebe:property"
3273
+ },
3353
3274
  "type": "Dropdown",
3354
3275
  "choices": [
3355
3276
  {
3356
3277
  "name": "None",
3357
3278
  "value": "NONE"
3358
3279
  },
3359
- {
3360
- "name": "JWT",
3361
- "value": "JWT"
3362
- },
3363
3280
  {
3364
3281
  "name": "Basic",
3365
3282
  "value": "BASIC"
3366
3283
  },
3367
3284
  {
3368
- "name": "API Key",
3285
+ "name": "API key",
3369
3286
  "value": "APIKEY"
3287
+ },
3288
+ {
3289
+ "name": "JWT",
3290
+ "value": "JWT"
3370
3291
  }
3371
- ],
3372
- "binding": {
3373
- "type": "zeebe:property",
3374
- "name": "inbound.auth.type"
3375
- }
3292
+ ]
3376
3293
  },
3377
3294
  {
3378
- "label": "JWK url",
3379
- "description": "Well-known url of JWKs",
3380
- "type": "String",
3381
- "group": "authorization",
3295
+ "id": "inbound.auth.username",
3296
+ "label": "Username",
3297
+ "description": "Username for basic authentication",
3298
+ "optional": false,
3382
3299
  "feel": "optional",
3383
- "optional": true,
3300
+ "group": "authorization",
3384
3301
  "binding": {
3385
- "type": "zeebe:property",
3386
- "name": "inbound.auth.jwt.jwkUrl"
3302
+ "name": "inbound.auth.username",
3303
+ "type": "zeebe:property"
3387
3304
  },
3388
3305
  "condition": {
3389
- "property": "authorizationType",
3390
- "equals": "JWT"
3391
- }
3306
+ "property": "inbound.auth.type",
3307
+ "equals": "BASIC",
3308
+ "type": "simple"
3309
+ },
3310
+ "type": "String"
3392
3311
  },
3393
3312
  {
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",
3313
+ "id": "inbound.auth.password",
3314
+ "label": "Password",
3315
+ "description": "Password for basic authentication",
3316
+ "optional": false,
3317
+ "feel": "optional",
3397
3318
  "group": "authorization",
3398
- "feel": "required",
3399
- "optional": true,
3400
3319
  "binding": {
3401
- "type": "zeebe:property",
3402
- "name": "inbound.auth.jwt.permissionsExpression"
3320
+ "name": "inbound.auth.password",
3321
+ "type": "zeebe:property"
3403
3322
  },
3404
3323
  "condition": {
3405
- "property": "authorizationType",
3406
- "equals": "JWT"
3407
- }
3324
+ "property": "inbound.auth.type",
3325
+ "equals": "BASIC",
3326
+ "type": "simple"
3327
+ },
3328
+ "type": "String"
3408
3329
  },
3409
3330
  {
3410
- "label": "Required roles",
3411
- "description": "List of roles to test JWT roles against",
3412
- "type": "String",
3331
+ "id": "inbound.auth.apiKey",
3332
+ "label": "API key",
3333
+ "description": "Expected API key",
3334
+ "optional": false,
3335
+ "feel": "optional",
3413
3336
  "group": "authorization",
3337
+ "binding": {
3338
+ "name": "inbound.auth.apiKey",
3339
+ "type": "zeebe:property"
3340
+ },
3341
+ "condition": {
3342
+ "property": "inbound.auth.type",
3343
+ "equals": "APIKEY",
3344
+ "type": "simple"
3345
+ },
3346
+ "type": "String"
3347
+ },
3348
+ {
3349
+ "id": "inbound.auth.apiKeyLocator",
3350
+ "label": "API key locator",
3351
+ "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>",
3352
+ "optional": false,
3353
+ "value": "=split(request.headers.authorization, \" \")[2]",
3354
+ "constraints": {
3355
+ "notEmpty": true
3356
+ },
3414
3357
  "feel": "required",
3415
- "optional": true,
3358
+ "group": "authorization",
3416
3359
  "binding": {
3417
- "type": "zeebe:property",
3418
- "name": "inbound.auth.jwt.requiredPermissions"
3360
+ "name": "inbound.auth.apiKeyLocator",
3361
+ "type": "zeebe:property"
3419
3362
  },
3420
3363
  "condition": {
3421
- "property": "authorizationType",
3422
- "equals": "JWT"
3423
- }
3364
+ "property": "inbound.auth.type",
3365
+ "equals": "APIKEY",
3366
+ "type": "simple"
3367
+ },
3368
+ "type": "String"
3424
3369
  },
3425
3370
  {
3426
- "label": "Username",
3427
- "description": "Username for basic authentication",
3428
- "type": "String",
3429
- "group": "authorization",
3371
+ "id": "inbound.auth.jwt.jwkUrl",
3372
+ "label": "JWK URL",
3373
+ "description": "Well-known URL of JWKs",
3374
+ "optional": false,
3430
3375
  "feel": "optional",
3376
+ "group": "authorization",
3431
3377
  "binding": {
3432
- "type": "zeebe:property",
3433
- "name": "inbound.auth.username"
3378
+ "name": "inbound.auth.jwt.jwkUrl",
3379
+ "type": "zeebe:property"
3434
3380
  },
3435
3381
  "condition": {
3436
- "property": "authorizationType",
3437
- "equals": "BASIC"
3382
+ "property": "inbound.auth.type",
3383
+ "equals": "JWT",
3384
+ "type": "simple"
3438
3385
  },
3439
- "constraints": {
3440
- "notEmpty": true
3441
- }
3386
+ "type": "String"
3442
3387
  },
3443
3388
  {
3444
- "label": "Password",
3445
- "description": "Password for basic authentication",
3446
- "type": "String",
3389
+ "id": "inbound.auth.jwt.permissionsExpression",
3390
+ "label": "JWT role property expression",
3391
+ "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>",
3392
+ "optional": false,
3393
+ "feel": "required",
3447
3394
  "group": "authorization",
3448
- "feel": "optional",
3449
3395
  "binding": {
3450
- "type": "zeebe:property",
3451
- "name": "inbound.auth.password"
3396
+ "name": "inbound.auth.jwt.permissionsExpression",
3397
+ "type": "zeebe:property"
3452
3398
  },
3453
3399
  "condition": {
3454
- "property": "authorizationType",
3455
- "equals": "BASIC"
3400
+ "property": "inbound.auth.type",
3401
+ "equals": "JWT",
3402
+ "type": "simple"
3456
3403
  },
3457
- "constraints": {
3458
- "notEmpty": true
3459
- }
3404
+ "type": "String"
3460
3405
  },
3461
3406
  {
3462
- "label": "API Key",
3463
- "description": "Expected API key",
3464
- "type": "String",
3407
+ "id": "inbound.auth.jwt.requiredPermissions",
3408
+ "label": "Required roles",
3409
+ "description": "List of roles to test JWT roles against",
3410
+ "optional": false,
3411
+ "feel": "required",
3465
3412
  "group": "authorization",
3466
- "feel": "optional",
3467
3413
  "binding": {
3468
- "type": "zeebe:property",
3469
- "name": "inbound.auth.apiKey"
3414
+ "name": "inbound.auth.jwt.requiredPermissions",
3415
+ "type": "zeebe:property"
3470
3416
  },
3471
3417
  "condition": {
3472
- "property": "authorizationType",
3473
- "equals": "APIKEY"
3418
+ "property": "inbound.auth.type",
3419
+ "equals": "JWT",
3420
+ "type": "simple"
3474
3421
  },
3475
- "constraints": {
3476
- "notEmpty": true
3477
- }
3422
+ "type": "String"
3478
3423
  },
3479
3424
  {
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",
3425
+ "id": "inbound.responseExpression",
3426
+ "label": "Response expression",
3427
+ "description": "Expression used to generate the HTTP response",
3428
+ "optional": true,
3484
3429
  "feel": "required",
3430
+ "group": "webhookResponse",
3485
3431
  "binding": {
3486
- "type": "zeebe:property",
3487
- "name": "inbound.auth.apiKeyLocator"
3488
- },
3489
- "condition": {
3490
- "property": "authorizationType",
3491
- "equals": "APIKEY"
3432
+ "name": "inbound.responseExpression",
3433
+ "type": "zeebe:property"
3492
3434
  },
3493
- "constraints": {
3494
- "notEmpty": true
3435
+ "type": "Text"
3436
+ },
3437
+ {
3438
+ "id": "inbound.verificationExpression",
3439
+ "label": "One time verification response expression",
3440
+ "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>",
3441
+ "optional": true,
3442
+ "feel": "required",
3443
+ "group": "webhookResponse",
3444
+ "binding": {
3445
+ "name": "inbound.verificationExpression",
3446
+ "type": "zeebe:property"
3495
3447
  },
3496
- "value": "=split(request.headers.authorization, \" \")[2]"
3448
+ "type": "Text"
3497
3449
  },
3498
3450
  {
3499
- "label": "Correlation key (process)",
3500
- "type": "String",
3501
- "group": "activation",
3451
+ "id": "activationCondition",
3452
+ "label": "Activation condition",
3453
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
3454
+ "optional": true,
3502
3455
  "feel": "required",
3503
- "description": "Sets up the correlation key from process variables",
3456
+ "group": "activation",
3504
3457
  "binding": {
3505
- "type": "bpmn:Message#zeebe:subscription#property",
3506
- "name": "correlationKey"
3458
+ "name": "activationCondition",
3459
+ "type": "zeebe:property"
3507
3460
  },
3508
- "constraints": {
3509
- "notEmpty": true
3510
- }
3461
+ "type": "String"
3511
3462
  },
3512
3463
  {
3513
- "label": "Correlation key (payload)",
3514
- "type": "String",
3464
+ "id": "consumeUnmatchedEvents",
3465
+ "label": "Consume unmatched events",
3466
+ "value": true,
3515
3467
  "group": "activation",
3468
+ "binding": {
3469
+ "name": "consumeUnmatchedEvents",
3470
+ "type": "zeebe:property"
3471
+ },
3472
+ "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",
3473
+ "type": "Boolean"
3474
+ },
3475
+ {
3476
+ "id": "correlationKeyProcess",
3477
+ "label": "Correlation key (process)",
3478
+ "description": "Sets up the correlation key from process variables",
3479
+ "constraints": {
3480
+ "notEmpty": true
3481
+ },
3516
3482
  "feel": "required",
3483
+ "group": "correlation",
3517
3484
  "binding": {
3518
- "type": "zeebe:property",
3519
- "name": "correlationKeyExpression"
3485
+ "name": "correlationKey",
3486
+ "type": "bpmn:Message#zeebe:subscription#property"
3520
3487
  },
3488
+ "type": "String"
3489
+ },
3490
+ {
3491
+ "id": "correlationKeyPayload",
3492
+ "label": "Correlation key (payload)",
3521
3493
  "description": "Extracts the correlation key from the incoming message payload",
3522
3494
  "constraints": {
3523
3495
  "notEmpty": true
3524
- }
3496
+ },
3497
+ "feel": "required",
3498
+ "group": "correlation",
3499
+ "binding": {
3500
+ "name": "correlationKeyExpression",
3501
+ "type": "zeebe:property"
3502
+ },
3503
+ "type": "String"
3525
3504
  },
3526
3505
  {
3527
- "label": "Condition",
3528
- "type": "String",
3529
- "group": "activation",
3530
- "feel": "required",
3506
+ "id": "messageIdExpression",
3507
+ "label": "Message ID expression",
3508
+ "description": "Expression to extract unique identifier of a message",
3531
3509
  "optional": true,
3510
+ "feel": "required",
3511
+ "group": "correlation",
3532
3512
  "binding": {
3533
- "type": "zeebe:property",
3534
- "name": "activationCondition"
3513
+ "name": "messageIdExpression",
3514
+ "type": "zeebe:property"
3535
3515
  },
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>"
3516
+ "type": "String"
3537
3517
  },
3538
3518
  {
3539
- "label": "Result variable",
3540
- "type": "String",
3541
- "group": "variable-mapping",
3519
+ "id": "messageTtl",
3520
+ "label": "Message TTL",
3521
+ "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
3542
3522
  "optional": true,
3523
+ "constraints": {
3524
+ "notEmpty": false,
3525
+ "pattern": {
3526
+ "value": "^(PT.*|)$",
3527
+ "message": "must be an ISO-8601 duration"
3528
+ }
3529
+ },
3530
+ "feel": "optional",
3531
+ "group": "correlation",
3543
3532
  "binding": {
3544
- "type": "zeebe:property",
3545
- "name": "resultVariable"
3533
+ "name": "messageTtl",
3534
+ "type": "zeebe:property"
3546
3535
  },
3547
- "description": "Name of variable to store the result of the connector in"
3536
+ "type": "String"
3548
3537
  },
3549
3538
  {
3550
- "label": "Result expression",
3551
- "type": "String",
3552
- "group": "variable-mapping",
3553
- "feel": "required",
3554
- "optional": true,
3539
+ "id": "messageNameUuid",
3540
+ "generatedValue": {
3541
+ "type": "uuid"
3542
+ },
3543
+ "group": "correlation",
3555
3544
  "binding": {
3556
- "type": "zeebe:property",
3557
- "name": "resultExpression"
3545
+ "name": "name",
3546
+ "type": "bpmn:Message#property"
3558
3547
  },
3559
- "description": "Expression to map the inbound payload to process variables"
3548
+ "type": "Hidden"
3560
3549
  },
3561
3550
  {
3562
- "label": "Response body expression",
3563
- "type": "Text",
3564
- "group": "webhookResponse",
3551
+ "id": "resultVariable",
3552
+ "label": "Result variable",
3553
+ "description": "Name of variable to store the response in",
3554
+ "group": "output",
3555
+ "binding": {
3556
+ "name": "resultVariable",
3557
+ "type": "zeebe:property"
3558
+ },
3559
+ "type": "String"
3560
+ },
3561
+ {
3562
+ "id": "resultExpression",
3563
+ "label": "Result expression",
3564
+ "description": "Expression to map the response into process variables",
3565
3565
  "feel": "required",
3566
- "optional": true,
3566
+ "group": "output",
3567
3567
  "binding": {
3568
- "type": "zeebe:property",
3569
- "name": "inbound.responseBodyExpression"
3568
+ "name": "resultExpression",
3569
+ "type": "zeebe:property"
3570
3570
  },
3571
- "description": "Specify condition and response"
3571
+ "type": "Text"
3572
3572
  }
3573
3573
  ],
3574
- "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
3574
  "engines": {
3578
- "camunda": "^8.2"
3575
+ "camunda": "^8.3"
3576
+ },
3577
+ "icon": {
3578
+ "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
3579
3579
  }
3580
3580
  },
3581
3581
  {
@@ -3583,9 +3583,15 @@
3583
3583
  "name": "Webhook Boundary Event Connector",
3584
3584
  "id": "io.camunda.connectors.webhook.WebhookConnectorBoundary.v1",
3585
3585
  "description": "Configure webhook to receive callbacks",
3586
- "metadata": {
3587
- "keywords": []
3588
- },
3586
+ "keywords": [
3587
+ "receive webhook",
3588
+ "HTTP trigger",
3589
+ "event received",
3590
+ "inbound event",
3591
+ "webhook trigger",
3592
+ "HTTP callback",
3593
+ "listen for event"
3594
+ ],
3589
3595
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
3590
3596
  "version": 14,
3591
3597
  "category": {
@@ -4121,15 +4127,18 @@
4121
4127
  },
4122
4128
  {
4123
4129
  "id": "messageNameUuid",
4130
+ "label": "Message name",
4124
4131
  "generatedValue": {
4125
4132
  "type": "uuid"
4126
4133
  },
4134
+ "feel": "optional",
4127
4135
  "group": "correlation",
4128
4136
  "binding": {
4129
4137
  "name": "name",
4130
4138
  "type": "bpmn:Message#property"
4131
4139
  },
4132
- "type": "Hidden"
4140
+ "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.",
4141
+ "type": "String"
4133
4142
  },
4134
4143
  {
4135
4144
  "id": "deduplicationModeManualFlag",
@@ -4198,7 +4207,7 @@
4198
4207
  {
4199
4208
  "id": "resultVariable",
4200
4209
  "label": "Result variable",
4201
- "description": "Name of variable to store the response in",
4210
+ "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>.",
4202
4211
  "group": "output",
4203
4212
  "binding": {
4204
4213
  "name": "resultVariable",
@@ -4209,7 +4218,8 @@
4209
4218
  {
4210
4219
  "id": "resultExpression",
4211
4220
  "label": "Result expression",
4212
- "description": "Expression to map the response into process variables",
4221
+ "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>.",
4222
+ "value": "{\n myRequestBody: request.body\n // Use FEEL to extract values, e.g.,:\n // myMessage: request.body.message\n}",
4213
4223
  "feel": "required",
4214
4224
  "group": "output",
4215
4225
  "binding": {