@camunda/connectors-element-templates 1.0.19 → 1.0.21

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 (116) hide show
  1. package/package.json +2 -2
  2. package/src/connectors-template.js +1 -3
  3. package/src/connectors.js +4 -0
  4. package/src/element-templates/agenticai-a2a-client-outbound-connector.json +1 -1
  5. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +43 -43
  6. package/src/element-templates/agenticai-aiagent-job-worker.json +2230 -222
  7. package/src/element-templates/agenticai-aiagent-outbound-connector.json +6281 -4356
  8. package/src/element-templates/agenticai-mcp-client-outbound-connector.json +718 -36
  9. package/src/element-templates/agenticai-mcp-remote-client-outbound-connector.json +2394 -949
  10. package/src/element-templates/app-integrations-connector.json +1047 -0
  11. package/src/element-templates/asana-connector.json +943 -109
  12. package/src/element-templates/automation-anywhere-outbound-connector.json +2240 -1747
  13. package/src/element-templates/aws-bedrock-agentcore-long-term-memory-outbound-connector.json +1068 -30
  14. package/src/element-templates/aws-bedrock-agentcore-runtime-outbound-connector.json +386 -5
  15. package/src/element-templates/aws-bedrock-codeinterpreter-outbound-connector.json +442 -5
  16. package/src/element-templates/aws-bedrock-knowledgebase-outbound-connector.json +417 -5
  17. package/src/element-templates/aws-bedrock-outbound-connector.json +2273 -623
  18. package/src/element-templates/aws-comprehend-outbound-connector.json +1573 -1
  19. package/src/element-templates/aws-dynamodb-outbound-connector.json +2950 -162
  20. package/src/element-templates/aws-eventbridge-connector-boundary.json +40 -40
  21. package/src/element-templates/aws-eventbridge-connector-intermediate.json +62 -62
  22. package/src/element-templates/aws-eventbridge-connector-start-event.json +33 -33
  23. package/src/element-templates/aws-eventbridge-outbound-connector.json +838 -424
  24. package/src/element-templates/aws-lambda-outbound-connector.json +495 -96
  25. package/src/element-templates/aws-s3-outbound-connector.json +2238 -44
  26. package/src/element-templates/aws-sagemaker-outbound-connector.json +681 -52
  27. package/src/element-templates/aws-sns-inbound-boundary.json +4 -3
  28. package/src/element-templates/aws-sns-inbound-intermediate.json +341 -340
  29. package/src/element-templates/aws-sns-inbound-message-start.json +241 -240
  30. package/src/element-templates/aws-sns-inbound-receive.json +4 -3
  31. package/src/element-templates/aws-sns-inbound-start-event.json +133 -133
  32. package/src/element-templates/aws-sns-outbound-connector.json +581 -124
  33. package/src/element-templates/aws-sqs-boundary-connector.json +939 -420
  34. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +851 -332
  35. package/src/element-templates/aws-sqs-outbound-connector.json +589 -136
  36. package/src/element-templates/aws-sqs-receive-connector.json +525 -7
  37. package/src/element-templates/aws-sqs-start-event-connector.json +380 -380
  38. package/src/element-templates/aws-sqs-start-message.json +736 -185
  39. package/src/element-templates/aws-textract-outbound-connector.json +866 -131
  40. package/src/element-templates/azure-blobstorage-outbound-connector.json +1648 -225
  41. package/src/element-templates/azure-open-ai-connector.json +1371 -8
  42. package/src/element-templates/blue-prism-connector.json +609 -30
  43. package/src/element-templates/box-outbound-connector.json +2356 -272
  44. package/src/element-templates/csv-outbound-connector.json +449 -0
  45. package/src/element-templates/easy-post-connector.json +1251 -170
  46. package/src/element-templates/email-outbound-connector.json +3087 -1013
  47. package/src/element-templates/embeddings-vector-database-outbound-connector.json +2161 -1
  48. package/src/element-templates/github-connector.json +18554 -14368
  49. package/src/element-templates/github-webhook-connector-boundary.json +24 -24
  50. package/src/element-templates/github-webhook-connector-intermediate.json +8 -8
  51. package/src/element-templates/github-webhook-connector-message-start.json +8 -8
  52. package/src/element-templates/github-webhook-connector-receive.json +8 -8
  53. package/src/element-templates/github-webhook-connector-start-event.json +58 -58
  54. package/src/element-templates/gitlab-connector.json +3022 -1120
  55. package/src/element-templates/google-cloud-storage-outbound-connector.json +1447 -240
  56. package/src/element-templates/google-drive-outbound-connector.json +2980 -1428
  57. package/src/element-templates/google-gemini-outbound-connector.json +41 -55
  58. package/src/element-templates/google-maps-platform-connector.json +688 -137
  59. package/src/element-templates/google-sheets-outbound-connector.json +3186 -2030
  60. package/src/element-templates/graphql-outbound-connector.json +4149 -1485
  61. package/src/element-templates/http-json-connector.json +6143 -2053
  62. package/src/element-templates/http-polling-boundary-catch-event-connector.json +2426 -364
  63. package/src/element-templates/http-polling-connector.json +3312 -1250
  64. package/src/element-templates/hubspot-outbound-connector.json +2817 -67
  65. package/src/element-templates/hugging-face-connector.json +83 -82
  66. package/src/element-templates/jdbc-outbound-connector.json +506 -9
  67. package/src/element-templates/kafka-inbound-connector-boundary.json +968 -971
  68. package/src/element-templates/kafka-inbound-connector-intermediate.json +53 -56
  69. package/src/element-templates/kafka-inbound-connector-receive.json +9 -12
  70. package/src/element-templates/kafka-inbound-connector-start-message.json +545 -548
  71. package/src/element-templates/kafka-inbound-connector.json +240 -240
  72. package/src/element-templates/kafka-outbound-connector.json +304 -308
  73. package/src/element-templates/microsoft-o365-email-boundary-event-connector.json +7 -10
  74. package/src/element-templates/microsoft-o365-email-intermediate-catch-event-connector.json +7 -10
  75. package/src/element-templates/microsoft-o365-email-message-start-event-connector.json +7 -10
  76. package/src/element-templates/microsoft-office365-mail-connector.json +2077 -35
  77. package/src/element-templates/microsoft-teams-outbound-connector.json +2897 -456
  78. package/src/element-templates/openai-connector.json +701 -207
  79. package/src/element-templates/operate-connector.json +83 -86
  80. package/src/element-templates/orchestration-connector.json +1843 -0
  81. package/src/element-templates/power-automate-connector.json +62 -62
  82. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +772 -774
  83. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +456 -458
  84. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +573 -575
  85. package/src/element-templates/rabbitmq-inbound-connector-receive.json +5 -7
  86. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +347 -347
  87. package/src/element-templates/rabbitmq-outbound-connector.json +631 -631
  88. package/src/element-templates/rpa-connector.json +6 -6
  89. package/src/element-templates/salesforce-connector.json +653 -19
  90. package/src/element-templates/send-message-connector-intermediate-throw-event.json +301 -1
  91. package/src/element-templates/send-message-connector-message-end-event.json +301 -1
  92. package/src/element-templates/send-message-connector-send-task.json +300 -1
  93. package/src/element-templates/sendgrid-outbound-connector.json +790 -790
  94. package/src/element-templates/servicenow-connector.json +1364 -7
  95. package/src/element-templates/servicenow-flow-starter-connector.json +16 -16
  96. package/src/element-templates/servicenow-incident-connector.json +1075 -29
  97. package/src/element-templates/slack-inbound-boundary.json +493 -493
  98. package/src/element-templates/slack-inbound-intermediate.json +448 -448
  99. package/src/element-templates/slack-inbound-message-start.json +369 -369
  100. package/src/element-templates/slack-inbound-receive.json +2 -2
  101. package/src/element-templates/slack-inbound-start-event.json +328 -328
  102. package/src/element-templates/slack-outbound-connector.json +2365 -1262
  103. package/src/element-templates/soap-outbound-connector.json +113 -117
  104. package/src/element-templates/twilio-connector.json +1186 -373
  105. package/src/element-templates/twilio-webhook-boundary-connector.json +9 -10
  106. package/src/element-templates/twilio-webhook-connector.json +60 -61
  107. package/src/element-templates/twilio-webhook-intermediate-connector.json +31 -32
  108. package/src/element-templates/twilio-webhook-message-start-connector.json +10 -11
  109. package/src/element-templates/twilio-webhook-receive-connector.json +9 -10
  110. package/src/element-templates/uipath-connector.json +668 -50
  111. package/src/element-templates/webhook-connector-boundary.json +1040 -385
  112. package/src/element-templates/webhook-connector-intermediate.json +2100 -1445
  113. package/src/element-templates/webhook-connector-receive.json +659 -5
  114. package/src/element-templates/webhook-connector-start-event.json +1860 -1299
  115. package/src/element-templates/webhook-connector-start-message.json +1535 -848
  116. package/src/element-templates/whatsapp-connector.json +393 -23
@@ -540,11 +540,11 @@
540
540
  },
541
541
  {
542
542
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
543
- "name": "Webhook Intermediate Catch Event Connector",
543
+ "name": "Webhook Intermediate Event Connector",
544
544
  "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
545
- "version": 4,
546
545
  "description": "Configure webhook to receive callbacks",
547
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
546
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
547
+ "version": 11,
548
548
  "category": {
549
549
  "id": "connectors",
550
550
  "name": "Connectors"
@@ -567,52 +567,44 @@
567
567
  "id": "authorization",
568
568
  "label": "Authorization"
569
569
  },
570
+ {
571
+ "id": "webhookResponse",
572
+ "label": "Webhook response"
573
+ },
570
574
  {
571
575
  "id": "activation",
572
576
  "label": "Activation"
573
577
  },
574
578
  {
575
- "id": "variable-mapping",
576
- "label": "Variable mapping"
579
+ "id": "correlation",
580
+ "label": "Correlation",
581
+ "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
577
582
  },
578
583
  {
579
- "id": "webhookResponse",
580
- "label": "Webhook response"
584
+ "id": "output",
585
+ "label": "Output mapping"
581
586
  }
582
587
  ],
583
588
  "properties": [
584
589
  {
585
- "type": "Hidden",
586
590
  "value": "io.camunda:webhook:1",
587
591
  "binding": {
588
- "type": "zeebe:property",
589
- "name": "inbound.type"
590
- }
591
- },
592
- {
593
- "type": "Hidden",
594
- "generatedValue": {
595
- "type": "uuid"
592
+ "name": "inbound.type",
593
+ "type": "zeebe:property"
596
594
  },
597
- "binding": {
598
- "type": "bpmn:Message#property",
599
- "name": "name"
600
- }
601
- },
602
- {
603
- "type": "Hidden",
604
- "value": "ConfigurableInboundWebhook",
605
- "binding": {
606
- "type": "zeebe:property",
607
- "name": "inbound.subtype"
608
- }
595
+ "type": "Hidden"
609
596
  },
610
597
  {
611
- "id": "webhookMethod",
598
+ "id": "inbound.method",
612
599
  "label": "Webhook method",
613
- "group": "endpoint",
614
600
  "description": "Select HTTP method",
601
+ "optional": false,
615
602
  "value": "any",
603
+ "group": "endpoint",
604
+ "binding": {
605
+ "name": "inbound.method",
606
+ "type": "zeebe:property"
607
+ },
616
608
  "type": "Dropdown",
617
609
  "choices": [
618
610
  {
@@ -620,46 +612,53 @@
620
612
  "value": "any"
621
613
  },
622
614
  {
623
- "name": "Get",
615
+ "name": "GET",
624
616
  "value": "get"
625
617
  },
626
618
  {
627
- "name": "Post",
619
+ "name": "POST",
628
620
  "value": "post"
629
621
  },
630
622
  {
631
- "name": "Put",
623
+ "name": "PUT",
632
624
  "value": "put"
633
625
  },
634
626
  {
635
- "name": "Delete",
627
+ "name": "DELETE",
636
628
  "value": "delete"
637
629
  }
638
- ],
639
- "binding": {
640
- "type": "zeebe:property",
641
- "name": "inbound.method"
642
- }
630
+ ]
643
631
  },
644
632
  {
633
+ "id": "inbound.context",
645
634
  "label": "Webhook ID",
646
- "type": "String",
635
+ "description": "The webhook ID is a part of the URL",
636
+ "optional": false,
637
+ "constraints": {
638
+ "notEmpty": true,
639
+ "pattern": {
640
+ "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
641
+ "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
642
+ }
643
+ },
647
644
  "group": "endpoint",
648
645
  "binding": {
649
- "type": "zeebe:property",
650
- "name": "inbound.context"
646
+ "name": "inbound.context",
647
+ "type": "zeebe:property"
651
648
  },
652
- "description": "The webhook ID is a part of the URL",
653
- "constraints": {
654
- "notEmpty": true
655
- }
649
+ "type": "String"
656
650
  },
657
651
  {
658
- "id": "shouldValidateHmac",
652
+ "id": "inbound.shouldValidateHmac",
659
653
  "label": "HMAC authentication",
660
- "group": "authentication",
661
- "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",
654
+ "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",
655
+ "optional": false,
662
656
  "value": "disabled",
657
+ "group": "authentication",
658
+ "binding": {
659
+ "name": "inbound.shouldValidateHmac",
660
+ "type": "zeebe:property"
661
+ },
663
662
  "type": "Dropdown",
664
663
  "choices": [
665
664
  {
@@ -670,47 +669,60 @@
670
669
  "name": "Disabled",
671
670
  "value": "disabled"
672
671
  }
673
- ],
674
- "binding": {
675
- "type": "zeebe:property",
676
- "name": "inbound.shouldValidateHmac"
677
- }
672
+ ]
678
673
  },
679
674
  {
675
+ "id": "inbound.hmacSecret",
680
676
  "label": "HMAC secret key",
681
677
  "description": "Shared secret key",
682
- "type": "String",
683
- "group": "authentication",
684
678
  "optional": true,
679
+ "feel": "optional",
680
+ "group": "authentication",
685
681
  "binding": {
686
- "type": "zeebe:property",
687
- "name": "inbound.hmacSecret"
682
+ "name": "inbound.hmacSecret",
683
+ "type": "zeebe:property"
688
684
  },
689
685
  "condition": {
690
- "property": "shouldValidateHmac",
691
- "equals": "enabled"
692
- }
686
+ "property": "inbound.shouldValidateHmac",
687
+ "equals": "enabled",
688
+ "type": "simple"
689
+ },
690
+ "type": "String"
693
691
  },
694
692
  {
693
+ "id": "inbound.hmacHeader",
695
694
  "label": "HMAC header",
696
695
  "description": "Name of header attribute that will contain the HMAC value",
697
- "type": "String",
698
- "group": "authentication",
699
696
  "optional": true,
697
+ "feel": "optional",
698
+ "group": "authentication",
700
699
  "binding": {
701
- "type": "zeebe:property",
702
- "name": "inbound.hmacHeader"
700
+ "name": "inbound.hmacHeader",
701
+ "type": "zeebe:property"
703
702
  },
704
703
  "condition": {
705
- "property": "shouldValidateHmac",
706
- "equals": "enabled"
707
- }
704
+ "property": "inbound.shouldValidateHmac",
705
+ "equals": "enabled",
706
+ "type": "simple"
707
+ },
708
+ "type": "String"
708
709
  },
709
710
  {
711
+ "id": "inbound.hmacAlgorithm",
710
712
  "label": "HMAC algorithm",
711
- "group": "authentication",
712
713
  "description": "Choose HMAC algorithm",
714
+ "optional": false,
713
715
  "value": "sha_256",
716
+ "group": "authentication",
717
+ "binding": {
718
+ "name": "inbound.hmacAlgorithm",
719
+ "type": "zeebe:property"
720
+ },
721
+ "condition": {
722
+ "property": "inbound.shouldValidateHmac",
723
+ "equals": "enabled",
724
+ "type": "simple"
725
+ },
714
726
  "type": "Dropdown",
715
727
  "choices": [
716
728
  {
@@ -725,101 +737,847 @@
725
737
  "name": "SHA-512",
726
738
  "value": "sha_512"
727
739
  }
728
- ],
729
- "binding": {
730
- "type": "zeebe:property",
731
- "name": "inbound.hmacAlgorithm"
732
- },
733
- "condition": {
734
- "property": "shouldValidateHmac",
735
- "equals": "enabled"
736
- }
740
+ ]
737
741
  },
738
742
  {
743
+ "id": "inbound.hmacScopes",
739
744
  "label": "HMAC scopes",
740
- "group": "authentication",
741
- "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>",
742
- "feel": "required",
743
- "type": "String",
745
+ "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>",
744
746
  "optional": true,
747
+ "feel": "required",
748
+ "group": "authentication",
745
749
  "binding": {
746
- "type": "zeebe:property",
747
- "name": "inbound.hmacScopes"
750
+ "name": "inbound.hmacScopes",
751
+ "type": "zeebe:property"
748
752
  },
749
753
  "condition": {
750
- "property": "shouldValidateHmac",
751
- "equals": "enabled"
752
- }
754
+ "property": "inbound.shouldValidateHmac",
755
+ "equals": "enabled",
756
+ "type": "simple"
757
+ },
758
+ "type": "String"
753
759
  },
754
760
  {
755
- "id": "authorizationType",
761
+ "id": "inbound.auth.type",
756
762
  "label": "Authorization type",
757
- "group": "authorization",
758
- "description": "Choose the authorization type.",
763
+ "description": "Choose the authorization type",
759
764
  "value": "NONE",
765
+ "group": "authorization",
766
+ "binding": {
767
+ "name": "inbound.auth.type",
768
+ "type": "zeebe:property"
769
+ },
760
770
  "type": "Dropdown",
761
771
  "choices": [
762
772
  {
763
773
  "name": "None",
764
774
  "value": "NONE"
765
775
  },
766
- {
767
- "name": "JWT",
768
- "value": "JWT"
769
- },
770
776
  {
771
777
  "name": "Basic",
772
778
  "value": "BASIC"
773
779
  },
774
780
  {
775
- "name": "API Key",
781
+ "name": "API key",
776
782
  "value": "APIKEY"
783
+ },
784
+ {
785
+ "name": "JWT",
786
+ "value": "JWT"
777
787
  }
778
- ],
779
- "binding": {
780
- "type": "zeebe:property",
781
- "name": "inbound.auth.type"
782
- }
788
+ ]
783
789
  },
784
790
  {
785
- "label": "JWK url",
786
- "description": "Well-known url of JWKs",
787
- "type": "String",
788
- "group": "authorization",
791
+ "id": "inbound.auth.username",
792
+ "label": "Username",
793
+ "description": "Username for basic authentication",
794
+ "optional": false,
789
795
  "feel": "optional",
790
- "optional": true,
796
+ "group": "authorization",
791
797
  "binding": {
792
- "type": "zeebe:property",
793
- "name": "inbound.auth.jwt.jwkUrl"
798
+ "name": "inbound.auth.username",
799
+ "type": "zeebe:property"
794
800
  },
795
801
  "condition": {
796
- "property": "authorizationType",
797
- "equals": "JWT"
798
- }
802
+ "property": "inbound.auth.type",
803
+ "equals": "BASIC",
804
+ "type": "simple"
805
+ },
806
+ "type": "String"
799
807
  },
800
808
  {
801
- "label": "JWT role property expression",
802
- "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>",
803
- "type": "String",
809
+ "id": "inbound.auth.password",
810
+ "label": "Password",
811
+ "description": "Password for basic authentication",
812
+ "optional": false,
813
+ "feel": "optional",
804
814
  "group": "authorization",
805
- "feel": "required",
806
- "optional": true,
807
815
  "binding": {
808
- "type": "zeebe:property",
809
- "name": "inbound.auth.jwt.permissionsExpression"
816
+ "name": "inbound.auth.password",
817
+ "type": "zeebe:property"
810
818
  },
811
819
  "condition": {
812
- "property": "authorizationType",
813
- "equals": "JWT"
814
- }
820
+ "property": "inbound.auth.type",
821
+ "equals": "BASIC",
822
+ "type": "simple"
823
+ },
824
+ "type": "String"
815
825
  },
816
826
  {
817
- "label": "Required roles",
818
- "description": "List of roles to test JWT roles against",
819
- "type": "String",
820
- "group": "authorization",
821
- "feel": "required",
822
- "optional": true,
827
+ "id": "inbound.auth.apiKey",
828
+ "label": "API key",
829
+ "description": "Expected API key",
830
+ "optional": false,
831
+ "feel": "optional",
832
+ "group": "authorization",
833
+ "binding": {
834
+ "name": "inbound.auth.apiKey",
835
+ "type": "zeebe:property"
836
+ },
837
+ "condition": {
838
+ "property": "inbound.auth.type",
839
+ "equals": "APIKEY",
840
+ "type": "simple"
841
+ },
842
+ "type": "String"
843
+ },
844
+ {
845
+ "id": "inbound.auth.apiKeyLocator",
846
+ "label": "API key locator",
847
+ "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>",
848
+ "optional": false,
849
+ "value": "=split(request.headers.authorization, \" \")[2]",
850
+ "constraints": {
851
+ "notEmpty": true
852
+ },
853
+ "feel": "required",
854
+ "group": "authorization",
855
+ "binding": {
856
+ "name": "inbound.auth.apiKeyLocator",
857
+ "type": "zeebe:property"
858
+ },
859
+ "condition": {
860
+ "property": "inbound.auth.type",
861
+ "equals": "APIKEY",
862
+ "type": "simple"
863
+ },
864
+ "type": "String"
865
+ },
866
+ {
867
+ "id": "inbound.auth.jwt.jwkUrl",
868
+ "label": "JWK URL",
869
+ "description": "Well-known URL of JWKs",
870
+ "optional": false,
871
+ "feel": "optional",
872
+ "group": "authorization",
873
+ "binding": {
874
+ "name": "inbound.auth.jwt.jwkUrl",
875
+ "type": "zeebe:property"
876
+ },
877
+ "condition": {
878
+ "property": "inbound.auth.type",
879
+ "equals": "JWT",
880
+ "type": "simple"
881
+ },
882
+ "type": "String"
883
+ },
884
+ {
885
+ "id": "inbound.auth.jwt.permissionsExpression",
886
+ "label": "JWT role property expression",
887
+ "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>",
888
+ "optional": false,
889
+ "feel": "required",
890
+ "group": "authorization",
891
+ "binding": {
892
+ "name": "inbound.auth.jwt.permissionsExpression",
893
+ "type": "zeebe:property"
894
+ },
895
+ "condition": {
896
+ "property": "inbound.auth.type",
897
+ "equals": "JWT",
898
+ "type": "simple"
899
+ },
900
+ "type": "String"
901
+ },
902
+ {
903
+ "id": "inbound.auth.jwt.requiredPermissions",
904
+ "label": "Required roles",
905
+ "description": "List of roles to test JWT roles against",
906
+ "optional": false,
907
+ "feel": "required",
908
+ "group": "authorization",
909
+ "binding": {
910
+ "name": "inbound.auth.jwt.requiredPermissions",
911
+ "type": "zeebe:property"
912
+ },
913
+ "condition": {
914
+ "property": "inbound.auth.type",
915
+ "equals": "JWT",
916
+ "type": "simple"
917
+ },
918
+ "type": "String"
919
+ },
920
+ {
921
+ "id": "inbound.responseExpression",
922
+ "label": "Response expression",
923
+ "description": "Expression used to generate the HTTP response",
924
+ "optional": true,
925
+ "feel": "required",
926
+ "group": "webhookResponse",
927
+ "binding": {
928
+ "name": "inbound.responseExpression",
929
+ "type": "zeebe:property"
930
+ },
931
+ "type": "Text"
932
+ },
933
+ {
934
+ "id": "inbound.verificationExpression",
935
+ "label": "One time verification response expression",
936
+ "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>",
937
+ "optional": true,
938
+ "feel": "required",
939
+ "group": "webhookResponse",
940
+ "binding": {
941
+ "name": "inbound.verificationExpression",
942
+ "type": "zeebe:property"
943
+ },
944
+ "type": "Text"
945
+ },
946
+ {
947
+ "id": "activationCondition",
948
+ "label": "Activation condition",
949
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
950
+ "optional": true,
951
+ "feel": "required",
952
+ "group": "activation",
953
+ "binding": {
954
+ "name": "activationCondition",
955
+ "type": "zeebe:property"
956
+ },
957
+ "type": "String"
958
+ },
959
+ {
960
+ "id": "consumeUnmatchedEvents",
961
+ "label": "Consume unmatched events",
962
+ "value": true,
963
+ "group": "activation",
964
+ "binding": {
965
+ "name": "consumeUnmatchedEvents",
966
+ "type": "zeebe:property"
967
+ },
968
+ "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",
969
+ "type": "Boolean"
970
+ },
971
+ {
972
+ "id": "correlationKeyProcess",
973
+ "label": "Correlation key (process)",
974
+ "description": "Sets up the correlation key from process variables",
975
+ "constraints": {
976
+ "notEmpty": true
977
+ },
978
+ "feel": "required",
979
+ "group": "correlation",
980
+ "binding": {
981
+ "name": "correlationKey",
982
+ "type": "bpmn:Message#zeebe:subscription#property"
983
+ },
984
+ "type": "String"
985
+ },
986
+ {
987
+ "id": "correlationKeyPayload",
988
+ "label": "Correlation key (payload)",
989
+ "description": "Extracts the correlation key from the incoming message payload",
990
+ "constraints": {
991
+ "notEmpty": true
992
+ },
993
+ "feel": "required",
994
+ "group": "correlation",
995
+ "binding": {
996
+ "name": "correlationKeyExpression",
997
+ "type": "zeebe:property"
998
+ },
999
+ "type": "String"
1000
+ },
1001
+ {
1002
+ "id": "messageIdExpression",
1003
+ "label": "Message ID expression",
1004
+ "description": "Expression to extract unique identifier of a message",
1005
+ "optional": true,
1006
+ "feel": "required",
1007
+ "group": "correlation",
1008
+ "binding": {
1009
+ "name": "messageIdExpression",
1010
+ "type": "zeebe:property"
1011
+ },
1012
+ "type": "String"
1013
+ },
1014
+ {
1015
+ "id": "messageTtl",
1016
+ "label": "Message TTL",
1017
+ "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
1018
+ "optional": true,
1019
+ "constraints": {
1020
+ "notEmpty": false,
1021
+ "pattern": {
1022
+ "value": "^(PT.*|)$",
1023
+ "message": "must be an ISO-8601 duration"
1024
+ }
1025
+ },
1026
+ "feel": "optional",
1027
+ "group": "correlation",
1028
+ "binding": {
1029
+ "name": "messageTtl",
1030
+ "type": "zeebe:property"
1031
+ },
1032
+ "type": "String"
1033
+ },
1034
+ {
1035
+ "id": "messageNameUuid",
1036
+ "generatedValue": {
1037
+ "type": "uuid"
1038
+ },
1039
+ "group": "correlation",
1040
+ "binding": {
1041
+ "name": "name",
1042
+ "type": "bpmn:Message#property"
1043
+ },
1044
+ "type": "Hidden"
1045
+ },
1046
+ {
1047
+ "id": "resultVariable",
1048
+ "label": "Result variable",
1049
+ "description": "Name of variable to store the response in",
1050
+ "group": "output",
1051
+ "binding": {
1052
+ "name": "resultVariable",
1053
+ "type": "zeebe:property"
1054
+ },
1055
+ "type": "String"
1056
+ },
1057
+ {
1058
+ "id": "resultExpression",
1059
+ "label": "Result expression",
1060
+ "description": "Expression to map the response into process variables",
1061
+ "feel": "required",
1062
+ "group": "output",
1063
+ "binding": {
1064
+ "name": "resultExpression",
1065
+ "type": "zeebe:property"
1066
+ },
1067
+ "type": "Text"
1068
+ }
1069
+ ],
1070
+ "icon": {
1071
+ "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
1072
+ },
1073
+ "engines": {
1074
+ "camunda": "^8.6"
1075
+ }
1076
+ },
1077
+ {
1078
+ "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1079
+ "name": "Webhook connector",
1080
+ "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
1081
+ "version": 2,
1082
+ "description": "Configure webhook to receive callbacks",
1083
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
1084
+ "category": {
1085
+ "id": "connectors",
1086
+ "name": "Connectors"
1087
+ },
1088
+ "appliesTo": ["bpmn:IntermediateCatchEvent", "bpmn:IntermediateThrowEvent"],
1089
+ "elementType": {
1090
+ "value": "bpmn:IntermediateCatchEvent",
1091
+ "eventDefinition": "bpmn:MessageEventDefinition"
1092
+ },
1093
+ "groups": [
1094
+ {
1095
+ "id": "endpoint",
1096
+ "label": "Webhook configuration"
1097
+ },
1098
+ {
1099
+ "id": "activation",
1100
+ "label": "Activation"
1101
+ },
1102
+ {
1103
+ "id": "variable-mapping",
1104
+ "label": "Variable mapping"
1105
+ }
1106
+ ],
1107
+ "properties": [
1108
+ {
1109
+ "type": "Hidden",
1110
+ "value": "io.camunda:webhook:1",
1111
+ "binding": {
1112
+ "type": "zeebe:property",
1113
+ "name": "inbound.type"
1114
+ }
1115
+ },
1116
+ {
1117
+ "type": "Hidden",
1118
+ "generatedValue": {
1119
+ "type": "uuid"
1120
+ },
1121
+ "binding": {
1122
+ "type": "bpmn:Message#property",
1123
+ "name": "name"
1124
+ }
1125
+ },
1126
+ {
1127
+ "type": "Hidden",
1128
+ "value": "ConfigurableInboundWebhook",
1129
+ "binding": {
1130
+ "type": "zeebe:property",
1131
+ "name": "inbound.subtype"
1132
+ }
1133
+ },
1134
+ {
1135
+ "label": "Webhook ID",
1136
+ "type": "String",
1137
+ "group": "endpoint",
1138
+ "binding": {
1139
+ "type": "zeebe:property",
1140
+ "name": "inbound.context"
1141
+ },
1142
+ "description": "The webhook ID is a part of the URL",
1143
+ "constraints": {
1144
+ "notEmpty": true
1145
+ }
1146
+ },
1147
+ {
1148
+ "id": "shouldValidateHmac",
1149
+ "label": "HMAC authentication",
1150
+ "group": "endpoint",
1151
+ "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",
1152
+ "value": "disabled",
1153
+ "type": "Dropdown",
1154
+ "choices": [
1155
+ {
1156
+ "name": "Enabled",
1157
+ "value": "enabled"
1158
+ },
1159
+ {
1160
+ "name": "Disabled",
1161
+ "value": "disabled"
1162
+ }
1163
+ ],
1164
+ "binding": {
1165
+ "type": "zeebe:property",
1166
+ "name": "inbound.shouldValidateHmac"
1167
+ }
1168
+ },
1169
+ {
1170
+ "label": "HMAC secret key",
1171
+ "description": "Shared secret key",
1172
+ "type": "String",
1173
+ "group": "endpoint",
1174
+ "optional": true,
1175
+ "binding": {
1176
+ "type": "zeebe:property",
1177
+ "name": "inbound.hmacSecret"
1178
+ },
1179
+ "condition": {
1180
+ "property": "shouldValidateHmac",
1181
+ "equals": "enabled"
1182
+ }
1183
+ },
1184
+ {
1185
+ "label": "HMAC header",
1186
+ "description": "Name of header attribute that will contain the HMAC value",
1187
+ "type": "String",
1188
+ "group": "endpoint",
1189
+ "optional": true,
1190
+ "binding": {
1191
+ "type": "zeebe:property",
1192
+ "name": "inbound.hmacHeader"
1193
+ },
1194
+ "condition": {
1195
+ "property": "shouldValidateHmac",
1196
+ "equals": "enabled"
1197
+ }
1198
+ },
1199
+ {
1200
+ "label": "HMAC algorithm",
1201
+ "group": "endpoint",
1202
+ "description": "Choose HMAC algorithm",
1203
+ "value": "sha_256",
1204
+ "type": "Dropdown",
1205
+ "choices": [
1206
+ {
1207
+ "name": "SHA-1",
1208
+ "value": "sha_1"
1209
+ },
1210
+ {
1211
+ "name": "SHA-256",
1212
+ "value": "sha_256"
1213
+ },
1214
+ {
1215
+ "name": "SHA-512",
1216
+ "value": "sha_512"
1217
+ }
1218
+ ],
1219
+ "binding": {
1220
+ "type": "zeebe:property",
1221
+ "name": "inbound.hmacAlgorithm"
1222
+ },
1223
+ "condition": {
1224
+ "property": "shouldValidateHmac",
1225
+ "equals": "enabled"
1226
+ }
1227
+ },
1228
+ {
1229
+ "label": "Correlation key (process)",
1230
+ "type": "String",
1231
+ "group": "activation",
1232
+ "feel": "required",
1233
+ "description": "Sets up the correlation key from process variables",
1234
+ "binding": {
1235
+ "type": "bpmn:Message#zeebe:subscription#property",
1236
+ "name": "correlationKey"
1237
+ },
1238
+ "constraints": {
1239
+ "notEmpty": true
1240
+ }
1241
+ },
1242
+ {
1243
+ "label": "Correlation key (payload)",
1244
+ "type": "String",
1245
+ "group": "activation",
1246
+ "feel": "required",
1247
+ "binding": {
1248
+ "type": "zeebe:property",
1249
+ "name": "correlationKeyExpression"
1250
+ },
1251
+ "description": "Extracts the correlation key from the incoming message payload",
1252
+ "constraints": {
1253
+ "notEmpty": true
1254
+ }
1255
+ },
1256
+ {
1257
+ "label": "Condition",
1258
+ "type": "String",
1259
+ "group": "activation",
1260
+ "feel": "required",
1261
+ "optional": true,
1262
+ "binding": {
1263
+ "type": "zeebe:property",
1264
+ "name": "activationCondition"
1265
+ },
1266
+ "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>"
1267
+ },
1268
+ {
1269
+ "label": "Result variable",
1270
+ "type": "String",
1271
+ "group": "variable-mapping",
1272
+ "optional": true,
1273
+ "binding": {
1274
+ "type": "zeebe:property",
1275
+ "name": "resultVariable"
1276
+ },
1277
+ "description": "Name of variable to store the result of the connector in"
1278
+ },
1279
+ {
1280
+ "label": "Result expression",
1281
+ "type": "String",
1282
+ "group": "variable-mapping",
1283
+ "feel": "required",
1284
+ "optional": true,
1285
+ "binding": {
1286
+ "type": "zeebe:property",
1287
+ "name": "resultExpression"
1288
+ },
1289
+ "description": "Expression to map the inbound payload to process variables"
1290
+ }
1291
+ ],
1292
+ "icon": {
1293
+ "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"
1294
+ },
1295
+ "engines": {
1296
+ "camunda": "^8.2"
1297
+ }
1298
+ },
1299
+ {
1300
+ "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1301
+ "name": "Webhook Intermediate Catch Event Connector",
1302
+ "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
1303
+ "version": 5,
1304
+ "description": "Configure webhook to receive callbacks",
1305
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
1306
+ "category": {
1307
+ "id": "connectors",
1308
+ "name": "Connectors"
1309
+ },
1310
+ "appliesTo": ["bpmn:IntermediateCatchEvent", "bpmn:IntermediateThrowEvent"],
1311
+ "elementType": {
1312
+ "value": "bpmn:IntermediateCatchEvent",
1313
+ "eventDefinition": "bpmn:MessageEventDefinition"
1314
+ },
1315
+ "groups": [
1316
+ {
1317
+ "id": "endpoint",
1318
+ "label": "Webhook configuration"
1319
+ },
1320
+ {
1321
+ "id": "authentication",
1322
+ "label": "Authentication"
1323
+ },
1324
+ {
1325
+ "id": "authorization",
1326
+ "label": "Authorization"
1327
+ },
1328
+ {
1329
+ "id": "activation",
1330
+ "label": "Activation"
1331
+ },
1332
+ {
1333
+ "id": "variable-mapping",
1334
+ "label": "Variable mapping"
1335
+ },
1336
+ {
1337
+ "id": "webhookResponse",
1338
+ "label": "Webhook response"
1339
+ }
1340
+ ],
1341
+ "properties": [
1342
+ {
1343
+ "type": "Hidden",
1344
+ "value": "io.camunda:webhook:1",
1345
+ "binding": {
1346
+ "type": "zeebe:property",
1347
+ "name": "inbound.type"
1348
+ }
1349
+ },
1350
+ {
1351
+ "type": "Hidden",
1352
+ "generatedValue": {
1353
+ "type": "uuid"
1354
+ },
1355
+ "binding": {
1356
+ "type": "bpmn:Message#property",
1357
+ "name": "name"
1358
+ }
1359
+ },
1360
+ {
1361
+ "type": "Hidden",
1362
+ "value": "ConfigurableInboundWebhook",
1363
+ "binding": {
1364
+ "type": "zeebe:property",
1365
+ "name": "inbound.subtype"
1366
+ }
1367
+ },
1368
+ {
1369
+ "id": "webhookMethod",
1370
+ "label": "Webhook method",
1371
+ "group": "endpoint",
1372
+ "description": "Select HTTP method",
1373
+ "value": "any",
1374
+ "type": "Dropdown",
1375
+ "choices": [
1376
+ {
1377
+ "name": "Any",
1378
+ "value": "any"
1379
+ },
1380
+ {
1381
+ "name": "Get",
1382
+ "value": "get"
1383
+ },
1384
+ {
1385
+ "name": "Post",
1386
+ "value": "post"
1387
+ },
1388
+ {
1389
+ "name": "Put",
1390
+ "value": "put"
1391
+ },
1392
+ {
1393
+ "name": "Delete",
1394
+ "value": "delete"
1395
+ }
1396
+ ],
1397
+ "binding": {
1398
+ "type": "zeebe:property",
1399
+ "name": "inbound.method"
1400
+ }
1401
+ },
1402
+ {
1403
+ "label": "Webhook ID",
1404
+ "type": "String",
1405
+ "group": "endpoint",
1406
+ "binding": {
1407
+ "type": "zeebe:property",
1408
+ "name": "inbound.context"
1409
+ },
1410
+ "description": "The webhook ID is a part of the URL",
1411
+ "constraints": {
1412
+ "notEmpty": true
1413
+ }
1414
+ },
1415
+ {
1416
+ "id": "shouldValidateHmac",
1417
+ "label": "HMAC authentication",
1418
+ "group": "authentication",
1419
+ "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",
1420
+ "value": "disabled",
1421
+ "type": "Dropdown",
1422
+ "choices": [
1423
+ {
1424
+ "name": "Enabled",
1425
+ "value": "enabled"
1426
+ },
1427
+ {
1428
+ "name": "Disabled",
1429
+ "value": "disabled"
1430
+ }
1431
+ ],
1432
+ "binding": {
1433
+ "type": "zeebe:property",
1434
+ "name": "inbound.shouldValidateHmac"
1435
+ }
1436
+ },
1437
+ {
1438
+ "label": "HMAC secret key",
1439
+ "description": "Shared secret key",
1440
+ "type": "String",
1441
+ "group": "authentication",
1442
+ "optional": true,
1443
+ "binding": {
1444
+ "type": "zeebe:property",
1445
+ "name": "inbound.hmacSecret"
1446
+ },
1447
+ "condition": {
1448
+ "property": "shouldValidateHmac",
1449
+ "equals": "enabled"
1450
+ }
1451
+ },
1452
+ {
1453
+ "label": "HMAC header",
1454
+ "description": "Name of header attribute that will contain the HMAC value",
1455
+ "type": "String",
1456
+ "group": "authentication",
1457
+ "optional": true,
1458
+ "binding": {
1459
+ "type": "zeebe:property",
1460
+ "name": "inbound.hmacHeader"
1461
+ },
1462
+ "condition": {
1463
+ "property": "shouldValidateHmac",
1464
+ "equals": "enabled"
1465
+ }
1466
+ },
1467
+ {
1468
+ "label": "HMAC algorithm",
1469
+ "group": "authentication",
1470
+ "description": "Choose HMAC algorithm",
1471
+ "value": "sha_256",
1472
+ "type": "Dropdown",
1473
+ "choices": [
1474
+ {
1475
+ "name": "SHA-1",
1476
+ "value": "sha_1"
1477
+ },
1478
+ {
1479
+ "name": "SHA-256",
1480
+ "value": "sha_256"
1481
+ },
1482
+ {
1483
+ "name": "SHA-512",
1484
+ "value": "sha_512"
1485
+ }
1486
+ ],
1487
+ "binding": {
1488
+ "type": "zeebe:property",
1489
+ "name": "inbound.hmacAlgorithm"
1490
+ },
1491
+ "condition": {
1492
+ "property": "shouldValidateHmac",
1493
+ "equals": "enabled"
1494
+ }
1495
+ },
1496
+ {
1497
+ "label": "HMAC scopes",
1498
+ "group": "authentication",
1499
+ "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>",
1500
+ "feel": "required",
1501
+ "type": "String",
1502
+ "optional": true,
1503
+ "binding": {
1504
+ "type": "zeebe:property",
1505
+ "name": "inbound.hmacScopes"
1506
+ },
1507
+ "condition": {
1508
+ "property": "shouldValidateHmac",
1509
+ "equals": "enabled"
1510
+ }
1511
+ },
1512
+ {
1513
+ "id": "authorizationType",
1514
+ "label": "Authorization type",
1515
+ "group": "authorization",
1516
+ "description": "Choose the authorization type.",
1517
+ "value": "NONE",
1518
+ "type": "Dropdown",
1519
+ "choices": [
1520
+ {
1521
+ "name": "None",
1522
+ "value": "NONE"
1523
+ },
1524
+ {
1525
+ "name": "JWT",
1526
+ "value": "JWT"
1527
+ },
1528
+ {
1529
+ "name": "Basic",
1530
+ "value": "BASIC"
1531
+ },
1532
+ {
1533
+ "name": "API Key",
1534
+ "value": "APIKEY"
1535
+ }
1536
+ ],
1537
+ "binding": {
1538
+ "type": "zeebe:property",
1539
+ "name": "inbound.auth.type"
1540
+ }
1541
+ },
1542
+ {
1543
+ "label": "JWK url",
1544
+ "description": "Well-known url of JWKs",
1545
+ "type": "String",
1546
+ "group": "authorization",
1547
+ "feel": "optional",
1548
+ "optional": true,
1549
+ "binding": {
1550
+ "type": "zeebe:property",
1551
+ "name": "inbound.auth.jwt.jwkUrl"
1552
+ },
1553
+ "condition": {
1554
+ "property": "authorizationType",
1555
+ "equals": "JWT"
1556
+ }
1557
+ },
1558
+ {
1559
+ "label": "JWT role property expression",
1560
+ "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>",
1561
+ "type": "String",
1562
+ "group": "authorization",
1563
+ "feel": "required",
1564
+ "optional": true,
1565
+ "binding": {
1566
+ "type": "zeebe:property",
1567
+ "name": "inbound.auth.jwt.permissionsExpression"
1568
+ },
1569
+ "condition": {
1570
+ "property": "authorizationType",
1571
+ "equals": "JWT"
1572
+ }
1573
+ },
1574
+ {
1575
+ "label": "Required roles",
1576
+ "description": "List of roles to test JWT roles against",
1577
+ "type": "String",
1578
+ "group": "authorization",
1579
+ "feel": "required",
1580
+ "optional": true,
823
1581
  "binding": {
824
1582
  "type": "zeebe:property",
825
1583
  "name": "inbound.auth.jwt.requiredPermissions"
@@ -930,6 +1688,18 @@
930
1688
  "notEmpty": true
931
1689
  }
932
1690
  },
1691
+ {
1692
+ "label": "Message ID expression",
1693
+ "feel": "required",
1694
+ "type": "String",
1695
+ "optional": true,
1696
+ "group": "activation",
1697
+ "binding": {
1698
+ "type": "zeebe:property",
1699
+ "name": "messageIdExpression"
1700
+ },
1701
+ "description": "Expression to extract unique identifier of a message"
1702
+ },
933
1703
  {
934
1704
  "label": "Condition",
935
1705
  "type": "String",
@@ -965,6 +1735,18 @@
965
1735
  },
966
1736
  "description": "Expression to map the inbound payload to process variables"
967
1737
  },
1738
+ {
1739
+ "label": "One time verification response expression",
1740
+ "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>",
1741
+ "type": "Text",
1742
+ "group": "webhookResponse",
1743
+ "feel": "required",
1744
+ "optional": true,
1745
+ "binding": {
1746
+ "type": "zeebe:property",
1747
+ "name": "inbound.verificationExpression"
1748
+ }
1749
+ },
968
1750
  {
969
1751
  "label": "Response body expression",
970
1752
  "type": "Text",
@@ -982,16 +1764,16 @@
982
1764
  "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"
983
1765
  },
984
1766
  "engines": {
985
- "camunda": "^8.2"
1767
+ "camunda": "^8.4"
986
1768
  }
987
1769
  },
988
1770
  {
989
1771
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
990
- "name": "Webhook Intermediate Catch Event Connector",
1772
+ "name": "Webhook Intermediate Event Connector",
991
1773
  "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
992
- "version": 5,
993
1774
  "description": "Configure webhook to receive callbacks",
994
1775
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
1776
+ "version": 10,
995
1777
  "category": {
996
1778
  "id": "connectors",
997
1779
  "name": "Connectors"
@@ -1014,52 +1796,43 @@
1014
1796
  "id": "authorization",
1015
1797
  "label": "Authorization"
1016
1798
  },
1799
+ {
1800
+ "id": "webhookResponse",
1801
+ "label": "Webhook response"
1802
+ },
1017
1803
  {
1018
1804
  "id": "activation",
1019
1805
  "label": "Activation"
1020
1806
  },
1021
1807
  {
1022
- "id": "variable-mapping",
1023
- "label": "Variable mapping"
1808
+ "id": "correlation",
1809
+ "label": "Correlation"
1024
1810
  },
1025
1811
  {
1026
- "id": "webhookResponse",
1027
- "label": "Webhook response"
1812
+ "id": "output",
1813
+ "label": "Output mapping"
1028
1814
  }
1029
1815
  ],
1030
1816
  "properties": [
1031
1817
  {
1032
- "type": "Hidden",
1033
1818
  "value": "io.camunda:webhook:1",
1034
1819
  "binding": {
1035
- "type": "zeebe:property",
1036
- "name": "inbound.type"
1037
- }
1038
- },
1039
- {
1040
- "type": "Hidden",
1041
- "generatedValue": {
1042
- "type": "uuid"
1820
+ "name": "inbound.type",
1821
+ "type": "zeebe:property"
1043
1822
  },
1044
- "binding": {
1045
- "type": "bpmn:Message#property",
1046
- "name": "name"
1047
- }
1048
- },
1049
- {
1050
- "type": "Hidden",
1051
- "value": "ConfigurableInboundWebhook",
1052
- "binding": {
1053
- "type": "zeebe:property",
1054
- "name": "inbound.subtype"
1055
- }
1823
+ "type": "Hidden"
1056
1824
  },
1057
1825
  {
1058
- "id": "webhookMethod",
1826
+ "id": "inbound.method",
1059
1827
  "label": "Webhook method",
1060
- "group": "endpoint",
1061
1828
  "description": "Select HTTP method",
1829
+ "optional": false,
1062
1830
  "value": "any",
1831
+ "group": "endpoint",
1832
+ "binding": {
1833
+ "name": "inbound.method",
1834
+ "type": "zeebe:property"
1835
+ },
1063
1836
  "type": "Dropdown",
1064
1837
  "choices": [
1065
1838
  {
@@ -1067,46 +1840,53 @@
1067
1840
  "value": "any"
1068
1841
  },
1069
1842
  {
1070
- "name": "Get",
1843
+ "name": "GET",
1071
1844
  "value": "get"
1072
1845
  },
1073
1846
  {
1074
- "name": "Post",
1847
+ "name": "POST",
1075
1848
  "value": "post"
1076
1849
  },
1077
1850
  {
1078
- "name": "Put",
1851
+ "name": "PUT",
1079
1852
  "value": "put"
1080
1853
  },
1081
1854
  {
1082
- "name": "Delete",
1855
+ "name": "DELETE",
1083
1856
  "value": "delete"
1084
1857
  }
1085
- ],
1086
- "binding": {
1087
- "type": "zeebe:property",
1088
- "name": "inbound.method"
1089
- }
1858
+ ]
1090
1859
  },
1091
1860
  {
1861
+ "id": "inbound.context",
1092
1862
  "label": "Webhook ID",
1093
- "type": "String",
1863
+ "description": "The webhook ID is a part of the URL",
1864
+ "optional": false,
1865
+ "constraints": {
1866
+ "notEmpty": true,
1867
+ "pattern": {
1868
+ "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
1869
+ "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
1870
+ }
1871
+ },
1094
1872
  "group": "endpoint",
1095
1873
  "binding": {
1096
- "type": "zeebe:property",
1097
- "name": "inbound.context"
1874
+ "name": "inbound.context",
1875
+ "type": "zeebe:property"
1098
1876
  },
1099
- "description": "The webhook ID is a part of the URL",
1100
- "constraints": {
1101
- "notEmpty": true
1102
- }
1877
+ "type": "String"
1103
1878
  },
1104
1879
  {
1105
- "id": "shouldValidateHmac",
1880
+ "id": "inbound.shouldValidateHmac",
1106
1881
  "label": "HMAC authentication",
1107
- "group": "authentication",
1108
1882
  "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",
1883
+ "optional": false,
1109
1884
  "value": "disabled",
1885
+ "group": "authentication",
1886
+ "binding": {
1887
+ "name": "inbound.shouldValidateHmac",
1888
+ "type": "zeebe:property"
1889
+ },
1110
1890
  "type": "Dropdown",
1111
1891
  "choices": [
1112
1892
  {
@@ -1117,47 +1897,60 @@
1117
1897
  "name": "Disabled",
1118
1898
  "value": "disabled"
1119
1899
  }
1120
- ],
1121
- "binding": {
1122
- "type": "zeebe:property",
1123
- "name": "inbound.shouldValidateHmac"
1124
- }
1900
+ ]
1125
1901
  },
1126
1902
  {
1903
+ "id": "inbound.hmacSecret",
1127
1904
  "label": "HMAC secret key",
1128
1905
  "description": "Shared secret key",
1129
- "type": "String",
1130
- "group": "authentication",
1131
1906
  "optional": true,
1907
+ "feel": "optional",
1908
+ "group": "authentication",
1132
1909
  "binding": {
1133
- "type": "zeebe:property",
1134
- "name": "inbound.hmacSecret"
1910
+ "name": "inbound.hmacSecret",
1911
+ "type": "zeebe:property"
1135
1912
  },
1136
1913
  "condition": {
1137
- "property": "shouldValidateHmac",
1138
- "equals": "enabled"
1139
- }
1914
+ "property": "inbound.shouldValidateHmac",
1915
+ "equals": "enabled",
1916
+ "type": "simple"
1917
+ },
1918
+ "type": "String"
1140
1919
  },
1141
1920
  {
1921
+ "id": "inbound.hmacHeader",
1142
1922
  "label": "HMAC header",
1143
1923
  "description": "Name of header attribute that will contain the HMAC value",
1144
- "type": "String",
1145
- "group": "authentication",
1146
1924
  "optional": true,
1925
+ "feel": "optional",
1926
+ "group": "authentication",
1147
1927
  "binding": {
1148
- "type": "zeebe:property",
1149
- "name": "inbound.hmacHeader"
1928
+ "name": "inbound.hmacHeader",
1929
+ "type": "zeebe:property"
1150
1930
  },
1151
1931
  "condition": {
1152
- "property": "shouldValidateHmac",
1153
- "equals": "enabled"
1154
- }
1932
+ "property": "inbound.shouldValidateHmac",
1933
+ "equals": "enabled",
1934
+ "type": "simple"
1935
+ },
1936
+ "type": "String"
1155
1937
  },
1156
1938
  {
1939
+ "id": "inbound.hmacAlgorithm",
1157
1940
  "label": "HMAC algorithm",
1158
- "group": "authentication",
1159
1941
  "description": "Choose HMAC algorithm",
1942
+ "optional": false,
1160
1943
  "value": "sha_256",
1944
+ "group": "authentication",
1945
+ "binding": {
1946
+ "name": "inbound.hmacAlgorithm",
1947
+ "type": "zeebe:property"
1948
+ },
1949
+ "condition": {
1950
+ "property": "inbound.shouldValidateHmac",
1951
+ "equals": "enabled",
1952
+ "type": "simple"
1953
+ },
1161
1954
  "type": "Dropdown",
1162
1955
  "choices": [
1163
1956
  {
@@ -1172,288 +1965,309 @@
1172
1965
  "name": "SHA-512",
1173
1966
  "value": "sha_512"
1174
1967
  }
1175
- ],
1176
- "binding": {
1177
- "type": "zeebe:property",
1178
- "name": "inbound.hmacAlgorithm"
1179
- },
1180
- "condition": {
1181
- "property": "shouldValidateHmac",
1182
- "equals": "enabled"
1183
- }
1968
+ ]
1184
1969
  },
1185
1970
  {
1971
+ "id": "inbound.hmacScopes",
1186
1972
  "label": "HMAC scopes",
1187
- "group": "authentication",
1188
1973
  "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>",
1189
- "feel": "required",
1190
- "type": "String",
1191
1974
  "optional": true,
1975
+ "feel": "required",
1976
+ "group": "authentication",
1192
1977
  "binding": {
1193
- "type": "zeebe:property",
1194
- "name": "inbound.hmacScopes"
1978
+ "name": "inbound.hmacScopes",
1979
+ "type": "zeebe:property"
1195
1980
  },
1196
1981
  "condition": {
1197
- "property": "shouldValidateHmac",
1198
- "equals": "enabled"
1199
- }
1982
+ "property": "inbound.shouldValidateHmac",
1983
+ "equals": "enabled",
1984
+ "type": "simple"
1985
+ },
1986
+ "type": "String"
1200
1987
  },
1201
1988
  {
1202
- "id": "authorizationType",
1989
+ "id": "inbound.auth.type",
1203
1990
  "label": "Authorization type",
1204
- "group": "authorization",
1205
- "description": "Choose the authorization type.",
1991
+ "description": "Choose the authorization type",
1206
1992
  "value": "NONE",
1993
+ "group": "authorization",
1994
+ "binding": {
1995
+ "name": "inbound.auth.type",
1996
+ "type": "zeebe:property"
1997
+ },
1207
1998
  "type": "Dropdown",
1208
1999
  "choices": [
1209
2000
  {
1210
2001
  "name": "None",
1211
2002
  "value": "NONE"
1212
2003
  },
1213
- {
1214
- "name": "JWT",
1215
- "value": "JWT"
1216
- },
1217
2004
  {
1218
2005
  "name": "Basic",
1219
2006
  "value": "BASIC"
1220
2007
  },
1221
2008
  {
1222
- "name": "API Key",
2009
+ "name": "API key",
1223
2010
  "value": "APIKEY"
2011
+ },
2012
+ {
2013
+ "name": "JWT",
2014
+ "value": "JWT"
1224
2015
  }
1225
- ],
1226
- "binding": {
1227
- "type": "zeebe:property",
1228
- "name": "inbound.auth.type"
1229
- }
2016
+ ]
1230
2017
  },
1231
- {
1232
- "label": "JWK url",
1233
- "description": "Well-known url of JWKs",
1234
- "type": "String",
1235
- "group": "authorization",
2018
+ {
2019
+ "id": "inbound.auth.username",
2020
+ "label": "Username",
2021
+ "description": "Username for basic authentication",
2022
+ "optional": false,
1236
2023
  "feel": "optional",
1237
- "optional": true,
2024
+ "group": "authorization",
1238
2025
  "binding": {
1239
- "type": "zeebe:property",
1240
- "name": "inbound.auth.jwt.jwkUrl"
2026
+ "name": "inbound.auth.username",
2027
+ "type": "zeebe:property"
1241
2028
  },
1242
2029
  "condition": {
1243
- "property": "authorizationType",
1244
- "equals": "JWT"
1245
- }
2030
+ "property": "inbound.auth.type",
2031
+ "equals": "BASIC",
2032
+ "type": "simple"
2033
+ },
2034
+ "type": "String"
1246
2035
  },
1247
2036
  {
1248
- "label": "JWT role property expression",
1249
- "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>",
1250
- "type": "String",
2037
+ "id": "inbound.auth.password",
2038
+ "label": "Password",
2039
+ "description": "Password for basic authentication",
2040
+ "optional": false,
2041
+ "feel": "optional",
1251
2042
  "group": "authorization",
1252
- "feel": "required",
1253
- "optional": true,
1254
2043
  "binding": {
1255
- "type": "zeebe:property",
1256
- "name": "inbound.auth.jwt.permissionsExpression"
2044
+ "name": "inbound.auth.password",
2045
+ "type": "zeebe:property"
1257
2046
  },
1258
2047
  "condition": {
1259
- "property": "authorizationType",
1260
- "equals": "JWT"
1261
- }
2048
+ "property": "inbound.auth.type",
2049
+ "equals": "BASIC",
2050
+ "type": "simple"
2051
+ },
2052
+ "type": "String"
1262
2053
  },
1263
2054
  {
1264
- "label": "Required roles",
1265
- "description": "List of roles to test JWT roles against",
1266
- "type": "String",
2055
+ "id": "inbound.auth.apiKey",
2056
+ "label": "API key",
2057
+ "description": "Expected API key",
2058
+ "optional": false,
2059
+ "feel": "optional",
1267
2060
  "group": "authorization",
1268
- "feel": "required",
1269
- "optional": true,
1270
2061
  "binding": {
1271
- "type": "zeebe:property",
1272
- "name": "inbound.auth.jwt.requiredPermissions"
2062
+ "name": "inbound.auth.apiKey",
2063
+ "type": "zeebe:property"
1273
2064
  },
1274
2065
  "condition": {
1275
- "property": "authorizationType",
1276
- "equals": "JWT"
1277
- }
2066
+ "property": "inbound.auth.type",
2067
+ "equals": "APIKEY",
2068
+ "type": "simple"
2069
+ },
2070
+ "type": "String"
1278
2071
  },
1279
2072
  {
1280
- "label": "Username",
1281
- "description": "Username for basic authentication",
1282
- "type": "String",
2073
+ "id": "inbound.auth.apiKeyLocator",
2074
+ "label": "API key locator",
2075
+ "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>",
2076
+ "optional": false,
2077
+ "value": "=split(request.headers.authorization, \" \")[2]",
2078
+ "constraints": {
2079
+ "notEmpty": true
2080
+ },
2081
+ "feel": "required",
1283
2082
  "group": "authorization",
1284
- "feel": "optional",
1285
2083
  "binding": {
1286
- "type": "zeebe:property",
1287
- "name": "inbound.auth.username"
2084
+ "name": "inbound.auth.apiKeyLocator",
2085
+ "type": "zeebe:property"
1288
2086
  },
1289
2087
  "condition": {
1290
- "property": "authorizationType",
1291
- "equals": "BASIC"
2088
+ "property": "inbound.auth.type",
2089
+ "equals": "APIKEY",
2090
+ "type": "simple"
1292
2091
  },
1293
- "constraints": {
1294
- "notEmpty": true
1295
- }
2092
+ "type": "String"
1296
2093
  },
1297
2094
  {
1298
- "label": "Password",
1299
- "description": "Password for basic authentication",
1300
- "type": "String",
1301
- "group": "authorization",
2095
+ "id": "inbound.auth.jwt.jwkUrl",
2096
+ "label": "JWK URL",
2097
+ "description": "Well-known URL of JWKs",
2098
+ "optional": false,
1302
2099
  "feel": "optional",
2100
+ "group": "authorization",
1303
2101
  "binding": {
1304
- "type": "zeebe:property",
1305
- "name": "inbound.auth.password"
2102
+ "name": "inbound.auth.jwt.jwkUrl",
2103
+ "type": "zeebe:property"
1306
2104
  },
1307
2105
  "condition": {
1308
- "property": "authorizationType",
1309
- "equals": "BASIC"
2106
+ "property": "inbound.auth.type",
2107
+ "equals": "JWT",
2108
+ "type": "simple"
1310
2109
  },
1311
- "constraints": {
1312
- "notEmpty": true
1313
- }
2110
+ "type": "String"
1314
2111
  },
1315
2112
  {
1316
- "label": "API Key",
1317
- "description": "Expected API key",
1318
- "type": "String",
2113
+ "id": "inbound.auth.jwt.permissionsExpression",
2114
+ "label": "JWT role property expression",
2115
+ "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>",
2116
+ "optional": false,
2117
+ "feel": "required",
1319
2118
  "group": "authorization",
1320
- "feel": "optional",
1321
2119
  "binding": {
1322
- "type": "zeebe:property",
1323
- "name": "inbound.auth.apiKey"
2120
+ "name": "inbound.auth.jwt.permissionsExpression",
2121
+ "type": "zeebe:property"
1324
2122
  },
1325
2123
  "condition": {
1326
- "property": "authorizationType",
1327
- "equals": "APIKEY"
2124
+ "property": "inbound.auth.type",
2125
+ "equals": "JWT",
2126
+ "type": "simple"
1328
2127
  },
1329
- "constraints": {
1330
- "notEmpty": true
1331
- }
2128
+ "type": "String"
1332
2129
  },
1333
2130
  {
1334
- "label": "API Key locator",
1335
- "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>",
1336
- "type": "String",
1337
- "group": "authorization",
2131
+ "id": "inbound.auth.jwt.requiredPermissions",
2132
+ "label": "Required roles",
2133
+ "description": "List of roles to test JWT roles against",
2134
+ "optional": false,
1338
2135
  "feel": "required",
2136
+ "group": "authorization",
1339
2137
  "binding": {
1340
- "type": "zeebe:property",
1341
- "name": "inbound.auth.apiKeyLocator"
2138
+ "name": "inbound.auth.jwt.requiredPermissions",
2139
+ "type": "zeebe:property"
1342
2140
  },
1343
2141
  "condition": {
1344
- "property": "authorizationType",
1345
- "equals": "APIKEY"
1346
- },
1347
- "constraints": {
1348
- "notEmpty": true
2142
+ "property": "inbound.auth.type",
2143
+ "equals": "JWT",
2144
+ "type": "simple"
1349
2145
  },
1350
- "value": "=split(request.headers.authorization, \" \")[2]"
2146
+ "type": "String"
1351
2147
  },
1352
2148
  {
1353
- "label": "Correlation key (process)",
1354
- "type": "String",
1355
- "group": "activation",
2149
+ "id": "inbound.responseBodyExpression",
2150
+ "label": "Response body expression",
2151
+ "description": "Specify condition and response",
2152
+ "optional": true,
1356
2153
  "feel": "required",
1357
- "description": "Sets up the correlation key from process variables",
2154
+ "group": "webhookResponse",
1358
2155
  "binding": {
1359
- "type": "bpmn:Message#zeebe:subscription#property",
1360
- "name": "correlationKey"
2156
+ "name": "inbound.responseBodyExpression",
2157
+ "type": "zeebe:property"
1361
2158
  },
1362
- "constraints": {
1363
- "notEmpty": true
1364
- }
2159
+ "type": "Text"
1365
2160
  },
1366
2161
  {
1367
- "label": "Correlation key (payload)",
1368
- "type": "String",
1369
- "group": "activation",
2162
+ "id": "inbound.verificationExpression",
2163
+ "label": "One time verification response expression",
2164
+ "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>",
2165
+ "optional": true,
1370
2166
  "feel": "required",
2167
+ "group": "webhookResponse",
1371
2168
  "binding": {
1372
- "type": "zeebe:property",
1373
- "name": "correlationKeyExpression"
2169
+ "name": "inbound.verificationExpression",
2170
+ "type": "zeebe:property"
1374
2171
  },
1375
- "description": "Extracts the correlation key from the incoming message payload",
1376
- "constraints": {
1377
- "notEmpty": true
1378
- }
2172
+ "type": "Text"
1379
2173
  },
1380
2174
  {
1381
- "label": "Message ID expression",
1382
- "feel": "required",
1383
- "type": "String",
2175
+ "id": "activationCondition",
2176
+ "label": "Activation condition",
2177
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
1384
2178
  "optional": true,
2179
+ "feel": "required",
1385
2180
  "group": "activation",
1386
2181
  "binding": {
1387
- "type": "zeebe:property",
1388
- "name": "messageIdExpression"
2182
+ "name": "activationCondition",
2183
+ "type": "zeebe:property"
1389
2184
  },
1390
- "description": "Expression to extract unique identifier of a message"
2185
+ "type": "String"
1391
2186
  },
1392
2187
  {
1393
- "label": "Condition",
1394
- "type": "String",
1395
- "group": "activation",
2188
+ "id": "correlationKeyProcess",
2189
+ "label": "Correlation key (process)",
2190
+ "description": "Sets up the correlation key from process variables",
2191
+ "constraints": {
2192
+ "notEmpty": true
2193
+ },
1396
2194
  "feel": "required",
1397
- "optional": true,
2195
+ "group": "correlation",
1398
2196
  "binding": {
1399
- "type": "zeebe:property",
1400
- "name": "activationCondition"
2197
+ "name": "correlationKey",
2198
+ "type": "bpmn:Message#zeebe:subscription#property"
1401
2199
  },
1402
- "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>"
2200
+ "type": "String"
1403
2201
  },
1404
2202
  {
1405
- "label": "Result variable",
1406
- "type": "String",
1407
- "group": "variable-mapping",
1408
- "optional": true,
2203
+ "id": "correlationKeyPayload",
2204
+ "label": "Correlation key (payload)",
2205
+ "description": "Extracts the correlation key from the incoming message payload",
2206
+ "constraints": {
2207
+ "notEmpty": true
2208
+ },
2209
+ "feel": "required",
2210
+ "group": "correlation",
1409
2211
  "binding": {
1410
- "type": "zeebe:property",
1411
- "name": "resultVariable"
2212
+ "name": "correlationKeyExpression",
2213
+ "type": "zeebe:property"
1412
2214
  },
1413
- "description": "Name of variable to store the result of the connector in"
2215
+ "type": "String"
1414
2216
  },
1415
2217
  {
1416
- "label": "Result expression",
1417
- "type": "String",
1418
- "group": "variable-mapping",
1419
- "feel": "required",
2218
+ "id": "messageIdExpression",
2219
+ "label": "Message ID expression",
2220
+ "description": "Expression to extract unique identifier of a message",
1420
2221
  "optional": true,
2222
+ "feel": "required",
2223
+ "group": "correlation",
2224
+ "binding": {
2225
+ "name": "messageIdExpression",
2226
+ "type": "zeebe:property"
2227
+ },
2228
+ "type": "String"
2229
+ },
2230
+ {
2231
+ "id": "messageNameUuid",
2232
+ "generatedValue": {
2233
+ "type": "uuid"
2234
+ },
2235
+ "group": "correlation",
1421
2236
  "binding": {
1422
- "type": "zeebe:property",
1423
- "name": "resultExpression"
2237
+ "name": "name",
2238
+ "type": "bpmn:Message#property"
1424
2239
  },
1425
- "description": "Expression to map the inbound payload to process variables"
2240
+ "type": "Hidden"
1426
2241
  },
1427
2242
  {
1428
- "label": "One time verification response expression",
1429
- "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>",
1430
- "type": "Text",
1431
- "group": "webhookResponse",
1432
- "feel": "required",
1433
- "optional": true,
2243
+ "id": "resultVariable",
2244
+ "label": "Result variable",
2245
+ "description": "Name of variable to store the response in",
2246
+ "group": "output",
1434
2247
  "binding": {
1435
- "type": "zeebe:property",
1436
- "name": "inbound.verificationExpression"
1437
- }
2248
+ "name": "resultVariable",
2249
+ "type": "zeebe:property"
2250
+ },
2251
+ "type": "String"
1438
2252
  },
1439
2253
  {
1440
- "label": "Response body expression",
1441
- "type": "Text",
1442
- "group": "webhookResponse",
2254
+ "id": "resultExpression",
2255
+ "label": "Result expression",
2256
+ "description": "Expression to map the response into process variables",
1443
2257
  "feel": "required",
1444
- "optional": true,
2258
+ "group": "output",
1445
2259
  "binding": {
1446
- "type": "zeebe:property",
1447
- "name": "inbound.responseBodyExpression"
2260
+ "name": "resultExpression",
2261
+ "type": "zeebe:property"
1448
2262
  },
1449
- "description": "Specify condition and response"
2263
+ "type": "Text"
1450
2264
  }
1451
2265
  ],
1452
2266
  "icon": {
1453
- "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"
2267
+ "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
1454
2268
  },
1455
2269
  "engines": {
1456
- "camunda": "^8.4"
2270
+ "camunda": "^8.5"
1457
2271
  }
1458
2272
  },
1459
2273
  {
@@ -1461,11 +2275,17 @@
1461
2275
  "name": "Webhook Intermediate Event Connector",
1462
2276
  "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
1463
2277
  "description": "Configure webhook to receive callbacks",
1464
- "metadata": {
1465
- "keywords": []
1466
- },
2278
+ "keywords": [
2279
+ "receive webhook",
2280
+ "HTTP trigger",
2281
+ "event received",
2282
+ "inbound event",
2283
+ "webhook trigger",
2284
+ "HTTP callback",
2285
+ "listen for event"
2286
+ ],
1467
2287
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
1468
- "version": 13,
2288
+ "version": 14,
1469
2289
  "category": {
1470
2290
  "id": "connectors",
1471
2291
  "name": "Connectors"
@@ -1499,6 +2319,10 @@
1499
2319
  "id": "activation",
1500
2320
  "label": "Activation"
1501
2321
  },
2322
+ {
2323
+ "id": "synchronousResponse",
2324
+ "label": "Response mode"
2325
+ },
1502
2326
  {
1503
2327
  "id": "correlation",
1504
2328
  "label": "Correlation",
@@ -1847,27 +2671,27 @@
1847
2671
  "type": "String"
1848
2672
  },
1849
2673
  {
1850
- "id": "inbound.responseExpression",
1851
- "label": "Response expression",
1852
- "description": "Expression used to generate the HTTP response",
2674
+ "id": "inbound.verificationExpression",
2675
+ "label": "One time verification response expression",
2676
+ "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>",
1853
2677
  "optional": true,
1854
2678
  "feel": "required",
1855
2679
  "group": "webhookResponse",
1856
2680
  "binding": {
1857
- "name": "inbound.responseExpression",
2681
+ "name": "inbound.verificationExpression",
1858
2682
  "type": "zeebe:property"
1859
2683
  },
1860
2684
  "type": "Text"
1861
2685
  },
1862
2686
  {
1863
- "id": "inbound.verificationExpression",
1864
- "label": "One time verification response expression",
1865
- "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>",
2687
+ "id": "inbound.responseExpression",
2688
+ "label": "Response expression",
2689
+ "description": "Expression used to generate the HTTP response",
1866
2690
  "optional": true,
1867
2691
  "feel": "required",
1868
2692
  "group": "webhookResponse",
1869
2693
  "binding": {
1870
- "name": "inbound.verificationExpression",
2694
+ "name": "inbound.responseExpression",
1871
2695
  "type": "zeebe:property"
1872
2696
  },
1873
2697
  "type": "Text"
@@ -1897,6 +2721,29 @@
1897
2721
  "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",
1898
2722
  "type": "Boolean"
1899
2723
  },
2724
+ {
2725
+ "id": "synchronousResponse",
2726
+ "label": "Response mode",
2727
+ "description": "Synchronous or Asynchronous <a href=\"https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/#response-mode\" target=\"_blank\">response handling</a>",
2728
+ "value": "false",
2729
+ "group": "synchronousResponse",
2730
+ "binding": {
2731
+ "name": "synchronousResponse",
2732
+ "type": "zeebe:property"
2733
+ },
2734
+ "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.",
2735
+ "type": "Dropdown",
2736
+ "choices": [
2737
+ {
2738
+ "name": "Asynchronous",
2739
+ "value": "false"
2740
+ },
2741
+ {
2742
+ "name": "Synchronous",
2743
+ "value": "true"
2744
+ }
2745
+ ]
2746
+ },
1900
2747
  {
1901
2748
  "id": "correlationKeyProcess",
1902
2749
  "label": "Correlation key (process)",
@@ -1938,6 +2785,11 @@
1938
2785
  "name": "messageIdExpression",
1939
2786
  "type": "zeebe:property"
1940
2787
  },
2788
+ "condition": {
2789
+ "property": "synchronousResponse",
2790
+ "equals": "false",
2791
+ "type": "simple"
2792
+ },
1941
2793
  "type": "String"
1942
2794
  },
1943
2795
  {
@@ -1958,19 +2810,27 @@
1958
2810
  "name": "messageTtl",
1959
2811
  "type": "zeebe:property"
1960
2812
  },
2813
+ "condition": {
2814
+ "property": "synchronousResponse",
2815
+ "equals": "false",
2816
+ "type": "simple"
2817
+ },
1961
2818
  "type": "String"
1962
2819
  },
1963
2820
  {
1964
2821
  "id": "messageNameUuid",
2822
+ "label": "Message name",
1965
2823
  "generatedValue": {
1966
2824
  "type": "uuid"
1967
2825
  },
2826
+ "feel": "optional",
1968
2827
  "group": "correlation",
1969
2828
  "binding": {
1970
2829
  "name": "name",
1971
2830
  "type": "bpmn:Message#property"
1972
2831
  },
1973
- "type": "Hidden"
2832
+ "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.",
2833
+ "type": "String"
1974
2834
  },
1975
2835
  {
1976
2836
  "id": "deduplicationModeManualFlag",
@@ -2039,7 +2899,7 @@
2039
2899
  {
2040
2900
  "id": "resultVariable",
2041
2901
  "label": "Result variable",
2042
- "description": "Name of variable to store the response in",
2902
+ "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>.",
2043
2903
  "group": "output",
2044
2904
  "binding": {
2045
2905
  "name": "resultVariable",
@@ -2050,7 +2910,8 @@
2050
2910
  {
2051
2911
  "id": "resultExpression",
2052
2912
  "label": "Result expression",
2053
- "description": "Expression to map the response into process variables",
2913
+ "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>.",
2914
+ "value": "{\n myRequestBody: request.body\n // Use FEEL to extract values, e.g.,:\n // myMessage: request.body.message\n}",
2054
2915
  "feel": "required",
2055
2916
  "group": "output",
2056
2917
  "binding": {
@@ -2066,11 +2927,14 @@
2066
2927
  },
2067
2928
  {
2068
2929
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2069
- "name": "Webhook Intermediate Catch Event Connector",
2930
+ "name": "Webhook Intermediate Event Connector",
2070
2931
  "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
2071
- "version": 6,
2072
2932
  "description": "Configure webhook to receive callbacks",
2073
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
2933
+ "metadata": {
2934
+ "keywords": []
2935
+ },
2936
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
2937
+ "version": 13,
2074
2938
  "category": {
2075
2939
  "id": "connectors",
2076
2940
  "name": "Connectors"
@@ -2080,6 +2944,9 @@
2080
2944
  "value": "bpmn:IntermediateCatchEvent",
2081
2945
  "eventDefinition": "bpmn:MessageEventDefinition"
2082
2946
  },
2947
+ "engines": {
2948
+ "camunda": "^8.3"
2949
+ },
2083
2950
  "groups": [
2084
2951
  {
2085
2952
  "id": "endpoint",
@@ -2093,52 +2960,49 @@
2093
2960
  "id": "authorization",
2094
2961
  "label": "Authorization"
2095
2962
  },
2963
+ {
2964
+ "id": "webhookResponse",
2965
+ "label": "Webhook response"
2966
+ },
2096
2967
  {
2097
2968
  "id": "activation",
2098
2969
  "label": "Activation"
2099
2970
  },
2100
2971
  {
2101
- "id": "variable-mapping",
2102
- "label": "Variable mapping"
2972
+ "id": "correlation",
2973
+ "label": "Correlation",
2974
+ "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
2103
2975
  },
2104
2976
  {
2105
- "id": "webhookResponse",
2106
- "label": "Webhook response"
2977
+ "id": "deduplication",
2978
+ "label": "Deduplication",
2979
+ "tooltip": "Deduplication allows you to configure multiple inbound connector elements to reuse the same backend (consumer/thread/endpoint) by sharing the same deduplication ID."
2980
+ },
2981
+ {
2982
+ "id": "output",
2983
+ "label": "Output mapping"
2107
2984
  }
2108
2985
  ],
2109
2986
  "properties": [
2110
2987
  {
2111
- "type": "Hidden",
2112
2988
  "value": "io.camunda:webhook:1",
2113
2989
  "binding": {
2114
- "type": "zeebe:property",
2115
- "name": "inbound.type"
2116
- }
2117
- },
2118
- {
2119
- "type": "Hidden",
2120
- "generatedValue": {
2121
- "type": "uuid"
2990
+ "name": "inbound.type",
2991
+ "type": "zeebe:property"
2122
2992
  },
2123
- "binding": {
2124
- "type": "bpmn:Message#property",
2125
- "name": "name"
2126
- }
2127
- },
2128
- {
2129
- "type": "Hidden",
2130
- "value": "ConfigurableInboundWebhook",
2131
- "binding": {
2132
- "type": "zeebe:property",
2133
- "name": "inbound.subtype"
2134
- }
2993
+ "type": "Hidden"
2135
2994
  },
2136
2995
  {
2137
- "id": "webhookMethod",
2996
+ "id": "inbound.method",
2138
2997
  "label": "Webhook method",
2139
- "group": "endpoint",
2140
2998
  "description": "Select HTTP method",
2999
+ "optional": false,
2141
3000
  "value": "any",
3001
+ "group": "endpoint",
3002
+ "binding": {
3003
+ "name": "inbound.method",
3004
+ "type": "zeebe:property"
3005
+ },
2142
3006
  "type": "Dropdown",
2143
3007
  "choices": [
2144
3008
  {
@@ -2146,50 +3010,53 @@
2146
3010
  "value": "any"
2147
3011
  },
2148
3012
  {
2149
- "name": "Get",
3013
+ "name": "GET",
2150
3014
  "value": "get"
2151
3015
  },
2152
3016
  {
2153
- "name": "Post",
3017
+ "name": "POST",
2154
3018
  "value": "post"
2155
3019
  },
2156
3020
  {
2157
- "name": "Put",
3021
+ "name": "PUT",
2158
3022
  "value": "put"
2159
3023
  },
2160
3024
  {
2161
- "name": "Delete",
3025
+ "name": "DELETE",
2162
3026
  "value": "delete"
2163
3027
  }
2164
- ],
2165
- "binding": {
2166
- "type": "zeebe:property",
2167
- "name": "inbound.method"
2168
- }
3028
+ ]
2169
3029
  },
2170
3030
  {
3031
+ "id": "inbound.context",
2171
3032
  "label": "Webhook ID",
2172
- "type": "String",
2173
- "group": "endpoint",
2174
- "binding": {
2175
- "type": "zeebe:property",
2176
- "name": "inbound.context"
2177
- },
2178
3033
  "description": "The webhook ID is a part of the URL",
3034
+ "optional": false,
2179
3035
  "constraints": {
2180
3036
  "notEmpty": true,
2181
3037
  "pattern": {
2182
3038
  "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
2183
3039
  "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
2184
3040
  }
2185
- }
3041
+ },
3042
+ "group": "endpoint",
3043
+ "binding": {
3044
+ "name": "inbound.context",
3045
+ "type": "zeebe:property"
3046
+ },
3047
+ "type": "String"
2186
3048
  },
2187
3049
  {
2188
- "id": "shouldValidateHmac",
3050
+ "id": "inbound.shouldValidateHmac",
2189
3051
  "label": "HMAC authentication",
2190
- "group": "authentication",
2191
- "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",
3052
+ "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",
3053
+ "optional": false,
2192
3054
  "value": "disabled",
3055
+ "group": "authentication",
3056
+ "binding": {
3057
+ "name": "inbound.shouldValidateHmac",
3058
+ "type": "zeebe:property"
3059
+ },
2193
3060
  "type": "Dropdown",
2194
3061
  "choices": [
2195
3062
  {
@@ -2200,47 +3067,60 @@
2200
3067
  "name": "Disabled",
2201
3068
  "value": "disabled"
2202
3069
  }
2203
- ],
2204
- "binding": {
2205
- "type": "zeebe:property",
2206
- "name": "inbound.shouldValidateHmac"
2207
- }
3070
+ ]
2208
3071
  },
2209
3072
  {
3073
+ "id": "inbound.hmacSecret",
2210
3074
  "label": "HMAC secret key",
2211
3075
  "description": "Shared secret key",
2212
- "type": "String",
2213
- "group": "authentication",
2214
3076
  "optional": true,
3077
+ "feel": "optional",
3078
+ "group": "authentication",
2215
3079
  "binding": {
2216
- "type": "zeebe:property",
2217
- "name": "inbound.hmacSecret"
3080
+ "name": "inbound.hmacSecret",
3081
+ "type": "zeebe:property"
2218
3082
  },
2219
3083
  "condition": {
2220
- "property": "shouldValidateHmac",
2221
- "equals": "enabled"
2222
- }
3084
+ "property": "inbound.shouldValidateHmac",
3085
+ "equals": "enabled",
3086
+ "type": "simple"
3087
+ },
3088
+ "type": "String"
2223
3089
  },
2224
3090
  {
3091
+ "id": "inbound.hmacHeader",
2225
3092
  "label": "HMAC header",
2226
3093
  "description": "Name of header attribute that will contain the HMAC value",
2227
- "type": "String",
2228
- "group": "authentication",
2229
3094
  "optional": true,
3095
+ "feel": "optional",
3096
+ "group": "authentication",
2230
3097
  "binding": {
2231
- "type": "zeebe:property",
2232
- "name": "inbound.hmacHeader"
3098
+ "name": "inbound.hmacHeader",
3099
+ "type": "zeebe:property"
2233
3100
  },
2234
3101
  "condition": {
2235
- "property": "shouldValidateHmac",
2236
- "equals": "enabled"
2237
- }
3102
+ "property": "inbound.shouldValidateHmac",
3103
+ "equals": "enabled",
3104
+ "type": "simple"
3105
+ },
3106
+ "type": "String"
2238
3107
  },
2239
3108
  {
3109
+ "id": "inbound.hmacAlgorithm",
2240
3110
  "label": "HMAC algorithm",
2241
- "group": "authentication",
2242
3111
  "description": "Choose HMAC algorithm",
3112
+ "optional": false,
2243
3113
  "value": "sha_256",
3114
+ "group": "authentication",
3115
+ "binding": {
3116
+ "name": "inbound.hmacAlgorithm",
3117
+ "type": "zeebe:property"
3118
+ },
3119
+ "condition": {
3120
+ "property": "inbound.shouldValidateHmac",
3121
+ "equals": "enabled",
3122
+ "type": "simple"
3123
+ },
2244
3124
  "type": "Dropdown",
2245
3125
  "choices": [
2246
3126
  {
@@ -2255,297 +3135,411 @@
2255
3135
  "name": "SHA-512",
2256
3136
  "value": "sha_512"
2257
3137
  }
2258
- ],
2259
- "binding": {
2260
- "type": "zeebe:property",
2261
- "name": "inbound.hmacAlgorithm"
2262
- },
2263
- "condition": {
2264
- "property": "shouldValidateHmac",
2265
- "equals": "enabled"
2266
- }
3138
+ ]
2267
3139
  },
2268
3140
  {
3141
+ "id": "inbound.hmacScopes",
2269
3142
  "label": "HMAC scopes",
2270
- "group": "authentication",
2271
- "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>",
2272
- "feel": "required",
2273
- "type": "String",
3143
+ "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>",
2274
3144
  "optional": true,
3145
+ "feel": "required",
3146
+ "group": "authentication",
2275
3147
  "binding": {
2276
- "type": "zeebe:property",
2277
- "name": "inbound.hmacScopes"
3148
+ "name": "inbound.hmacScopes",
3149
+ "type": "zeebe:property"
2278
3150
  },
2279
3151
  "condition": {
2280
- "property": "shouldValidateHmac",
2281
- "equals": "enabled"
2282
- }
3152
+ "property": "inbound.shouldValidateHmac",
3153
+ "equals": "enabled",
3154
+ "type": "simple"
3155
+ },
3156
+ "type": "String"
2283
3157
  },
2284
3158
  {
2285
- "id": "authorizationType",
3159
+ "id": "inbound.auth.type",
2286
3160
  "label": "Authorization type",
2287
- "group": "authorization",
2288
- "description": "Choose the authorization type.",
3161
+ "description": "Choose the authorization type",
2289
3162
  "value": "NONE",
3163
+ "group": "authorization",
3164
+ "binding": {
3165
+ "name": "inbound.auth.type",
3166
+ "type": "zeebe:property"
3167
+ },
2290
3168
  "type": "Dropdown",
2291
3169
  "choices": [
2292
3170
  {
2293
3171
  "name": "None",
2294
3172
  "value": "NONE"
2295
3173
  },
2296
- {
2297
- "name": "JWT",
2298
- "value": "JWT"
2299
- },
2300
3174
  {
2301
3175
  "name": "Basic",
2302
3176
  "value": "BASIC"
2303
3177
  },
2304
3178
  {
2305
- "name": "API Key",
3179
+ "name": "API key",
2306
3180
  "value": "APIKEY"
3181
+ },
3182
+ {
3183
+ "name": "JWT",
3184
+ "value": "JWT"
2307
3185
  }
2308
- ],
2309
- "binding": {
2310
- "type": "zeebe:property",
2311
- "name": "inbound.auth.type"
2312
- }
3186
+ ]
2313
3187
  },
2314
3188
  {
2315
- "label": "JWK url",
2316
- "description": "Well-known url of JWKs",
2317
- "type": "String",
2318
- "group": "authorization",
3189
+ "id": "inbound.auth.username",
3190
+ "label": "Username",
3191
+ "description": "Username for basic authentication",
3192
+ "optional": false,
2319
3193
  "feel": "optional",
2320
- "optional": true,
3194
+ "group": "authorization",
2321
3195
  "binding": {
2322
- "type": "zeebe:property",
2323
- "name": "inbound.auth.jwt.jwkUrl"
3196
+ "name": "inbound.auth.username",
3197
+ "type": "zeebe:property"
2324
3198
  },
2325
3199
  "condition": {
2326
- "property": "authorizationType",
2327
- "equals": "JWT"
2328
- }
3200
+ "property": "inbound.auth.type",
3201
+ "equals": "BASIC",
3202
+ "type": "simple"
3203
+ },
3204
+ "type": "String"
2329
3205
  },
2330
3206
  {
2331
- "label": "JWT role property expression",
2332
- "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>",
2333
- "type": "String",
3207
+ "id": "inbound.auth.password",
3208
+ "label": "Password",
3209
+ "description": "Password for basic authentication",
3210
+ "optional": false,
3211
+ "feel": "optional",
2334
3212
  "group": "authorization",
2335
- "feel": "required",
2336
- "optional": true,
2337
3213
  "binding": {
2338
- "type": "zeebe:property",
2339
- "name": "inbound.auth.jwt.permissionsExpression"
3214
+ "name": "inbound.auth.password",
3215
+ "type": "zeebe:property"
2340
3216
  },
2341
3217
  "condition": {
2342
- "property": "authorizationType",
2343
- "equals": "JWT"
2344
- }
3218
+ "property": "inbound.auth.type",
3219
+ "equals": "BASIC",
3220
+ "type": "simple"
3221
+ },
3222
+ "type": "String"
2345
3223
  },
2346
3224
  {
2347
- "label": "Required roles",
2348
- "description": "List of roles to test JWT roles against",
2349
- "type": "String",
3225
+ "id": "inbound.auth.apiKey",
3226
+ "label": "API key",
3227
+ "description": "Expected API key",
3228
+ "optional": false,
3229
+ "feel": "optional",
2350
3230
  "group": "authorization",
2351
- "feel": "required",
2352
- "optional": true,
2353
3231
  "binding": {
2354
- "type": "zeebe:property",
2355
- "name": "inbound.auth.jwt.requiredPermissions"
3232
+ "name": "inbound.auth.apiKey",
3233
+ "type": "zeebe:property"
2356
3234
  },
2357
3235
  "condition": {
2358
- "property": "authorizationType",
2359
- "equals": "JWT"
2360
- }
3236
+ "property": "inbound.auth.type",
3237
+ "equals": "APIKEY",
3238
+ "type": "simple"
3239
+ },
3240
+ "type": "String"
2361
3241
  },
2362
3242
  {
2363
- "label": "Username",
2364
- "description": "Username for basic authentication",
2365
- "type": "String",
3243
+ "id": "inbound.auth.apiKeyLocator",
3244
+ "label": "API key locator",
3245
+ "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>",
3246
+ "optional": false,
3247
+ "value": "=split(request.headers.authorization, \" \")[2]",
3248
+ "constraints": {
3249
+ "notEmpty": true
3250
+ },
3251
+ "feel": "required",
2366
3252
  "group": "authorization",
3253
+ "binding": {
3254
+ "name": "inbound.auth.apiKeyLocator",
3255
+ "type": "zeebe:property"
3256
+ },
3257
+ "condition": {
3258
+ "property": "inbound.auth.type",
3259
+ "equals": "APIKEY",
3260
+ "type": "simple"
3261
+ },
3262
+ "type": "String"
3263
+ },
3264
+ {
3265
+ "id": "inbound.auth.jwt.jwkUrl",
3266
+ "label": "JWK URL",
3267
+ "description": "Well-known URL of JWKs",
3268
+ "optional": false,
2367
3269
  "feel": "optional",
3270
+ "group": "authorization",
2368
3271
  "binding": {
2369
- "type": "zeebe:property",
2370
- "name": "inbound.auth.username"
3272
+ "name": "inbound.auth.jwt.jwkUrl",
3273
+ "type": "zeebe:property"
2371
3274
  },
2372
3275
  "condition": {
2373
- "property": "authorizationType",
2374
- "equals": "BASIC"
3276
+ "property": "inbound.auth.type",
3277
+ "equals": "JWT",
3278
+ "type": "simple"
2375
3279
  },
2376
- "constraints": {
2377
- "notEmpty": true
2378
- }
3280
+ "type": "String"
2379
3281
  },
2380
3282
  {
2381
- "label": "Password",
2382
- "description": "Password for basic authentication",
2383
- "type": "String",
3283
+ "id": "inbound.auth.jwt.permissionsExpression",
3284
+ "label": "JWT role property expression",
3285
+ "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>",
3286
+ "optional": false,
3287
+ "feel": "required",
2384
3288
  "group": "authorization",
2385
- "feel": "optional",
2386
3289
  "binding": {
2387
- "type": "zeebe:property",
2388
- "name": "inbound.auth.password"
3290
+ "name": "inbound.auth.jwt.permissionsExpression",
3291
+ "type": "zeebe:property"
2389
3292
  },
2390
3293
  "condition": {
2391
- "property": "authorizationType",
2392
- "equals": "BASIC"
3294
+ "property": "inbound.auth.type",
3295
+ "equals": "JWT",
3296
+ "type": "simple"
2393
3297
  },
2394
- "constraints": {
2395
- "notEmpty": true
2396
- }
3298
+ "type": "String"
2397
3299
  },
2398
3300
  {
2399
- "label": "API Key",
2400
- "description": "Expected API key",
2401
- "type": "String",
3301
+ "id": "inbound.auth.jwt.requiredPermissions",
3302
+ "label": "Required roles",
3303
+ "description": "List of roles to test JWT roles against",
3304
+ "optional": false,
3305
+ "feel": "required",
2402
3306
  "group": "authorization",
2403
- "feel": "optional",
2404
3307
  "binding": {
2405
- "type": "zeebe:property",
2406
- "name": "inbound.auth.apiKey"
3308
+ "name": "inbound.auth.jwt.requiredPermissions",
3309
+ "type": "zeebe:property"
2407
3310
  },
2408
3311
  "condition": {
2409
- "property": "authorizationType",
2410
- "equals": "APIKEY"
3312
+ "property": "inbound.auth.type",
3313
+ "equals": "JWT",
3314
+ "type": "simple"
2411
3315
  },
2412
- "constraints": {
2413
- "notEmpty": true
2414
- }
3316
+ "type": "String"
3317
+ },
3318
+ {
3319
+ "id": "inbound.responseExpression",
3320
+ "label": "Response expression",
3321
+ "description": "Expression used to generate the HTTP response",
3322
+ "optional": true,
3323
+ "feel": "required",
3324
+ "group": "webhookResponse",
3325
+ "binding": {
3326
+ "name": "inbound.responseExpression",
3327
+ "type": "zeebe:property"
3328
+ },
3329
+ "type": "Text"
3330
+ },
3331
+ {
3332
+ "id": "inbound.verificationExpression",
3333
+ "label": "One time verification response expression",
3334
+ "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>",
3335
+ "optional": true,
3336
+ "feel": "required",
3337
+ "group": "webhookResponse",
3338
+ "binding": {
3339
+ "name": "inbound.verificationExpression",
3340
+ "type": "zeebe:property"
3341
+ },
3342
+ "type": "Text"
2415
3343
  },
2416
3344
  {
2417
- "label": "API Key locator",
2418
- "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>",
2419
- "type": "String",
2420
- "group": "authorization",
3345
+ "id": "activationCondition",
3346
+ "label": "Activation condition",
3347
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
3348
+ "optional": true,
2421
3349
  "feel": "required",
3350
+ "group": "activation",
2422
3351
  "binding": {
2423
- "type": "zeebe:property",
2424
- "name": "inbound.auth.apiKeyLocator"
2425
- },
2426
- "condition": {
2427
- "property": "authorizationType",
2428
- "equals": "APIKEY"
2429
- },
2430
- "constraints": {
2431
- "notEmpty": true
3352
+ "name": "activationCondition",
3353
+ "type": "zeebe:property"
2432
3354
  },
2433
- "value": "=split(request.headers.authorization, \" \")[2]"
3355
+ "type": "String"
2434
3356
  },
2435
3357
  {
2436
- "label": "Correlation key (process)",
2437
- "type": "String",
3358
+ "id": "consumeUnmatchedEvents",
3359
+ "label": "Consume unmatched events",
3360
+ "value": true,
2438
3361
  "group": "activation",
2439
- "feel": "required",
2440
- "description": "Sets up the correlation key from process variables",
2441
3362
  "binding": {
2442
- "type": "bpmn:Message#zeebe:subscription#property",
2443
- "name": "correlationKey"
3363
+ "name": "consumeUnmatchedEvents",
3364
+ "type": "zeebe:property"
2444
3365
  },
2445
- "constraints": {
2446
- "notEmpty": true
2447
- }
3366
+ "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",
3367
+ "type": "Boolean"
2448
3368
  },
2449
3369
  {
2450
- "label": "Correlation key (payload)",
2451
- "type": "String",
2452
- "group": "activation",
3370
+ "id": "correlationKeyProcess",
3371
+ "label": "Correlation key (process)",
3372
+ "description": "Sets up the correlation key from process variables",
3373
+ "constraints": {
3374
+ "notEmpty": true
3375
+ },
2453
3376
  "feel": "required",
3377
+ "group": "correlation",
2454
3378
  "binding": {
2455
- "type": "zeebe:property",
2456
- "name": "correlationKeyExpression"
3379
+ "name": "correlationKey",
3380
+ "type": "bpmn:Message#zeebe:subscription#property"
2457
3381
  },
3382
+ "type": "String"
3383
+ },
3384
+ {
3385
+ "id": "correlationKeyPayload",
3386
+ "label": "Correlation key (payload)",
2458
3387
  "description": "Extracts the correlation key from the incoming message payload",
2459
3388
  "constraints": {
2460
3389
  "notEmpty": true
2461
- }
3390
+ },
3391
+ "feel": "required",
3392
+ "group": "correlation",
3393
+ "binding": {
3394
+ "name": "correlationKeyExpression",
3395
+ "type": "zeebe:property"
3396
+ },
3397
+ "type": "String"
2462
3398
  },
2463
3399
  {
3400
+ "id": "messageIdExpression",
2464
3401
  "label": "Message ID expression",
2465
- "feel": "required",
2466
- "type": "String",
3402
+ "description": "Expression to extract unique identifier of a message",
2467
3403
  "optional": true,
2468
- "group": "activation",
3404
+ "feel": "required",
3405
+ "group": "correlation",
2469
3406
  "binding": {
2470
- "type": "zeebe:property",
2471
- "name": "messageIdExpression"
3407
+ "name": "messageIdExpression",
3408
+ "type": "zeebe:property"
2472
3409
  },
2473
- "description": "Expression to extract unique identifier of a message"
3410
+ "type": "String"
2474
3411
  },
2475
3412
  {
2476
- "label": "Condition",
2477
- "type": "String",
2478
- "group": "activation",
2479
- "feel": "required",
3413
+ "id": "messageTtl",
3414
+ "label": "Message TTL",
3415
+ "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
2480
3416
  "optional": true,
3417
+ "constraints": {
3418
+ "notEmpty": false,
3419
+ "pattern": {
3420
+ "value": "^(PT.*|)$",
3421
+ "message": "must be an ISO-8601 duration"
3422
+ }
3423
+ },
3424
+ "feel": "optional",
3425
+ "group": "correlation",
2481
3426
  "binding": {
2482
- "type": "zeebe:property",
2483
- "name": "activationCondition"
3427
+ "name": "messageTtl",
3428
+ "type": "zeebe:property"
2484
3429
  },
2485
- "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>"
3430
+ "type": "String"
2486
3431
  },
2487
3432
  {
2488
- "label": "Result variable",
2489
- "type": "String",
2490
- "group": "variable-mapping",
2491
- "optional": true,
3433
+ "id": "messageNameUuid",
3434
+ "generatedValue": {
3435
+ "type": "uuid"
3436
+ },
3437
+ "group": "correlation",
2492
3438
  "binding": {
2493
- "type": "zeebe:property",
2494
- "name": "resultVariable"
3439
+ "name": "name",
3440
+ "type": "bpmn:Message#property"
2495
3441
  },
2496
- "description": "Name of variable to store the result of the connector in"
3442
+ "type": "Hidden"
2497
3443
  },
2498
3444
  {
2499
- "label": "Result expression",
2500
- "type": "String",
2501
- "group": "variable-mapping",
2502
- "feel": "required",
2503
- "optional": true,
3445
+ "id": "deduplicationModeManualFlag",
3446
+ "label": "Manual mode",
3447
+ "description": "By default, similar connectors receive the same deduplication ID. Customize by activating manual mode",
3448
+ "value": false,
3449
+ "group": "deduplication",
2504
3450
  "binding": {
2505
- "type": "zeebe:property",
2506
- "name": "resultExpression"
3451
+ "name": "deduplicationModeManualFlag",
3452
+ "type": "zeebe:property"
2507
3453
  },
2508
- "description": "Expression to map the inbound payload to process variables"
3454
+ "type": "Boolean"
2509
3455
  },
2510
3456
  {
2511
- "label": "One time verification response expression",
2512
- "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>",
2513
- "type": "Text",
2514
- "group": "webhookResponse",
2515
- "feel": "required",
2516
- "optional": true,
3457
+ "id": "deduplicationId",
3458
+ "label": "Deduplication ID",
3459
+ "constraints": {
3460
+ "notEmpty": true,
3461
+ "pattern": {
3462
+ "value": "^[a-zA-Z0-9_-]+$",
3463
+ "message": "can only contain alphanumeric characters, dashes, and underscores"
3464
+ }
3465
+ },
3466
+ "group": "deduplication",
2517
3467
  "binding": {
2518
- "type": "zeebe:property",
2519
- "name": "inbound.verificationExpression"
2520
- }
3468
+ "name": "deduplicationId",
3469
+ "type": "zeebe:property"
3470
+ },
3471
+ "condition": {
3472
+ "property": "deduplicationModeManualFlag",
3473
+ "equals": true,
3474
+ "type": "simple"
3475
+ },
3476
+ "type": "String"
2521
3477
  },
2522
3478
  {
2523
- "label": "Response body expression",
2524
- "type": "Text",
2525
- "group": "webhookResponse",
3479
+ "id": "deduplicationModeManual",
3480
+ "value": "MANUAL",
3481
+ "group": "deduplication",
3482
+ "binding": {
3483
+ "name": "deduplicationMode",
3484
+ "type": "zeebe:property"
3485
+ },
3486
+ "condition": {
3487
+ "property": "deduplicationId",
3488
+ "isActive": true,
3489
+ "type": "simple"
3490
+ },
3491
+ "type": "Hidden"
3492
+ },
3493
+ {
3494
+ "id": "deduplicationModeAuto",
3495
+ "value": "AUTO",
3496
+ "group": "deduplication",
3497
+ "binding": {
3498
+ "name": "deduplicationMode",
3499
+ "type": "zeebe:property"
3500
+ },
3501
+ "condition": {
3502
+ "property": "deduplicationId",
3503
+ "isActive": false,
3504
+ "type": "simple"
3505
+ },
3506
+ "type": "Hidden"
3507
+ },
3508
+ {
3509
+ "id": "resultVariable",
3510
+ "label": "Result variable",
3511
+ "description": "Name of variable to store the response in",
3512
+ "group": "output",
3513
+ "binding": {
3514
+ "name": "resultVariable",
3515
+ "type": "zeebe:property"
3516
+ },
3517
+ "type": "String"
3518
+ },
3519
+ {
3520
+ "id": "resultExpression",
3521
+ "label": "Result expression",
3522
+ "description": "Expression to map the response into process variables",
2526
3523
  "feel": "required",
2527
- "optional": true,
3524
+ "group": "output",
2528
3525
  "binding": {
2529
- "type": "zeebe:property",
2530
- "name": "inbound.responseBodyExpression"
3526
+ "name": "resultExpression",
3527
+ "type": "zeebe:property"
2531
3528
  },
2532
- "description": "Specify condition and response"
3529
+ "type": "Text"
2533
3530
  }
2534
3531
  ],
2535
3532
  "icon": {
2536
- "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"
2537
- },
2538
- "engines": {
2539
- "camunda": "^8.5"
3533
+ "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
2540
3534
  }
2541
3535
  },
2542
3536
  {
2543
3537
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2544
- "name": "Webhook Intermediate Event Connector",
3538
+ "name": "Webhook connector",
2545
3539
  "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
3540
+ "version": 3,
2546
3541
  "description": "Configure webhook to receive callbacks",
2547
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
2548
- "version": 11,
3542
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
2549
3543
  "category": {
2550
3544
  "id": "connectors",
2551
3545
  "name": "Connectors"
@@ -2568,44 +3562,48 @@
2568
3562
  "id": "authorization",
2569
3563
  "label": "Authorization"
2570
3564
  },
2571
- {
2572
- "id": "webhookResponse",
2573
- "label": "Webhook response"
2574
- },
2575
3565
  {
2576
3566
  "id": "activation",
2577
3567
  "label": "Activation"
2578
3568
  },
2579
3569
  {
2580
- "id": "correlation",
2581
- "label": "Correlation",
2582
- "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
2583
- },
2584
- {
2585
- "id": "output",
2586
- "label": "Output mapping"
3570
+ "id": "variable-mapping",
3571
+ "label": "Variable mapping"
2587
3572
  }
2588
3573
  ],
2589
3574
  "properties": [
2590
3575
  {
2591
- "value": "io.camunda:webhook:1",
3576
+ "type": "Hidden",
3577
+ "value": "io.camunda:webhook:1",
3578
+ "binding": {
3579
+ "type": "zeebe:property",
3580
+ "name": "inbound.type"
3581
+ }
3582
+ },
3583
+ {
3584
+ "type": "Hidden",
3585
+ "generatedValue": {
3586
+ "type": "uuid"
3587
+ },
3588
+ "binding": {
3589
+ "type": "bpmn:Message#property",
3590
+ "name": "name"
3591
+ }
3592
+ },
3593
+ {
3594
+ "type": "Hidden",
3595
+ "value": "ConfigurableInboundWebhook",
2592
3596
  "binding": {
2593
- "name": "inbound.type",
2594
- "type": "zeebe:property"
2595
- },
2596
- "type": "Hidden"
3597
+ "type": "zeebe:property",
3598
+ "name": "inbound.subtype"
3599
+ }
2597
3600
  },
2598
3601
  {
2599
- "id": "inbound.method",
3602
+ "id": "webhookMethod",
2600
3603
  "label": "Webhook method",
3604
+ "group": "endpoint",
2601
3605
  "description": "Select HTTP method",
2602
- "optional": false,
2603
3606
  "value": "any",
2604
- "group": "endpoint",
2605
- "binding": {
2606
- "name": "inbound.method",
2607
- "type": "zeebe:property"
2608
- },
2609
3607
  "type": "Dropdown",
2610
3608
  "choices": [
2611
3609
  {
@@ -2613,53 +3611,46 @@
2613
3611
  "value": "any"
2614
3612
  },
2615
3613
  {
2616
- "name": "GET",
3614
+ "name": "Get",
2617
3615
  "value": "get"
2618
3616
  },
2619
3617
  {
2620
- "name": "POST",
3618
+ "name": "Post",
2621
3619
  "value": "post"
2622
3620
  },
2623
3621
  {
2624
- "name": "PUT",
3622
+ "name": "Put",
2625
3623
  "value": "put"
2626
3624
  },
2627
3625
  {
2628
- "name": "DELETE",
3626
+ "name": "Delete",
2629
3627
  "value": "delete"
2630
3628
  }
2631
- ]
3629
+ ],
3630
+ "binding": {
3631
+ "type": "zeebe:property",
3632
+ "name": "inbound.method"
3633
+ }
2632
3634
  },
2633
3635
  {
2634
- "id": "inbound.context",
2635
3636
  "label": "Webhook ID",
2636
- "description": "The webhook ID is a part of the URL",
2637
- "optional": false,
2638
- "constraints": {
2639
- "notEmpty": true,
2640
- "pattern": {
2641
- "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
2642
- "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
2643
- }
2644
- },
3637
+ "type": "String",
2645
3638
  "group": "endpoint",
2646
3639
  "binding": {
2647
- "name": "inbound.context",
2648
- "type": "zeebe:property"
3640
+ "type": "zeebe:property",
3641
+ "name": "inbound.context"
2649
3642
  },
2650
- "type": "String"
3643
+ "description": "The webhook ID is a part of the URL",
3644
+ "constraints": {
3645
+ "notEmpty": true
3646
+ }
2651
3647
  },
2652
3648
  {
2653
- "id": "inbound.shouldValidateHmac",
3649
+ "id": "shouldValidateHmac",
2654
3650
  "label": "HMAC authentication",
2655
- "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",
2656
- "optional": false,
2657
- "value": "disabled",
2658
3651
  "group": "authentication",
2659
- "binding": {
2660
- "name": "inbound.shouldValidateHmac",
2661
- "type": "zeebe:property"
2662
- },
3652
+ "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",
3653
+ "value": "disabled",
2663
3654
  "type": "Dropdown",
2664
3655
  "choices": [
2665
3656
  {
@@ -2670,60 +3661,47 @@
2670
3661
  "name": "Disabled",
2671
3662
  "value": "disabled"
2672
3663
  }
2673
- ]
3664
+ ],
3665
+ "binding": {
3666
+ "type": "zeebe:property",
3667
+ "name": "inbound.shouldValidateHmac"
3668
+ }
2674
3669
  },
2675
3670
  {
2676
- "id": "inbound.hmacSecret",
2677
3671
  "label": "HMAC secret key",
2678
3672
  "description": "Shared secret key",
2679
- "optional": true,
2680
- "feel": "optional",
3673
+ "type": "String",
2681
3674
  "group": "authentication",
3675
+ "optional": true,
2682
3676
  "binding": {
2683
- "name": "inbound.hmacSecret",
2684
- "type": "zeebe:property"
3677
+ "type": "zeebe:property",
3678
+ "name": "inbound.hmacSecret"
2685
3679
  },
2686
3680
  "condition": {
2687
- "property": "inbound.shouldValidateHmac",
2688
- "equals": "enabled",
2689
- "type": "simple"
2690
- },
2691
- "type": "String"
3681
+ "property": "shouldValidateHmac",
3682
+ "equals": "enabled"
3683
+ }
2692
3684
  },
2693
3685
  {
2694
- "id": "inbound.hmacHeader",
2695
3686
  "label": "HMAC header",
2696
3687
  "description": "Name of header attribute that will contain the HMAC value",
2697
- "optional": true,
2698
- "feel": "optional",
3688
+ "type": "String",
2699
3689
  "group": "authentication",
3690
+ "optional": true,
2700
3691
  "binding": {
2701
- "name": "inbound.hmacHeader",
2702
- "type": "zeebe:property"
3692
+ "type": "zeebe:property",
3693
+ "name": "inbound.hmacHeader"
2703
3694
  },
2704
3695
  "condition": {
2705
- "property": "inbound.shouldValidateHmac",
2706
- "equals": "enabled",
2707
- "type": "simple"
2708
- },
2709
- "type": "String"
3696
+ "property": "shouldValidateHmac",
3697
+ "equals": "enabled"
3698
+ }
2710
3699
  },
2711
3700
  {
2712
- "id": "inbound.hmacAlgorithm",
2713
3701
  "label": "HMAC algorithm",
3702
+ "group": "authentication",
2714
3703
  "description": "Choose HMAC algorithm",
2715
- "optional": false,
2716
3704
  "value": "sha_256",
2717
- "group": "authentication",
2718
- "binding": {
2719
- "name": "inbound.hmacAlgorithm",
2720
- "type": "zeebe:property"
2721
- },
2722
- "condition": {
2723
- "property": "inbound.shouldValidateHmac",
2724
- "equals": "enabled",
2725
- "type": "simple"
2726
- },
2727
3705
  "type": "Dropdown",
2728
3706
  "choices": [
2729
3707
  {
@@ -2738,348 +3716,259 @@
2738
3716
  "name": "SHA-512",
2739
3717
  "value": "sha_512"
2740
3718
  }
2741
- ]
3719
+ ],
3720
+ "binding": {
3721
+ "type": "zeebe:property",
3722
+ "name": "inbound.hmacAlgorithm"
3723
+ },
3724
+ "condition": {
3725
+ "property": "shouldValidateHmac",
3726
+ "equals": "enabled"
3727
+ }
2742
3728
  },
2743
3729
  {
2744
- "id": "inbound.hmacScopes",
2745
3730
  "label": "HMAC scopes",
2746
- "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>",
2747
- "optional": true,
2748
- "feel": "required",
2749
3731
  "group": "authentication",
3732
+ "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>",
3733
+ "feel": "required",
3734
+ "type": "String",
3735
+ "optional": true,
2750
3736
  "binding": {
2751
- "name": "inbound.hmacScopes",
2752
- "type": "zeebe:property"
3737
+ "type": "zeebe:property",
3738
+ "name": "inbound.hmacScopes"
2753
3739
  },
2754
3740
  "condition": {
2755
- "property": "inbound.shouldValidateHmac",
2756
- "equals": "enabled",
2757
- "type": "simple"
2758
- },
2759
- "type": "String"
3741
+ "property": "shouldValidateHmac",
3742
+ "equals": "enabled"
3743
+ }
2760
3744
  },
2761
3745
  {
2762
- "id": "inbound.auth.type",
3746
+ "id": "authorizationType",
2763
3747
  "label": "Authorization type",
2764
- "description": "Choose the authorization type",
2765
- "value": "NONE",
2766
3748
  "group": "authorization",
2767
- "binding": {
2768
- "name": "inbound.auth.type",
2769
- "type": "zeebe:property"
2770
- },
3749
+ "description": "Choose the authorization type.",
3750
+ "value": "NONE",
2771
3751
  "type": "Dropdown",
2772
3752
  "choices": [
2773
3753
  {
2774
3754
  "name": "None",
2775
3755
  "value": "NONE"
2776
3756
  },
3757
+ {
3758
+ "name": "JWT",
3759
+ "value": "JWT"
3760
+ },
2777
3761
  {
2778
3762
  "name": "Basic",
2779
3763
  "value": "BASIC"
2780
3764
  },
2781
3765
  {
2782
- "name": "API key",
3766
+ "name": "API Key",
2783
3767
  "value": "APIKEY"
2784
- },
2785
- {
2786
- "name": "JWT",
2787
- "value": "JWT"
2788
3768
  }
2789
- ]
2790
- },
2791
- {
2792
- "id": "inbound.auth.username",
2793
- "label": "Username",
2794
- "description": "Username for basic authentication",
2795
- "optional": false,
2796
- "feel": "optional",
2797
- "group": "authorization",
2798
- "binding": {
2799
- "name": "inbound.auth.username",
2800
- "type": "zeebe:property"
2801
- },
2802
- "condition": {
2803
- "property": "inbound.auth.type",
2804
- "equals": "BASIC",
2805
- "type": "simple"
2806
- },
2807
- "type": "String"
2808
- },
2809
- {
2810
- "id": "inbound.auth.password",
2811
- "label": "Password",
2812
- "description": "Password for basic authentication",
2813
- "optional": false,
2814
- "feel": "optional",
2815
- "group": "authorization",
2816
- "binding": {
2817
- "name": "inbound.auth.password",
2818
- "type": "zeebe:property"
2819
- },
2820
- "condition": {
2821
- "property": "inbound.auth.type",
2822
- "equals": "BASIC",
2823
- "type": "simple"
2824
- },
2825
- "type": "String"
2826
- },
2827
- {
2828
- "id": "inbound.auth.apiKey",
2829
- "label": "API key",
2830
- "description": "Expected API key",
2831
- "optional": false,
2832
- "feel": "optional",
2833
- "group": "authorization",
3769
+ ],
2834
3770
  "binding": {
2835
- "name": "inbound.auth.apiKey",
2836
- "type": "zeebe:property"
2837
- },
2838
- "condition": {
2839
- "property": "inbound.auth.type",
2840
- "equals": "APIKEY",
2841
- "type": "simple"
2842
- },
2843
- "type": "String"
3771
+ "type": "zeebe:property",
3772
+ "name": "inbound.auth.type"
3773
+ }
2844
3774
  },
2845
3775
  {
2846
- "id": "inbound.auth.apiKeyLocator",
2847
- "label": "API key locator",
2848
- "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>",
2849
- "optional": false,
2850
- "value": "=split(request.headers.authorization, \" \")[2]",
2851
- "constraints": {
2852
- "notEmpty": true
2853
- },
2854
- "feel": "required",
3776
+ "label": "JWK url",
3777
+ "description": "Well-known url of JWKs",
3778
+ "type": "String",
2855
3779
  "group": "authorization",
2856
- "binding": {
2857
- "name": "inbound.auth.apiKeyLocator",
2858
- "type": "zeebe:property"
2859
- },
2860
- "condition": {
2861
- "property": "inbound.auth.type",
2862
- "equals": "APIKEY",
2863
- "type": "simple"
2864
- },
2865
- "type": "String"
2866
- },
2867
- {
2868
- "id": "inbound.auth.jwt.jwkUrl",
2869
- "label": "JWK URL",
2870
- "description": "Well-known URL of JWKs",
2871
- "optional": false,
2872
3780
  "feel": "optional",
2873
- "group": "authorization",
3781
+ "optional": true,
2874
3782
  "binding": {
2875
- "name": "inbound.auth.jwt.jwkUrl",
2876
- "type": "zeebe:property"
3783
+ "type": "zeebe:property",
3784
+ "name": "inbound.auth.jwt.jwkUrl"
2877
3785
  },
2878
3786
  "condition": {
2879
- "property": "inbound.auth.type",
2880
- "equals": "JWT",
2881
- "type": "simple"
2882
- },
2883
- "type": "String"
3787
+ "property": "authorizationType",
3788
+ "equals": "JWT"
3789
+ }
2884
3790
  },
2885
3791
  {
2886
- "id": "inbound.auth.jwt.permissionsExpression",
2887
3792
  "label": "JWT role property expression",
2888
- "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>",
2889
- "optional": false,
2890
- "feel": "required",
3793
+ "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>",
3794
+ "type": "String",
2891
3795
  "group": "authorization",
3796
+ "feel": "required",
3797
+ "optional": true,
2892
3798
  "binding": {
2893
- "name": "inbound.auth.jwt.permissionsExpression",
2894
- "type": "zeebe:property"
3799
+ "type": "zeebe:property",
3800
+ "name": "inbound.auth.jwt.permissionsExpression"
2895
3801
  },
2896
3802
  "condition": {
2897
- "property": "inbound.auth.type",
2898
- "equals": "JWT",
2899
- "type": "simple"
2900
- },
2901
- "type": "String"
3803
+ "property": "authorizationType",
3804
+ "equals": "JWT"
3805
+ }
2902
3806
  },
2903
3807
  {
2904
- "id": "inbound.auth.jwt.requiredPermissions",
2905
3808
  "label": "Required roles",
2906
3809
  "description": "List of roles to test JWT roles against",
2907
- "optional": false,
2908
- "feel": "required",
3810
+ "type": "String",
2909
3811
  "group": "authorization",
3812
+ "feel": "required",
3813
+ "optional": true,
2910
3814
  "binding": {
2911
- "name": "inbound.auth.jwt.requiredPermissions",
2912
- "type": "zeebe:property"
3815
+ "type": "zeebe:property",
3816
+ "name": "inbound.auth.jwt.requiredPermissions"
2913
3817
  },
2914
3818
  "condition": {
2915
- "property": "inbound.auth.type",
2916
- "equals": "JWT",
2917
- "type": "simple"
2918
- },
2919
- "type": "String"
3819
+ "property": "authorizationType",
3820
+ "equals": "JWT"
3821
+ }
2920
3822
  },
2921
3823
  {
2922
- "id": "inbound.responseExpression",
2923
- "label": "Response expression",
2924
- "description": "Expression used to generate the HTTP response",
2925
- "optional": true,
2926
- "feel": "required",
2927
- "group": "webhookResponse",
3824
+ "label": "Username",
3825
+ "description": "Username for basic authentication",
3826
+ "type": "String",
3827
+ "group": "authorization",
3828
+ "feel": "optional",
2928
3829
  "binding": {
2929
- "name": "inbound.responseExpression",
2930
- "type": "zeebe:property"
3830
+ "type": "zeebe:property",
3831
+ "name": "inbound.auth.username"
2931
3832
  },
2932
- "type": "Text"
2933
- },
2934
- {
2935
- "id": "inbound.verificationExpression",
2936
- "label": "One time verification response expression",
2937
- "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>",
2938
- "optional": true,
2939
- "feel": "required",
2940
- "group": "webhookResponse",
2941
- "binding": {
2942
- "name": "inbound.verificationExpression",
2943
- "type": "zeebe:property"
3833
+ "condition": {
3834
+ "property": "authorizationType",
3835
+ "equals": "BASIC"
2944
3836
  },
2945
- "type": "Text"
3837
+ "constraints": {
3838
+ "notEmpty": true
3839
+ }
2946
3840
  },
2947
3841
  {
2948
- "id": "activationCondition",
2949
- "label": "Activation condition",
2950
- "description": "Condition under which the Connector triggers. Leave empty to catch all events",
2951
- "optional": true,
2952
- "feel": "required",
2953
- "group": "activation",
3842
+ "label": "Password",
3843
+ "description": "Password for basic authentication",
3844
+ "type": "String",
3845
+ "group": "authorization",
3846
+ "feel": "optional",
2954
3847
  "binding": {
2955
- "name": "activationCondition",
2956
- "type": "zeebe:property"
3848
+ "type": "zeebe:property",
3849
+ "name": "inbound.auth.password"
2957
3850
  },
2958
- "type": "String"
3851
+ "condition": {
3852
+ "property": "authorizationType",
3853
+ "equals": "BASIC"
3854
+ },
3855
+ "constraints": {
3856
+ "notEmpty": true
3857
+ }
2959
3858
  },
2960
3859
  {
2961
- "id": "consumeUnmatchedEvents",
2962
- "label": "Consume unmatched events",
2963
- "value": true,
2964
- "group": "activation",
3860
+ "label": "API Key",
3861
+ "description": "Expected API key",
3862
+ "type": "String",
3863
+ "group": "authorization",
3864
+ "feel": "optional",
2965
3865
  "binding": {
2966
- "name": "consumeUnmatchedEvents",
2967
- "type": "zeebe:property"
3866
+ "type": "zeebe:property",
3867
+ "name": "inbound.auth.apiKey"
3868
+ },
3869
+ "condition": {
3870
+ "property": "authorizationType",
3871
+ "equals": "APIKEY"
2968
3872
  },
2969
- "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",
2970
- "type": "Boolean"
2971
- },
2972
- {
2973
- "id": "correlationKeyProcess",
2974
- "label": "Correlation key (process)",
2975
- "description": "Sets up the correlation key from process variables",
2976
3873
  "constraints": {
2977
3874
  "notEmpty": true
2978
- },
3875
+ }
3876
+ },
3877
+ {
3878
+ "label": "API Key locator",
3879
+ "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>",
3880
+ "type": "String",
3881
+ "group": "authorization",
2979
3882
  "feel": "required",
2980
- "group": "correlation",
2981
3883
  "binding": {
2982
- "name": "correlationKey",
2983
- "type": "bpmn:Message#zeebe:subscription#property"
3884
+ "type": "zeebe:property",
3885
+ "name": "inbound.auth.apiKeyLocator"
3886
+ },
3887
+ "condition": {
3888
+ "property": "authorizationType",
3889
+ "equals": "APIKEY"
2984
3890
  },
2985
- "type": "String"
2986
- },
2987
- {
2988
- "id": "correlationKeyPayload",
2989
- "label": "Correlation key (payload)",
2990
- "description": "Extracts the correlation key from the incoming message payload",
2991
3891
  "constraints": {
2992
3892
  "notEmpty": true
2993
3893
  },
2994
- "feel": "required",
2995
- "group": "correlation",
2996
- "binding": {
2997
- "name": "correlationKeyExpression",
2998
- "type": "zeebe:property"
2999
- },
3000
- "type": "String"
3894
+ "value": "=split(request.headers.authorization, \" \")[2]"
3001
3895
  },
3002
3896
  {
3003
- "id": "messageIdExpression",
3004
- "label": "Message ID expression",
3005
- "description": "Expression to extract unique identifier of a message",
3006
- "optional": true,
3897
+ "label": "Correlation key (process)",
3898
+ "type": "String",
3899
+ "group": "activation",
3007
3900
  "feel": "required",
3008
- "group": "correlation",
3901
+ "description": "Sets up the correlation key from process variables",
3009
3902
  "binding": {
3010
- "name": "messageIdExpression",
3011
- "type": "zeebe:property"
3903
+ "type": "bpmn:Message#zeebe:subscription#property",
3904
+ "name": "correlationKey"
3012
3905
  },
3013
- "type": "String"
3906
+ "constraints": {
3907
+ "notEmpty": true
3908
+ }
3014
3909
  },
3015
3910
  {
3016
- "id": "messageTtl",
3017
- "label": "Message TTL",
3018
- "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
3019
- "optional": true,
3020
- "constraints": {
3021
- "notEmpty": false,
3022
- "pattern": {
3023
- "value": "^(PT.*|)$",
3024
- "message": "must be an ISO-8601 duration"
3025
- }
3026
- },
3027
- "feel": "optional",
3028
- "group": "correlation",
3911
+ "label": "Correlation key (payload)",
3912
+ "type": "String",
3913
+ "group": "activation",
3914
+ "feel": "required",
3029
3915
  "binding": {
3030
- "name": "messageTtl",
3031
- "type": "zeebe:property"
3916
+ "type": "zeebe:property",
3917
+ "name": "correlationKeyExpression"
3032
3918
  },
3033
- "type": "String"
3919
+ "description": "Extracts the correlation key from the incoming message payload",
3920
+ "constraints": {
3921
+ "notEmpty": true
3922
+ }
3034
3923
  },
3035
3924
  {
3036
- "id": "messageNameUuid",
3037
- "generatedValue": {
3038
- "type": "uuid"
3039
- },
3040
- "group": "correlation",
3925
+ "label": "Condition",
3926
+ "type": "String",
3927
+ "group": "activation",
3928
+ "feel": "required",
3929
+ "optional": true,
3041
3930
  "binding": {
3042
- "name": "name",
3043
- "type": "bpmn:Message#property"
3931
+ "type": "zeebe:property",
3932
+ "name": "activationCondition"
3044
3933
  },
3045
- "type": "Hidden"
3934
+ "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>"
3046
3935
  },
3047
3936
  {
3048
- "id": "resultVariable",
3049
3937
  "label": "Result variable",
3050
- "description": "Name of variable to store the response in",
3051
- "group": "output",
3938
+ "type": "String",
3939
+ "group": "variable-mapping",
3940
+ "optional": true,
3052
3941
  "binding": {
3053
- "name": "resultVariable",
3054
- "type": "zeebe:property"
3942
+ "type": "zeebe:property",
3943
+ "name": "resultVariable"
3055
3944
  },
3056
- "type": "String"
3945
+ "description": "Name of variable to store the result of the connector in"
3057
3946
  },
3058
3947
  {
3059
- "id": "resultExpression",
3060
3948
  "label": "Result expression",
3061
- "description": "Expression to map the response into process variables",
3949
+ "type": "String",
3950
+ "group": "variable-mapping",
3062
3951
  "feel": "required",
3063
- "group": "output",
3952
+ "optional": true,
3064
3953
  "binding": {
3065
- "name": "resultExpression",
3066
- "type": "zeebe:property"
3954
+ "type": "zeebe:property",
3955
+ "name": "resultExpression"
3067
3956
  },
3068
- "type": "Text"
3957
+ "description": "Expression to map the inbound payload to process variables"
3069
3958
  }
3070
3959
  ],
3071
3960
  "icon": {
3072
- "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
3961
+ "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"
3073
3962
  },
3074
3963
  "engines": {
3075
- "camunda": "^8.6"
3964
+ "camunda": "^8.2"
3076
3965
  }
3077
3966
  },
3078
3967
  {
3079
3968
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
3080
- "name": "Webhook connector",
3969
+ "name": "Webhook Intermediate Catch Event Connector",
3081
3970
  "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
3082
- "version": 3,
3971
+ "version": 6,
3083
3972
  "description": "Configure webhook to receive callbacks",
3084
3973
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
3085
3974
  "category": {
@@ -3111,6 +4000,10 @@
3111
4000
  {
3112
4001
  "id": "variable-mapping",
3113
4002
  "label": "Variable mapping"
4003
+ },
4004
+ {
4005
+ "id": "webhookResponse",
4006
+ "label": "Webhook response"
3114
4007
  }
3115
4008
  ],
3116
4009
  "properties": [
@@ -3184,7 +4077,11 @@
3184
4077
  },
3185
4078
  "description": "The webhook ID is a part of the URL",
3186
4079
  "constraints": {
3187
- "notEmpty": true
4080
+ "notEmpty": true,
4081
+ "pattern": {
4082
+ "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
4083
+ "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
4084
+ }
3188
4085
  }
3189
4086
  },
3190
4087
  {
@@ -3463,6 +4360,18 @@
3463
4360
  "notEmpty": true
3464
4361
  }
3465
4362
  },
4363
+ {
4364
+ "label": "Message ID expression",
4365
+ "feel": "required",
4366
+ "type": "String",
4367
+ "optional": true,
4368
+ "group": "activation",
4369
+ "binding": {
4370
+ "type": "zeebe:property",
4371
+ "name": "messageIdExpression"
4372
+ },
4373
+ "description": "Expression to extract unique identifier of a message"
4374
+ },
3466
4375
  {
3467
4376
  "label": "Condition",
3468
4377
  "type": "String",
@@ -3497,244 +4406,46 @@
3497
4406
  "name": "resultExpression"
3498
4407
  },
3499
4408
  "description": "Expression to map the inbound payload to process variables"
3500
- }
3501
- ],
3502
- "icon": {
3503
- "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"
3504
- },
3505
- "engines": {
3506
- "camunda": "^8.2"
3507
- }
3508
- },
3509
- {
3510
- "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
3511
- "name": "Webhook connector",
3512
- "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
3513
- "version": 2,
3514
- "description": "Configure webhook to receive callbacks",
3515
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
3516
- "category": {
3517
- "id": "connectors",
3518
- "name": "Connectors"
3519
- },
3520
- "appliesTo": ["bpmn:IntermediateCatchEvent", "bpmn:IntermediateThrowEvent"],
3521
- "elementType": {
3522
- "value": "bpmn:IntermediateCatchEvent",
3523
- "eventDefinition": "bpmn:MessageEventDefinition"
3524
- },
3525
- "groups": [
3526
- {
3527
- "id": "endpoint",
3528
- "label": "Webhook configuration"
3529
- },
3530
- {
3531
- "id": "activation",
3532
- "label": "Activation"
3533
- },
3534
- {
3535
- "id": "variable-mapping",
3536
- "label": "Variable mapping"
3537
- }
3538
- ],
3539
- "properties": [
3540
- {
3541
- "type": "Hidden",
3542
- "value": "io.camunda:webhook:1",
3543
- "binding": {
3544
- "type": "zeebe:property",
3545
- "name": "inbound.type"
3546
- }
3547
- },
3548
- {
3549
- "type": "Hidden",
3550
- "generatedValue": {
3551
- "type": "uuid"
3552
- },
3553
- "binding": {
3554
- "type": "bpmn:Message#property",
3555
- "name": "name"
3556
- }
3557
- },
3558
- {
3559
- "type": "Hidden",
3560
- "value": "ConfigurableInboundWebhook",
3561
- "binding": {
3562
- "type": "zeebe:property",
3563
- "name": "inbound.subtype"
3564
- }
3565
- },
3566
- {
3567
- "label": "Webhook ID",
3568
- "type": "String",
3569
- "group": "endpoint",
3570
- "binding": {
3571
- "type": "zeebe:property",
3572
- "name": "inbound.context"
3573
- },
3574
- "description": "The webhook ID is a part of the URL",
3575
- "constraints": {
3576
- "notEmpty": true
3577
- }
3578
- },
3579
- {
3580
- "id": "shouldValidateHmac",
3581
- "label": "HMAC authentication",
3582
- "group": "endpoint",
3583
- "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",
3584
- "value": "disabled",
3585
- "type": "Dropdown",
3586
- "choices": [
3587
- {
3588
- "name": "Enabled",
3589
- "value": "enabled"
3590
- },
3591
- {
3592
- "name": "Disabled",
3593
- "value": "disabled"
3594
- }
3595
- ],
3596
- "binding": {
3597
- "type": "zeebe:property",
3598
- "name": "inbound.shouldValidateHmac"
3599
- }
3600
- },
3601
- {
3602
- "label": "HMAC secret key",
3603
- "description": "Shared secret key",
3604
- "type": "String",
3605
- "group": "endpoint",
3606
- "optional": true,
3607
- "binding": {
3608
- "type": "zeebe:property",
3609
- "name": "inbound.hmacSecret"
3610
- },
3611
- "condition": {
3612
- "property": "shouldValidateHmac",
3613
- "equals": "enabled"
3614
- }
3615
- },
3616
- {
3617
- "label": "HMAC header",
3618
- "description": "Name of header attribute that will contain the HMAC value",
3619
- "type": "String",
3620
- "group": "endpoint",
3621
- "optional": true,
3622
- "binding": {
3623
- "type": "zeebe:property",
3624
- "name": "inbound.hmacHeader"
3625
- },
3626
- "condition": {
3627
- "property": "shouldValidateHmac",
3628
- "equals": "enabled"
3629
- }
3630
- },
3631
- {
3632
- "label": "HMAC algorithm",
3633
- "group": "endpoint",
3634
- "description": "Choose HMAC algorithm",
3635
- "value": "sha_256",
3636
- "type": "Dropdown",
3637
- "choices": [
3638
- {
3639
- "name": "SHA-1",
3640
- "value": "sha_1"
3641
- },
3642
- {
3643
- "name": "SHA-256",
3644
- "value": "sha_256"
3645
- },
3646
- {
3647
- "name": "SHA-512",
3648
- "value": "sha_512"
3649
- }
3650
- ],
3651
- "binding": {
3652
- "type": "zeebe:property",
3653
- "name": "inbound.hmacAlgorithm"
3654
- },
3655
- "condition": {
3656
- "property": "shouldValidateHmac",
3657
- "equals": "enabled"
3658
- }
3659
- },
3660
- {
3661
- "label": "Correlation key (process)",
3662
- "type": "String",
3663
- "group": "activation",
3664
- "feel": "required",
3665
- "description": "Sets up the correlation key from process variables",
3666
- "binding": {
3667
- "type": "bpmn:Message#zeebe:subscription#property",
3668
- "name": "correlationKey"
3669
- },
3670
- "constraints": {
3671
- "notEmpty": true
3672
- }
3673
4409
  },
3674
4410
  {
3675
- "label": "Correlation key (payload)",
3676
- "type": "String",
3677
- "group": "activation",
3678
- "feel": "required",
3679
- "binding": {
3680
- "type": "zeebe:property",
3681
- "name": "correlationKeyExpression"
3682
- },
3683
- "description": "Extracts the correlation key from the incoming message payload",
3684
- "constraints": {
3685
- "notEmpty": true
3686
- }
3687
- },
3688
- {
3689
- "label": "Condition",
3690
- "type": "String",
3691
- "group": "activation",
4411
+ "label": "One time verification response expression",
4412
+ "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>",
4413
+ "type": "Text",
4414
+ "group": "webhookResponse",
3692
4415
  "feel": "required",
3693
4416
  "optional": true,
3694
4417
  "binding": {
3695
4418
  "type": "zeebe:property",
3696
- "name": "activationCondition"
3697
- },
3698
- "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>"
3699
- },
3700
- {
3701
- "label": "Result variable",
3702
- "type": "String",
3703
- "group": "variable-mapping",
3704
- "optional": true,
3705
- "binding": {
3706
- "type": "zeebe:property",
3707
- "name": "resultVariable"
3708
- },
3709
- "description": "Name of variable to store the result of the connector in"
4419
+ "name": "inbound.verificationExpression"
4420
+ }
3710
4421
  },
3711
4422
  {
3712
- "label": "Result expression",
3713
- "type": "String",
3714
- "group": "variable-mapping",
4423
+ "label": "Response body expression",
4424
+ "type": "Text",
4425
+ "group": "webhookResponse",
3715
4426
  "feel": "required",
3716
4427
  "optional": true,
3717
4428
  "binding": {
3718
4429
  "type": "zeebe:property",
3719
- "name": "resultExpression"
4430
+ "name": "inbound.responseBodyExpression"
3720
4431
  },
3721
- "description": "Expression to map the inbound payload to process variables"
4432
+ "description": "Specify condition and response"
3722
4433
  }
3723
4434
  ],
3724
4435
  "icon": {
3725
4436
  "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"
3726
4437
  },
3727
4438
  "engines": {
3728
- "camunda": "^8.2"
4439
+ "camunda": "^8.5"
3729
4440
  }
3730
4441
  },
3731
4442
  {
3732
4443
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
3733
- "name": "Webhook Intermediate Event Connector",
4444
+ "name": "Webhook Intermediate Catch Event Connector",
3734
4445
  "id": "io.camunda.connectors.webhook.WebhookConnectorIntermediate.v1",
4446
+ "version": 4,
3735
4447
  "description": "Configure webhook to receive callbacks",
3736
4448
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/http-webhook/",
3737
- "version": 10,
3738
4449
  "category": {
3739
4450
  "id": "connectors",
3740
4451
  "name": "Connectors"
@@ -3757,43 +4468,52 @@
3757
4468
  "id": "authorization",
3758
4469
  "label": "Authorization"
3759
4470
  },
3760
- {
3761
- "id": "webhookResponse",
3762
- "label": "Webhook response"
3763
- },
3764
4471
  {
3765
4472
  "id": "activation",
3766
4473
  "label": "Activation"
3767
4474
  },
3768
4475
  {
3769
- "id": "correlation",
3770
- "label": "Correlation"
4476
+ "id": "variable-mapping",
4477
+ "label": "Variable mapping"
3771
4478
  },
3772
4479
  {
3773
- "id": "output",
3774
- "label": "Output mapping"
4480
+ "id": "webhookResponse",
4481
+ "label": "Webhook response"
3775
4482
  }
3776
4483
  ],
3777
4484
  "properties": [
3778
4485
  {
4486
+ "type": "Hidden",
3779
4487
  "value": "io.camunda:webhook:1",
3780
4488
  "binding": {
3781
- "name": "inbound.type",
3782
- "type": "zeebe:property"
4489
+ "type": "zeebe:property",
4490
+ "name": "inbound.type"
4491
+ }
4492
+ },
4493
+ {
4494
+ "type": "Hidden",
4495
+ "generatedValue": {
4496
+ "type": "uuid"
3783
4497
  },
3784
- "type": "Hidden"
4498
+ "binding": {
4499
+ "type": "bpmn:Message#property",
4500
+ "name": "name"
4501
+ }
3785
4502
  },
3786
4503
  {
3787
- "id": "inbound.method",
4504
+ "type": "Hidden",
4505
+ "value": "ConfigurableInboundWebhook",
4506
+ "binding": {
4507
+ "type": "zeebe:property",
4508
+ "name": "inbound.subtype"
4509
+ }
4510
+ },
4511
+ {
4512
+ "id": "webhookMethod",
3788
4513
  "label": "Webhook method",
4514
+ "group": "endpoint",
3789
4515
  "description": "Select HTTP method",
3790
- "optional": false,
3791
4516
  "value": "any",
3792
- "group": "endpoint",
3793
- "binding": {
3794
- "name": "inbound.method",
3795
- "type": "zeebe:property"
3796
- },
3797
4517
  "type": "Dropdown",
3798
4518
  "choices": [
3799
4519
  {
@@ -3801,53 +4521,46 @@
3801
4521
  "value": "any"
3802
4522
  },
3803
4523
  {
3804
- "name": "GET",
4524
+ "name": "Get",
3805
4525
  "value": "get"
3806
4526
  },
3807
4527
  {
3808
- "name": "POST",
4528
+ "name": "Post",
3809
4529
  "value": "post"
3810
4530
  },
3811
4531
  {
3812
- "name": "PUT",
4532
+ "name": "Put",
3813
4533
  "value": "put"
3814
4534
  },
3815
4535
  {
3816
- "name": "DELETE",
4536
+ "name": "Delete",
3817
4537
  "value": "delete"
3818
4538
  }
3819
- ]
4539
+ ],
4540
+ "binding": {
4541
+ "type": "zeebe:property",
4542
+ "name": "inbound.method"
4543
+ }
3820
4544
  },
3821
4545
  {
3822
- "id": "inbound.context",
3823
4546
  "label": "Webhook ID",
3824
- "description": "The webhook ID is a part of the URL",
3825
- "optional": false,
3826
- "constraints": {
3827
- "notEmpty": true,
3828
- "pattern": {
3829
- "value": "^[a-zA-Z0-9]+([-_][a-zA-Z0-9]+)*$",
3830
- "message": "can only contain letters, numbers, or single underscores/hyphens and cannot begin or end with an underscore/hyphen"
3831
- }
3832
- },
4547
+ "type": "String",
3833
4548
  "group": "endpoint",
3834
4549
  "binding": {
3835
- "name": "inbound.context",
3836
- "type": "zeebe:property"
4550
+ "type": "zeebe:property",
4551
+ "name": "inbound.context"
3837
4552
  },
3838
- "type": "String"
4553
+ "description": "The webhook ID is a part of the URL",
4554
+ "constraints": {
4555
+ "notEmpty": true
4556
+ }
3839
4557
  },
3840
4558
  {
3841
- "id": "inbound.shouldValidateHmac",
4559
+ "id": "shouldValidateHmac",
3842
4560
  "label": "HMAC authentication",
4561
+ "group": "authentication",
3843
4562
  "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",
3844
- "optional": false,
3845
4563
  "value": "disabled",
3846
- "group": "authentication",
3847
- "binding": {
3848
- "name": "inbound.shouldValidateHmac",
3849
- "type": "zeebe:property"
3850
- },
3851
4564
  "type": "Dropdown",
3852
4565
  "choices": [
3853
4566
  {
@@ -3858,60 +4571,47 @@
3858
4571
  "name": "Disabled",
3859
4572
  "value": "disabled"
3860
4573
  }
3861
- ]
4574
+ ],
4575
+ "binding": {
4576
+ "type": "zeebe:property",
4577
+ "name": "inbound.shouldValidateHmac"
4578
+ }
3862
4579
  },
3863
4580
  {
3864
- "id": "inbound.hmacSecret",
3865
4581
  "label": "HMAC secret key",
3866
4582
  "description": "Shared secret key",
3867
- "optional": true,
3868
- "feel": "optional",
4583
+ "type": "String",
3869
4584
  "group": "authentication",
4585
+ "optional": true,
3870
4586
  "binding": {
3871
- "name": "inbound.hmacSecret",
3872
- "type": "zeebe:property"
4587
+ "type": "zeebe:property",
4588
+ "name": "inbound.hmacSecret"
3873
4589
  },
3874
4590
  "condition": {
3875
- "property": "inbound.shouldValidateHmac",
3876
- "equals": "enabled",
3877
- "type": "simple"
3878
- },
3879
- "type": "String"
4591
+ "property": "shouldValidateHmac",
4592
+ "equals": "enabled"
4593
+ }
3880
4594
  },
3881
4595
  {
3882
- "id": "inbound.hmacHeader",
3883
4596
  "label": "HMAC header",
3884
4597
  "description": "Name of header attribute that will contain the HMAC value",
3885
- "optional": true,
3886
- "feel": "optional",
4598
+ "type": "String",
3887
4599
  "group": "authentication",
4600
+ "optional": true,
3888
4601
  "binding": {
3889
- "name": "inbound.hmacHeader",
3890
- "type": "zeebe:property"
4602
+ "type": "zeebe:property",
4603
+ "name": "inbound.hmacHeader"
3891
4604
  },
3892
4605
  "condition": {
3893
- "property": "inbound.shouldValidateHmac",
3894
- "equals": "enabled",
3895
- "type": "simple"
3896
- },
3897
- "type": "String"
4606
+ "property": "shouldValidateHmac",
4607
+ "equals": "enabled"
4608
+ }
3898
4609
  },
3899
4610
  {
3900
- "id": "inbound.hmacAlgorithm",
3901
4611
  "label": "HMAC algorithm",
4612
+ "group": "authentication",
3902
4613
  "description": "Choose HMAC algorithm",
3903
- "optional": false,
3904
4614
  "value": "sha_256",
3905
- "group": "authentication",
3906
- "binding": {
3907
- "name": "inbound.hmacAlgorithm",
3908
- "type": "zeebe:property"
3909
- },
3910
- "condition": {
3911
- "property": "inbound.shouldValidateHmac",
3912
- "equals": "enabled",
3913
- "type": "simple"
3914
- },
3915
4615
  "type": "Dropdown",
3916
4616
  "choices": [
3917
4617
  {
@@ -3926,309 +4626,264 @@
3926
4626
  "name": "SHA-512",
3927
4627
  "value": "sha_512"
3928
4628
  }
3929
- ]
4629
+ ],
4630
+ "binding": {
4631
+ "type": "zeebe:property",
4632
+ "name": "inbound.hmacAlgorithm"
4633
+ },
4634
+ "condition": {
4635
+ "property": "shouldValidateHmac",
4636
+ "equals": "enabled"
4637
+ }
3930
4638
  },
3931
4639
  {
3932
- "id": "inbound.hmacScopes",
3933
4640
  "label": "HMAC scopes",
4641
+ "group": "authentication",
3934
4642
  "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>",
3935
- "optional": true,
3936
4643
  "feel": "required",
3937
- "group": "authentication",
4644
+ "type": "String",
4645
+ "optional": true,
3938
4646
  "binding": {
3939
- "name": "inbound.hmacScopes",
3940
- "type": "zeebe:property"
4647
+ "type": "zeebe:property",
4648
+ "name": "inbound.hmacScopes"
3941
4649
  },
3942
4650
  "condition": {
3943
- "property": "inbound.shouldValidateHmac",
3944
- "equals": "enabled",
3945
- "type": "simple"
3946
- },
3947
- "type": "String"
4651
+ "property": "shouldValidateHmac",
4652
+ "equals": "enabled"
4653
+ }
3948
4654
  },
3949
4655
  {
3950
- "id": "inbound.auth.type",
4656
+ "id": "authorizationType",
3951
4657
  "label": "Authorization type",
3952
- "description": "Choose the authorization type",
3953
- "value": "NONE",
3954
4658
  "group": "authorization",
3955
- "binding": {
3956
- "name": "inbound.auth.type",
3957
- "type": "zeebe:property"
3958
- },
4659
+ "description": "Choose the authorization type.",
4660
+ "value": "NONE",
3959
4661
  "type": "Dropdown",
3960
4662
  "choices": [
3961
4663
  {
3962
4664
  "name": "None",
3963
4665
  "value": "NONE"
3964
4666
  },
4667
+ {
4668
+ "name": "JWT",
4669
+ "value": "JWT"
4670
+ },
3965
4671
  {
3966
4672
  "name": "Basic",
3967
4673
  "value": "BASIC"
3968
4674
  },
3969
4675
  {
3970
- "name": "API key",
4676
+ "name": "API Key",
3971
4677
  "value": "APIKEY"
3972
- },
3973
- {
3974
- "name": "JWT",
3975
- "value": "JWT"
3976
4678
  }
3977
- ]
3978
- },
3979
- {
3980
- "id": "inbound.auth.username",
3981
- "label": "Username",
3982
- "description": "Username for basic authentication",
3983
- "optional": false,
3984
- "feel": "optional",
3985
- "group": "authorization",
3986
- "binding": {
3987
- "name": "inbound.auth.username",
3988
- "type": "zeebe:property"
3989
- },
3990
- "condition": {
3991
- "property": "inbound.auth.type",
3992
- "equals": "BASIC",
3993
- "type": "simple"
3994
- },
3995
- "type": "String"
3996
- },
3997
- {
3998
- "id": "inbound.auth.password",
3999
- "label": "Password",
4000
- "description": "Password for basic authentication",
4001
- "optional": false,
4002
- "feel": "optional",
4003
- "group": "authorization",
4004
- "binding": {
4005
- "name": "inbound.auth.password",
4006
- "type": "zeebe:property"
4007
- },
4008
- "condition": {
4009
- "property": "inbound.auth.type",
4010
- "equals": "BASIC",
4011
- "type": "simple"
4012
- },
4013
- "type": "String"
4014
- },
4015
- {
4016
- "id": "inbound.auth.apiKey",
4017
- "label": "API key",
4018
- "description": "Expected API key",
4019
- "optional": false,
4020
- "feel": "optional",
4021
- "group": "authorization",
4022
- "binding": {
4023
- "name": "inbound.auth.apiKey",
4024
- "type": "zeebe:property"
4025
- },
4026
- "condition": {
4027
- "property": "inbound.auth.type",
4028
- "equals": "APIKEY",
4029
- "type": "simple"
4030
- },
4031
- "type": "String"
4032
- },
4033
- {
4034
- "id": "inbound.auth.apiKeyLocator",
4035
- "label": "API key locator",
4036
- "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>",
4037
- "optional": false,
4038
- "value": "=split(request.headers.authorization, \" \")[2]",
4039
- "constraints": {
4040
- "notEmpty": true
4041
- },
4042
- "feel": "required",
4043
- "group": "authorization",
4679
+ ],
4044
4680
  "binding": {
4045
- "name": "inbound.auth.apiKeyLocator",
4046
- "type": "zeebe:property"
4047
- },
4048
- "condition": {
4049
- "property": "inbound.auth.type",
4050
- "equals": "APIKEY",
4051
- "type": "simple"
4052
- },
4053
- "type": "String"
4681
+ "type": "zeebe:property",
4682
+ "name": "inbound.auth.type"
4683
+ }
4054
4684
  },
4055
4685
  {
4056
- "id": "inbound.auth.jwt.jwkUrl",
4057
- "label": "JWK URL",
4058
- "description": "Well-known URL of JWKs",
4059
- "optional": false,
4060
- "feel": "optional",
4686
+ "label": "JWK url",
4687
+ "description": "Well-known url of JWKs",
4688
+ "type": "String",
4061
4689
  "group": "authorization",
4690
+ "feel": "optional",
4691
+ "optional": true,
4062
4692
  "binding": {
4063
- "name": "inbound.auth.jwt.jwkUrl",
4064
- "type": "zeebe:property"
4693
+ "type": "zeebe:property",
4694
+ "name": "inbound.auth.jwt.jwkUrl"
4065
4695
  },
4066
4696
  "condition": {
4067
- "property": "inbound.auth.type",
4068
- "equals": "JWT",
4069
- "type": "simple"
4070
- },
4071
- "type": "String"
4697
+ "property": "authorizationType",
4698
+ "equals": "JWT"
4699
+ }
4072
4700
  },
4073
4701
  {
4074
- "id": "inbound.auth.jwt.permissionsExpression",
4075
4702
  "label": "JWT role property expression",
4076
4703
  "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>",
4077
- "optional": false,
4078
- "feel": "required",
4704
+ "type": "String",
4079
4705
  "group": "authorization",
4706
+ "feel": "required",
4707
+ "optional": true,
4080
4708
  "binding": {
4081
- "name": "inbound.auth.jwt.permissionsExpression",
4082
- "type": "zeebe:property"
4709
+ "type": "zeebe:property",
4710
+ "name": "inbound.auth.jwt.permissionsExpression"
4083
4711
  },
4084
4712
  "condition": {
4085
- "property": "inbound.auth.type",
4086
- "equals": "JWT",
4087
- "type": "simple"
4088
- },
4089
- "type": "String"
4713
+ "property": "authorizationType",
4714
+ "equals": "JWT"
4715
+ }
4090
4716
  },
4091
4717
  {
4092
- "id": "inbound.auth.jwt.requiredPermissions",
4093
4718
  "label": "Required roles",
4094
4719
  "description": "List of roles to test JWT roles against",
4095
- "optional": false,
4720
+ "type": "String",
4721
+ "group": "authorization",
4096
4722
  "feel": "required",
4723
+ "optional": true,
4724
+ "binding": {
4725
+ "type": "zeebe:property",
4726
+ "name": "inbound.auth.jwt.requiredPermissions"
4727
+ },
4728
+ "condition": {
4729
+ "property": "authorizationType",
4730
+ "equals": "JWT"
4731
+ }
4732
+ },
4733
+ {
4734
+ "label": "Username",
4735
+ "description": "Username for basic authentication",
4736
+ "type": "String",
4097
4737
  "group": "authorization",
4738
+ "feel": "optional",
4098
4739
  "binding": {
4099
- "name": "inbound.auth.jwt.requiredPermissions",
4100
- "type": "zeebe:property"
4740
+ "type": "zeebe:property",
4741
+ "name": "inbound.auth.username"
4101
4742
  },
4102
4743
  "condition": {
4103
- "property": "inbound.auth.type",
4104
- "equals": "JWT",
4105
- "type": "simple"
4744
+ "property": "authorizationType",
4745
+ "equals": "BASIC"
4106
4746
  },
4107
- "type": "String"
4747
+ "constraints": {
4748
+ "notEmpty": true
4749
+ }
4108
4750
  },
4109
4751
  {
4110
- "id": "inbound.responseBodyExpression",
4111
- "label": "Response body expression",
4112
- "description": "Specify condition and response",
4113
- "optional": true,
4114
- "feel": "required",
4115
- "group": "webhookResponse",
4752
+ "label": "Password",
4753
+ "description": "Password for basic authentication",
4754
+ "type": "String",
4755
+ "group": "authorization",
4756
+ "feel": "optional",
4116
4757
  "binding": {
4117
- "name": "inbound.responseBodyExpression",
4118
- "type": "zeebe:property"
4758
+ "type": "zeebe:property",
4759
+ "name": "inbound.auth.password"
4119
4760
  },
4120
- "type": "Text"
4761
+ "condition": {
4762
+ "property": "authorizationType",
4763
+ "equals": "BASIC"
4764
+ },
4765
+ "constraints": {
4766
+ "notEmpty": true
4767
+ }
4121
4768
  },
4122
4769
  {
4123
- "id": "inbound.verificationExpression",
4124
- "label": "One time verification response expression",
4125
- "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>",
4126
- "optional": true,
4127
- "feel": "required",
4128
- "group": "webhookResponse",
4770
+ "label": "API Key",
4771
+ "description": "Expected API key",
4772
+ "type": "String",
4773
+ "group": "authorization",
4774
+ "feel": "optional",
4129
4775
  "binding": {
4130
- "name": "inbound.verificationExpression",
4131
- "type": "zeebe:property"
4776
+ "type": "zeebe:property",
4777
+ "name": "inbound.auth.apiKey"
4132
4778
  },
4133
- "type": "Text"
4779
+ "condition": {
4780
+ "property": "authorizationType",
4781
+ "equals": "APIKEY"
4782
+ },
4783
+ "constraints": {
4784
+ "notEmpty": true
4785
+ }
4134
4786
  },
4135
4787
  {
4136
- "id": "activationCondition",
4137
- "label": "Activation condition",
4138
- "description": "Condition under which the Connector triggers. Leave empty to catch all events",
4139
- "optional": true,
4788
+ "label": "API Key locator",
4789
+ "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>",
4790
+ "type": "String",
4791
+ "group": "authorization",
4140
4792
  "feel": "required",
4141
- "group": "activation",
4142
4793
  "binding": {
4143
- "name": "activationCondition",
4144
- "type": "zeebe:property"
4794
+ "type": "zeebe:property",
4795
+ "name": "inbound.auth.apiKeyLocator"
4796
+ },
4797
+ "condition": {
4798
+ "property": "authorizationType",
4799
+ "equals": "APIKEY"
4145
4800
  },
4146
- "type": "String"
4147
- },
4148
- {
4149
- "id": "correlationKeyProcess",
4150
- "label": "Correlation key (process)",
4151
- "description": "Sets up the correlation key from process variables",
4152
4801
  "constraints": {
4153
4802
  "notEmpty": true
4154
4803
  },
4804
+ "value": "=split(request.headers.authorization, \" \")[2]"
4805
+ },
4806
+ {
4807
+ "label": "Correlation key (process)",
4808
+ "type": "String",
4809
+ "group": "activation",
4155
4810
  "feel": "required",
4156
- "group": "correlation",
4811
+ "description": "Sets up the correlation key from process variables",
4157
4812
  "binding": {
4158
- "name": "correlationKey",
4159
- "type": "bpmn:Message#zeebe:subscription#property"
4813
+ "type": "bpmn:Message#zeebe:subscription#property",
4814
+ "name": "correlationKey"
4160
4815
  },
4161
- "type": "String"
4816
+ "constraints": {
4817
+ "notEmpty": true
4818
+ }
4162
4819
  },
4163
4820
  {
4164
- "id": "correlationKeyPayload",
4165
4821
  "label": "Correlation key (payload)",
4166
- "description": "Extracts the correlation key from the incoming message payload",
4167
- "constraints": {
4168
- "notEmpty": true
4169
- },
4822
+ "type": "String",
4823
+ "group": "activation",
4170
4824
  "feel": "required",
4171
- "group": "correlation",
4172
4825
  "binding": {
4173
- "name": "correlationKeyExpression",
4174
- "type": "zeebe:property"
4826
+ "type": "zeebe:property",
4827
+ "name": "correlationKeyExpression"
4175
4828
  },
4176
- "type": "String"
4829
+ "description": "Extracts the correlation key from the incoming message payload",
4830
+ "constraints": {
4831
+ "notEmpty": true
4832
+ }
4177
4833
  },
4178
4834
  {
4179
- "id": "messageIdExpression",
4180
- "label": "Message ID expression",
4181
- "description": "Expression to extract unique identifier of a message",
4182
- "optional": true,
4835
+ "label": "Condition",
4836
+ "type": "String",
4837
+ "group": "activation",
4183
4838
  "feel": "required",
4184
- "group": "correlation",
4839
+ "optional": true,
4185
4840
  "binding": {
4186
- "name": "messageIdExpression",
4187
- "type": "zeebe:property"
4841
+ "type": "zeebe:property",
4842
+ "name": "activationCondition"
4188
4843
  },
4189
- "type": "String"
4844
+ "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>"
4190
4845
  },
4191
4846
  {
4192
- "id": "messageNameUuid",
4193
- "generatedValue": {
4194
- "type": "uuid"
4195
- },
4196
- "group": "correlation",
4847
+ "label": "Result variable",
4848
+ "type": "String",
4849
+ "group": "variable-mapping",
4850
+ "optional": true,
4197
4851
  "binding": {
4198
- "name": "name",
4199
- "type": "bpmn:Message#property"
4852
+ "type": "zeebe:property",
4853
+ "name": "resultVariable"
4200
4854
  },
4201
- "type": "Hidden"
4855
+ "description": "Name of variable to store the result of the connector in"
4202
4856
  },
4203
4857
  {
4204
- "id": "resultVariable",
4205
- "label": "Result variable",
4206
- "description": "Name of variable to store the response in",
4207
- "group": "output",
4858
+ "label": "Result expression",
4859
+ "type": "String",
4860
+ "group": "variable-mapping",
4861
+ "feel": "required",
4862
+ "optional": true,
4208
4863
  "binding": {
4209
- "name": "resultVariable",
4210
- "type": "zeebe:property"
4864
+ "type": "zeebe:property",
4865
+ "name": "resultExpression"
4211
4866
  },
4212
- "type": "String"
4867
+ "description": "Expression to map the inbound payload to process variables"
4213
4868
  },
4214
4869
  {
4215
- "id": "resultExpression",
4216
- "label": "Result expression",
4217
- "description": "Expression to map the response into process variables",
4870
+ "label": "Response body expression",
4871
+ "type": "Text",
4872
+ "group": "webhookResponse",
4218
4873
  "feel": "required",
4219
- "group": "output",
4874
+ "optional": true,
4220
4875
  "binding": {
4221
- "name": "resultExpression",
4222
- "type": "zeebe:property"
4876
+ "type": "zeebe:property",
4877
+ "name": "inbound.responseBodyExpression"
4223
4878
  },
4224
- "type": "Text"
4879
+ "description": "Specify condition and response"
4225
4880
  }
4226
4881
  ],
4227
4882
  "icon": {
4228
- "contents": "data:image/svg+xml;base64,PHN2ZyBpZD0naWNvbicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAzMiAzMic+CiAgPGRlZnM+CiAgICA8c3R5bGU+LmNscy0xIHsgZmlsbDogbm9uZTsgfTwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoCiAgICBkPSdNMjQsMjZhMywzLDAsMSwwLTIuODE2NC00SDEzdjFhNSw1LDAsMSwxLTUtNVYxNmE3LDcsMCwxLDAsNi45Mjg3LDhoNi4yNTQ5QTIuOTkxNCwyLjk5MTQsMCwwLDAsMjQsMjZaJy8+CiAgPHBhdGgKICAgIGQ9J00yNCwxNmE3LjAyNCw3LjAyNCwwLDAsMC0yLjU3LjQ4NzNsLTMuMTY1Ni01LjUzOTVhMy4wNDY5LDMuMDQ2OSwwLDEsMC0xLjczMjYuOTk4NWw0LjExODksNy4yMDg1Ljg2ODYtLjQ5NzZhNS4wMDA2LDUuMDAwNiwwLDEsMS0xLjg1MSw2Ljg0MThMMTcuOTM3LDI2LjUwMUE3LjAwMDUsNy4wMDA1LDAsMSwwLDI0LDE2WicvPgogIDxwYXRoCiAgICBkPSdNOC41MzIsMjAuMDUzN2EzLjAzLDMuMDMsMCwxLDAsMS43MzI2Ljk5ODVDMTEuNzQsMTguNDcsMTMuODYsMTQuNzYwNywxMy44OSwxNC43MDhsLjQ5NzYtLjg2ODItLjg2NzctLjQ5N2E1LDUsMCwxLDEsNi44MTItMS44NDM4bDEuNzMxNSwxLjAwMmE3LjAwMDgsNy4wMDA4LDAsMSwwLTEwLjM0NjIsMi4wMzU2Yy0uNDU3Ljc0MjctMS4xMDIxLDEuODcxNi0yLjA3MzcsMy41NzI4WicvPgogIDxyZWN0IGlkPSdfVHJhbnNwYXJlbnRfUmVjdGFuZ2xlXycgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycgY2xhc3M9J2Nscy0xJwogICAgd2lkdGg9JzMyJyBoZWlnaHQ9JzMyJy8+Cjwvc3ZnPg=="
4883
+ "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"
4229
4884
  },
4230
4885
  "engines": {
4231
- "camunda": "^8.5"
4886
+ "camunda": "^8.2"
4232
4887
  }
4233
4888
  },
4234
4889
  {
@@ -4246,7 +4901,7 @@
4246
4901
  "listen for event"
4247
4902
  ],
4248
4903
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/http-webhook/",
4249
- "version": 14,
4904
+ "version": 15,
4250
4905
  "category": {
4251
4906
  "id": "connectors",
4252
4907
  "name": "Connectors"
@@ -4632,27 +5287,27 @@
4632
5287
  "type": "String"
4633
5288
  },
4634
5289
  {
4635
- "id": "inbound.responseExpression",
4636
- "label": "Response expression",
4637
- "description": "Expression used to generate the HTTP response",
5290
+ "id": "inbound.verificationExpression",
5291
+ "label": "One time verification response expression",
5292
+ "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>",
4638
5293
  "optional": true,
4639
5294
  "feel": "required",
4640
5295
  "group": "webhookResponse",
4641
5296
  "binding": {
4642
- "name": "inbound.responseExpression",
5297
+ "name": "inbound.verificationExpression",
4643
5298
  "type": "zeebe:property"
4644
5299
  },
4645
5300
  "type": "Text"
4646
5301
  },
4647
5302
  {
4648
- "id": "inbound.verificationExpression",
4649
- "label": "One time verification response expression",
4650
- "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>",
5303
+ "id": "inbound.responseExpression",
5304
+ "label": "Response expression",
5305
+ "description": "Expression used to generate the HTTP response",
4651
5306
  "optional": true,
4652
5307
  "feel": "required",
4653
5308
  "group": "webhookResponse",
4654
5309
  "binding": {
4655
- "name": "inbound.verificationExpression",
5310
+ "name": "inbound.responseExpression",
4656
5311
  "type": "zeebe:property"
4657
5312
  },
4658
5313
  "type": "Text"