@camunda/connectors-element-templates 1.0.16 → 1.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/package.json +2 -2
  2. package/src/connectors.js +12 -0
  3. package/src/element-templates/agenticai-a2a-client-outbound-connector.json +3 -5
  4. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-intermediate.json +9 -8
  5. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-receive.json +9 -8
  6. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-intermediate.json +9 -8
  7. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-receive.json +9 -8
  8. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +36 -39
  9. package/src/element-templates/agenticai-aiagent-job-worker.json +3769 -28
  10. package/src/element-templates/agenticai-aiagent-outbound-connector.json +6979 -3299
  11. package/src/element-templates/agenticai-mcp-client-outbound-connector.json +469 -471
  12. package/src/element-templates/agenticai-mcp-message-start-event.json +122 -0
  13. package/src/element-templates/agenticai-mcp-remote-client-outbound-connector.json +484 -486
  14. package/src/element-templates/asana-connector.json +718 -7
  15. package/src/element-templates/automation-anywhere-outbound-connector.json +1756 -1752
  16. package/src/element-templates/aws-bedrock-agentcore-long-term-memory-outbound-connector.json +431 -0
  17. package/src/element-templates/aws-bedrock-agentcore-runtime-outbound-connector.json +285 -0
  18. package/src/element-templates/aws-bedrock-codeinterpreter-outbound-connector.json +341 -0
  19. package/src/element-templates/aws-bedrock-knowledgebase-outbound-connector.json +316 -0
  20. package/src/element-templates/aws-bedrock-outbound-connector.json +788 -51
  21. package/src/element-templates/aws-comprehend-outbound-connector.json +10 -5
  22. package/src/element-templates/aws-dynamodb-outbound-connector.json +1412 -1412
  23. package/src/element-templates/aws-eventbridge-connector-boundary.json +376 -11
  24. package/src/element-templates/aws-eventbridge-connector-intermediate.json +400 -35
  25. package/src/element-templates/aws-eventbridge-connector-message-start.json +408 -9
  26. package/src/element-templates/aws-eventbridge-connector-receive.json +364 -0
  27. package/src/element-templates/aws-eventbridge-connector-start-event.json +322 -5
  28. package/src/element-templates/aws-eventbridge-outbound-connector.json +316 -311
  29. package/src/element-templates/aws-lambda-outbound-connector.json +305 -301
  30. package/src/element-templates/aws-s3-outbound-connector.json +656 -15
  31. package/src/element-templates/aws-sagemaker-outbound-connector.json +56 -52
  32. package/src/element-templates/aws-sns-inbound-boundary.json +422 -415
  33. package/src/element-templates/aws-sns-inbound-intermediate.json +330 -323
  34. package/src/element-templates/aws-sns-inbound-message-start.json +348 -341
  35. package/src/element-templates/aws-sns-inbound-receive.json +13 -6
  36. package/src/element-templates/aws-sns-inbound-start-event.json +139 -132
  37. package/src/element-templates/aws-sns-outbound-connector.json +593 -589
  38. package/src/element-templates/aws-sqs-boundary-connector.json +642 -638
  39. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +588 -584
  40. package/src/element-templates/aws-sqs-outbound-connector.json +748 -746
  41. package/src/element-templates/aws-sqs-receive-connector.json +15 -11
  42. package/src/element-templates/aws-sqs-start-event-connector.json +408 -400
  43. package/src/element-templates/aws-sqs-start-message.json +465 -461
  44. package/src/element-templates/aws-textract-outbound-connector.json +298 -294
  45. package/src/element-templates/azure-blobstorage-outbound-connector.json +668 -11
  46. package/src/element-templates/azure-open-ai-connector.json +1329 -4
  47. package/src/element-templates/blue-prism-connector.json +598 -53
  48. package/src/element-templates/box-outbound-connector.json +924 -12
  49. package/src/element-templates/csv-outbound-connector.json +39 -31
  50. package/src/element-templates/easy-post-connector.json +1017 -49
  51. package/src/element-templates/email-inbound-connector-boundary.json +32 -24
  52. package/src/element-templates/email-inbound-connector-intermediate.json +32 -24
  53. package/src/element-templates/email-inbound-connector-receive.json +564 -0
  54. package/src/element-templates/email-message-start-event-connector.json +45 -37
  55. package/src/element-templates/email-outbound-connector.json +2129 -256
  56. package/src/element-templates/embeddings-vector-database-outbound-connector.json +513 -516
  57. package/src/element-templates/github-connector.json +12447 -5385
  58. package/src/element-templates/github-webhook-connector-boundary.json +11 -13
  59. package/src/element-templates/github-webhook-connector-intermediate.json +55 -57
  60. package/src/element-templates/github-webhook-connector-message-start.json +19 -21
  61. package/src/element-templates/github-webhook-connector-receive.json +13 -15
  62. package/src/element-templates/github-webhook-connector-start-event.json +62 -64
  63. package/src/element-templates/gitlab-connector.json +2974 -1342
  64. package/src/element-templates/google-cloud-storage-outbound-connector.json +561 -12
  65. package/src/element-templates/google-drive-outbound-connector.json +882 -262
  66. package/src/element-templates/google-gemini-outbound-connector.json +117 -109
  67. package/src/element-templates/google-maps-platform-connector.json +1048 -19
  68. package/src/element-templates/google-sheets-outbound-connector.json +2961 -1967
  69. package/src/element-templates/graphql-outbound-connector.json +1780 -1193
  70. package/src/element-templates/http-json-connector.json +2832 -2168
  71. package/src/element-templates/http-polling-boundary-catch-event-connector.json +953 -277
  72. package/src/element-templates/http-polling-connector.json +1642 -966
  73. package/src/element-templates/hubspot-outbound-connector.json +2376 -30
  74. package/src/element-templates/hugging-face-connector.json +432 -5
  75. package/src/element-templates/jdbc-outbound-connector.json +62 -48
  76. package/src/element-templates/kafka-inbound-connector-boundary.json +21 -12
  77. package/src/element-templates/kafka-inbound-connector-intermediate.json +581 -572
  78. package/src/element-templates/kafka-inbound-connector-receive.json +15 -6
  79. package/src/element-templates/kafka-inbound-connector-start-message.json +150 -141
  80. package/src/element-templates/kafka-inbound-connector.json +240 -240
  81. package/src/element-templates/kafka-outbound-connector.json +436 -430
  82. package/src/element-templates/microsoft-o365-email-boundary-event-connector.json +165 -13
  83. package/src/element-templates/microsoft-o365-email-intermediate-catch-event-connector.json +165 -13
  84. package/src/element-templates/microsoft-o365-email-message-start-event-connector.json +178 -26
  85. package/src/element-templates/microsoft-office365-mail-connector.json +883 -0
  86. package/src/element-templates/microsoft-teams-outbound-connector.json +5616 -1607
  87. package/src/element-templates/openai-connector.json +608 -145
  88. package/src/element-templates/operate-connector.json +1218 -66
  89. package/src/element-templates/power-automate-connector.json +602 -10
  90. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +799 -790
  91. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +914 -905
  92. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +477 -468
  93. package/src/element-templates/rabbitmq-inbound-connector-receive.json +15 -6
  94. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +754 -745
  95. package/src/element-templates/rabbitmq-outbound-connector.json +875 -869
  96. package/src/element-templates/rpa-connector.json +346 -0
  97. package/src/element-templates/salesforce-connector.json +583 -39
  98. package/src/element-templates/send-message-connector-intermediate-throw-event.json +10 -5
  99. package/src/element-templates/send-message-connector-message-end-event.json +10 -5
  100. package/src/element-templates/send-message-connector-send-task.json +10 -5
  101. package/src/element-templates/sendgrid-outbound-connector.json +1406 -798
  102. package/src/element-templates/servicenow-connector.json +971 -3
  103. package/src/element-templates/servicenow-flow-starter-connector.json +8 -3
  104. package/src/element-templates/servicenow-incident-connector.json +980 -3
  105. package/src/element-templates/slack-inbound-boundary.json +639 -341
  106. package/src/element-templates/slack-inbound-intermediate.json +393 -95
  107. package/src/element-templates/slack-inbound-message-start.json +678 -348
  108. package/src/element-templates/slack-inbound-receive.json +297 -0
  109. package/src/element-templates/slack-inbound-start-event.json +332 -327
  110. package/src/element-templates/slack-outbound-connector.json +3313 -919
  111. package/src/element-templates/soap-outbound-connector.json +812 -2
  112. package/src/element-templates/twilio-connector.json +1521 -41
  113. package/src/element-templates/twilio-webhook-boundary-connector.json +35 -26
  114. package/src/element-templates/twilio-webhook-connector.json +238 -8
  115. package/src/element-templates/twilio-webhook-intermediate-connector.json +38 -29
  116. package/src/element-templates/twilio-webhook-message-start-connector.json +312 -0
  117. package/src/element-templates/twilio-webhook-receive-connector.json +11 -2
  118. package/src/element-templates/uipath-connector.json +607 -15
  119. package/src/element-templates/webhook-connector-boundary.json +1986 -1331
  120. package/src/element-templates/webhook-connector-intermediate.json +2193 -1538
  121. package/src/element-templates/webhook-connector-receive.json +654 -0
  122. package/src/element-templates/webhook-connector-start-event.json +1261 -700
  123. package/src/element-templates/webhook-connector-start-message.json +1754 -1067
  124. package/src/element-templates/whatsapp-connector.json +339 -5
@@ -3,12 +3,19 @@
3
3
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
4
4
  "name": "HTTP Polling Boundary Catch Event Connector",
5
5
  "id": "io.camunda.connectors.http.Polling.Boundary",
6
- "version": 3,
7
6
  "description": "Polls endpoint at regular intervals",
8
- "icon": {
9
- "contents": "data:image/svg+xml;utf8,%3C%3Fxml version='1.0'%3F%3E%3Csvg width='18' height='18' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cg class='layer'%3E%3Ctitle%3ELayer 1%3C/title%3E%3Cpath d='m17.03,9c0,4.45 -3.6,8.05 -8.05,8.05c-4.45,0 -8.05,-3.6 -8.05,-8.05c0,-4.45 3.6,-8.05 8.05,-8.05c4.45,0 8.05,3.6 8.05,8.05z' fill='%23505562' id='svg_1'/%3E%3Cpath d='m4.93,14.16l1.85,-10.45l3.36,0c1.05,0 1.84,0.27 2.37,0.81c0.54,0.53 0.8,1.21 0.8,2.06c0,0.86 -0.24,1.58 -0.73,2.13c-0.47,0.55 -1.12,0.93 -1.95,1.14l-0.48,0.09l-0.53,0.03l-0.6,0.05l-1.79,0l-0.73,4.14l-1.58,0zm2.57,-5.57l1.74,0c0.76,0 1.35,-0.17 1.78,-0.5c0.44,-0.35 0.65,-0.82 0.65,-1.42c0,-0.48 -0.15,-0.85 -0.44,-1.12c-0.3,-0.28 -0.77,-0.42 -1.42,-0.42l-1.7,0l-0.61,3.46z' fill='white' id='svg_2'/%3E%3C/g%3E%3C/svg%3E"
10
- },
7
+ "keywords": [
8
+ "poll",
9
+ "polling",
10
+ "HTTP",
11
+ "REST",
12
+ "wait for response",
13
+ "check status",
14
+ "periodic request",
15
+ "HTTP callback"
16
+ ],
11
17
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/polling/",
18
+ "version": 5,
12
19
  "category": {
13
20
  "id": "connectors",
14
21
  "name": "Connectors"
@@ -18,6 +25,9 @@
18
25
  "value": "bpmn:BoundaryEvent",
19
26
  "eventDefinition": "bpmn:MessageEventDefinition"
20
27
  },
28
+ "engines": {
29
+ "camunda": "^8.9"
30
+ },
21
31
  "groups": [
22
32
  {
23
33
  "id": "authentication",
@@ -28,56 +38,55 @@
28
38
  "label": "HTTP Polling configuration"
29
39
  },
30
40
  {
31
- "id": "input",
41
+ "id": "payload",
32
42
  "label": "Payload"
33
43
  },
34
44
  {
35
- "id": "activation",
36
- "label": "Condition to proceed"
45
+ "id": "interval",
46
+ "label": "HTTP Polling Interval"
37
47
  },
38
48
  {
39
- "id": "timer",
40
- "label": "Timer"
49
+ "id": "timeout",
50
+ "label": "Connection timeout"
41
51
  },
42
52
  {
43
- "id": "timeout",
44
- "label": "Connect timeout"
53
+ "id": "activation",
54
+ "label": "Activation"
45
55
  },
46
56
  {
47
- "id": "variable-mapping",
48
- "label": "Response mapping"
57
+ "id": "correlation",
58
+ "label": "Correlation",
59
+ "tooltip": "Learn more about message correlation in the <a href=\"https://docs.camunda.io/docs/components/concepts/messages/#message-correlation-overview\">documentation</a>."
60
+ },
61
+ {
62
+ "id": "output",
63
+ "label": "Output mapping"
49
64
  }
50
65
  ],
51
66
  "properties": [
52
67
  {
53
- "type": "Hidden",
54
68
  "value": "io.camunda:http-polling:1",
55
69
  "binding": {
56
- "type": "zeebe:property",
57
- "name": "inbound.type"
58
- }
59
- },
60
- {
61
- "type": "Hidden",
62
- "generatedValue": {
63
- "type": "uuid"
70
+ "name": "inbound.type",
71
+ "type": "zeebe:property"
64
72
  },
65
- "binding": {
66
- "type": "bpmn:Message#property",
67
- "name": "name"
68
- }
73
+ "type": "Hidden"
69
74
  },
70
75
  {
76
+ "id": "authentication.type",
71
77
  "label": "Type",
72
- "id": "authenticationType",
73
- "group": "authentication",
74
78
  "description": "Choose the authentication type. Select 'None' if no authentication is necessary",
75
79
  "value": "noAuth",
80
+ "group": "authentication",
81
+ "binding": {
82
+ "name": "authentication.type",
83
+ "type": "zeebe:property"
84
+ },
76
85
  "type": "Dropdown",
77
86
  "choices": [
78
87
  {
79
- "name": "None",
80
- "value": "noAuth"
88
+ "name": "API key",
89
+ "value": "apiKey"
81
90
  },
82
91
  {
83
92
  "name": "Basic",
@@ -87,229 +96,241 @@
87
96
  "name": "Bearer token",
88
97
  "value": "bearer"
89
98
  },
99
+ {
100
+ "name": "None",
101
+ "value": "noAuth"
102
+ },
90
103
  {
91
104
  "name": "OAuth 2.0",
92
105
  "value": "oauth-client-credentials-flow"
93
106
  }
94
- ],
95
- "binding": {
96
- "type": "zeebe:property",
97
- "name": "authentication.type"
98
- }
107
+ ]
99
108
  },
100
109
  {
101
- "id": "method",
102
- "label": "Method",
103
- "group": "endpoint",
110
+ "id": "authentication.apiKeyLocation",
111
+ "label": "Api key location",
112
+ "description": "Choose type: Send API key in header or as query parameter.",
113
+ "optional": false,
114
+ "value": "headers",
115
+ "constraints": {
116
+ "notEmpty": true
117
+ },
118
+ "group": "authentication",
119
+ "binding": {
120
+ "name": "authentication.apiKeyLocation",
121
+ "type": "zeebe:property"
122
+ },
123
+ "condition": {
124
+ "property": "authentication.type",
125
+ "equals": "apiKey",
126
+ "type": "simple"
127
+ },
104
128
  "type": "Dropdown",
105
- "value": "get",
106
129
  "choices": [
107
130
  {
108
- "name": "GET",
109
- "value": "get"
110
- },
111
- {
112
- "name": "POST",
113
- "value": "post"
114
- },
115
- {
116
- "name": "PATCH",
117
- "value": "patch"
118
- },
119
- {
120
- "name": "PUT",
121
- "value": "put"
131
+ "name": "Headers",
132
+ "value": "headers"
122
133
  },
123
134
  {
124
- "name": "DELETE",
125
- "value": "delete"
135
+ "name": "Query parameters",
136
+ "value": "query"
126
137
  }
127
- ],
128
- "binding": {
129
- "type": "zeebe:property",
130
- "name": "method"
131
- }
138
+ ]
132
139
  },
133
140
  {
134
- "label": "URL",
135
- "group": "endpoint",
136
- "type": "String",
137
- "feel": "optional",
138
- "binding": {
139
- "type": "zeebe:property",
140
- "name": "url"
141
- },
141
+ "id": "authentication.name",
142
+ "label": "API key name",
143
+ "optional": false,
142
144
  "constraints": {
143
- "notEmpty": true,
144
- "pattern": {
145
- "value": "^(=|(https?://|secrets\\..+|\\{\\{secrets\\..+\\}\\}).*$)",
146
- "message": "must be a http(s) URL"
147
- }
148
- }
149
- },
150
- {
151
- "label": "Query parameters",
152
- "description": "Map of query parameters to add to the request URL",
153
- "group": "endpoint",
154
- "type": "Text",
155
- "feel": "required",
145
+ "notEmpty": true
146
+ },
147
+ "group": "authentication",
156
148
  "binding": {
157
- "type": "zeebe:property",
158
- "name": "queryParameters"
149
+ "name": "authentication.name",
150
+ "type": "zeebe:property"
159
151
  },
160
- "optional": true
152
+ "condition": {
153
+ "property": "authentication.type",
154
+ "equals": "apiKey",
155
+ "type": "simple"
156
+ },
157
+ "type": "String"
161
158
  },
162
159
  {
163
- "label": "HTTP headers",
164
- "description": "Map of HTTP headers to add to the request",
165
- "group": "endpoint",
166
- "type": "Text",
167
- "feel": "required",
160
+ "id": "authentication.value",
161
+ "label": "API key value",
162
+ "optional": false,
163
+ "constraints": {
164
+ "notEmpty": true
165
+ },
166
+ "group": "authentication",
168
167
  "binding": {
169
- "type": "zeebe:property",
170
- "name": "headers"
168
+ "name": "authentication.value",
169
+ "type": "zeebe:property"
171
170
  },
172
- "optional": true
171
+ "condition": {
172
+ "property": "authentication.type",
173
+ "equals": "apiKey",
174
+ "type": "simple"
175
+ },
176
+ "type": "String"
173
177
  },
174
178
  {
175
- "label": "Interval",
176
- "description": "The delay between HTTP requests, defined as ISO 8601 durations format. <a href='https://docs.camunda.io/docs/components/modeler/bpmn/timer-events/#time-duration' target='_blank'>How to configure a time duration</a>",
177
- "group": "endpoint",
178
- "type": "String",
179
- "feel": "optional",
180
- "value": "PT50S",
179
+ "id": "authentication.username",
180
+ "label": "Username",
181
+ "optional": false,
182
+ "constraints": {
183
+ "notEmpty": true
184
+ },
185
+ "group": "authentication",
181
186
  "binding": {
182
- "type": "zeebe:property",
183
- "name": "httpRequestInterval"
187
+ "name": "authentication.username",
188
+ "type": "zeebe:property"
184
189
  },
185
- "constraints": {
186
- "notEmpty": true,
187
- "pattern": {
188
- "value": "^P(?=\\d|T\\d)(?:\\d+Y)?(?:\\d+M)?(?:\\d+W)?(?:\\d+D)?(?:T(?:\\d+H)?(?:\\d+M)?(?:\\d+(?:\\.\\d{1,3})?S)?)$",
189
- "message": "value must be defined"
190
- }
190
+ "condition": {
191
+ "property": "authentication.type",
192
+ "equals": "basic",
193
+ "type": "simple"
191
194
  },
192
- "optional": false
195
+ "type": "String"
193
196
  },
194
197
  {
195
- "group": "endpoint",
196
- "type": "Hidden",
197
- "value": "PT5S",
198
+ "id": "authentication.password",
199
+ "label": "Password",
200
+ "optional": false,
201
+ "constraints": {
202
+ "notEmpty": true
203
+ },
204
+ "group": "authentication",
198
205
  "binding": {
199
- "type": "zeebe:property",
200
- "name": "processPollingInterval"
206
+ "name": "authentication.password",
207
+ "type": "zeebe:property"
201
208
  },
202
- "optional": true
209
+ "condition": {
210
+ "property": "authentication.type",
211
+ "equals": "basic",
212
+ "type": "simple"
213
+ },
214
+ "type": "String"
203
215
  },
204
216
  {
217
+ "id": "authentication.token",
205
218
  "label": "Bearer token",
206
- "group": "authentication",
207
- "type": "String",
208
- "feel": "optional",
209
- "binding": {
210
- "type": "zeebe:property",
211
- "name": "authentication.token"
212
- },
219
+ "optional": false,
213
220
  "constraints": {
214
221
  "notEmpty": true
215
222
  },
216
- "condition": {
217
- "property": "authenticationType",
218
- "equals": "bearer"
219
- }
220
- },
221
- {
222
- "label": "OAuth token endpoint",
223
- "description": "The OAuth token endpoint",
224
223
  "group": "authentication",
225
- "type": "String",
226
- "feel": "optional",
227
224
  "binding": {
228
- "type": "zeebe:property",
229
- "name": "authentication.oauthTokenEndpoint"
230
- },
231
- "constraints": {
232
- "notEmpty": true
225
+ "name": "authentication.token",
226
+ "type": "zeebe:property"
233
227
  },
234
228
  "condition": {
235
- "property": "authenticationType",
236
- "equals": "oauth-client-credentials-flow"
237
- }
229
+ "property": "authentication.type",
230
+ "equals": "bearer",
231
+ "type": "simple"
232
+ },
233
+ "type": "String"
238
234
  },
239
235
  {
240
- "label": "Client ID",
241
- "description": "Your application's client ID from the OAuth client",
236
+ "id": "authentication.oauthTokenEndpoint",
237
+ "label": "OAuth 2.0 token endpoint",
238
+ "description": "The OAuth token endpoint",
239
+ "optional": false,
240
+ "constraints": {
241
+ "notEmpty": true,
242
+ "pattern": {
243
+ "value": "^(=|(http://|https://|secrets|\\{\\{).*$)",
244
+ "message": "Must be a http(s) URL"
245
+ }
246
+ },
242
247
  "group": "authentication",
243
- "type": "String",
244
- "feel": "optional",
245
248
  "binding": {
246
- "type": "zeebe:property",
247
- "name": "authentication.clientId"
249
+ "name": "authentication.oauthTokenEndpoint",
250
+ "type": "zeebe:property"
248
251
  },
252
+ "condition": {
253
+ "property": "authentication.type",
254
+ "equals": "oauth-client-credentials-flow",
255
+ "type": "simple"
256
+ },
257
+ "type": "String"
258
+ },
259
+ {
260
+ "id": "authentication.clientId",
261
+ "label": "Client ID",
262
+ "description": "Your application's client ID from the OAuth client",
263
+ "optional": false,
249
264
  "constraints": {
250
265
  "notEmpty": true
251
266
  },
267
+ "group": "authentication",
268
+ "binding": {
269
+ "name": "authentication.clientId",
270
+ "type": "zeebe:property"
271
+ },
252
272
  "condition": {
253
- "property": "authenticationType",
254
- "equals": "oauth-client-credentials-flow"
255
- }
273
+ "property": "authentication.type",
274
+ "equals": "oauth-client-credentials-flow",
275
+ "type": "simple"
276
+ },
277
+ "type": "String"
256
278
  },
257
279
  {
280
+ "id": "authentication.clientSecret",
258
281
  "label": "Client secret",
259
282
  "description": "Your application's client secret from the OAuth client",
260
- "group": "authentication",
261
- "type": "String",
262
- "feel": "optional",
263
- "binding": {
264
- "type": "zeebe:property",
265
- "name": "authentication.clientSecret"
266
- },
283
+ "optional": false,
267
284
  "constraints": {
268
285
  "notEmpty": true
269
286
  },
270
- "condition": {
271
- "property": "authenticationType",
272
- "equals": "oauth-client-credentials-flow"
273
- }
274
- },
275
- {
276
- "label": "Scopes",
277
- "description": "The scopes which you want to request authorization for (e.g.read:contacts)",
278
287
  "group": "authentication",
279
- "type": "String",
280
- "feel": "optional",
281
- "optional": true,
282
288
  "binding": {
283
- "type": "zeebe:property",
284
- "name": "authentication.scopes"
289
+ "name": "authentication.clientSecret",
290
+ "type": "zeebe:property"
285
291
  },
286
292
  "condition": {
287
- "property": "authenticationType",
288
- "equals": "oauth-client-credentials-flow"
289
- }
293
+ "property": "authentication.type",
294
+ "equals": "oauth-client-credentials-flow",
295
+ "type": "simple"
296
+ },
297
+ "type": "String"
290
298
  },
291
299
  {
300
+ "id": "authentication.audience",
292
301
  "label": "Audience",
293
302
  "description": "The unique identifier of the target API you want to access",
294
- "group": "authentication",
295
- "type": "String",
296
- "feel": "optional",
297
303
  "optional": true,
304
+ "group": "authentication",
298
305
  "binding": {
299
- "type": "zeebe:property",
300
- "name": "authentication.audience"
306
+ "name": "authentication.audience",
307
+ "type": "zeebe:property"
301
308
  },
302
309
  "condition": {
303
- "property": "authenticationType",
304
- "equals": "oauth-client-credentials-flow"
305
- }
310
+ "property": "authentication.type",
311
+ "equals": "oauth-client-credentials-flow",
312
+ "type": "simple"
313
+ },
314
+ "type": "String"
306
315
  },
307
316
  {
308
- "label": "Client authentication",
309
317
  "id": "authentication.clientAuthentication",
310
- "group": "authentication",
318
+ "label": "Client authentication",
311
319
  "description": "Send client ID and client secret as Basic Auth request in the header, or as client credentials in the request body",
312
- "value": "basicAuthHeader",
320
+ "optional": false,
321
+ "constraints": {
322
+ "notEmpty": true
323
+ },
324
+ "group": "authentication",
325
+ "binding": {
326
+ "name": "authentication.clientAuthentication",
327
+ "type": "zeebe:property"
328
+ },
329
+ "condition": {
330
+ "property": "authentication.type",
331
+ "equals": "oauth-client-credentials-flow",
332
+ "type": "simple"
333
+ },
313
334
  "type": "Dropdown",
314
335
  "choices": [
315
336
  {
@@ -320,159 +341,345 @@
320
341
  "name": "Send as Basic Auth header",
321
342
  "value": "basicAuthHeader"
322
343
  }
323
- ],
324
- "binding": {
325
- "type": "zeebe:property",
326
- "name": "authentication.clientAuthentication"
327
- },
328
- "condition": {
329
- "property": "authenticationType",
330
- "equals": "oauth-client-credentials-flow"
331
- }
344
+ ]
332
345
  },
333
346
  {
334
- "label": "Username",
347
+ "id": "authentication.scopes",
348
+ "label": "Scopes",
349
+ "description": "The scopes which you want to request authorization for (e.g.read:contacts)",
350
+ "optional": true,
335
351
  "group": "authentication",
336
- "type": "String",
337
- "feel": "optional",
338
352
  "binding": {
339
- "type": "zeebe:property",
340
- "name": "authentication.username"
341
- },
342
- "constraints": {
343
- "notEmpty": true
353
+ "name": "authentication.scopes",
354
+ "type": "zeebe:property"
344
355
  },
345
356
  "condition": {
346
- "property": "authenticationType",
347
- "equals": "basic"
348
- }
357
+ "property": "authentication.type",
358
+ "equals": "oauth-client-credentials-flow",
359
+ "type": "simple"
360
+ },
361
+ "type": "String"
349
362
  },
350
363
  {
351
- "label": "Password",
352
- "group": "authentication",
353
- "type": "String",
354
- "feel": "optional",
355
- "binding": {
356
- "type": "zeebe:property",
357
- "name": "authentication.password"
358
- },
364
+ "id": "method",
365
+ "label": "Method",
366
+ "optional": false,
367
+ "value": "GET",
359
368
  "constraints": {
360
369
  "notEmpty": true
361
370
  },
362
- "condition": {
363
- "property": "authenticationType",
364
- "equals": "basic"
365
- }
371
+ "group": "endpoint",
372
+ "binding": {
373
+ "name": "method",
374
+ "type": "zeebe:property"
375
+ },
376
+ "type": "Dropdown",
377
+ "choices": [
378
+ {
379
+ "name": "POST",
380
+ "value": "POST"
381
+ },
382
+ {
383
+ "name": "GET",
384
+ "value": "GET"
385
+ },
386
+ {
387
+ "name": "DELETE",
388
+ "value": "DELETE"
389
+ },
390
+ {
391
+ "name": "PATCH",
392
+ "value": "PATCH"
393
+ },
394
+ {
395
+ "name": "PUT",
396
+ "value": "PUT"
397
+ }
398
+ ]
366
399
  },
367
400
  {
368
- "label": "Request body",
369
- "description": "Payload to send with the request",
370
- "group": "input",
371
- "type": "Text",
401
+ "id": "url",
402
+ "label": "URL",
403
+ "optional": false,
404
+ "constraints": {
405
+ "notEmpty": true,
406
+ "pattern": {
407
+ "value": "^(=|(http://|https://|secrets|\\{\\{).*$)",
408
+ "message": "Must be a http(s) URL"
409
+ }
410
+ },
372
411
  "feel": "optional",
412
+ "group": "endpoint",
373
413
  "binding": {
374
- "type": "zeebe:property",
375
- "name": "body"
376
- },
377
- "condition": {
378
- "property": "method",
379
- "oneOf": ["post", "put", "patch"]
414
+ "name": "url",
415
+ "type": "zeebe:property"
380
416
  },
381
- "optional": true
417
+ "type": "String"
382
418
  },
383
419
  {
384
- "label": "Correlation key (process)",
385
- "type": "String",
386
- "group": "activation",
420
+ "id": "queryParameters",
421
+ "label": "Query parameters",
422
+ "description": "Map of query parameters to add to the request URL",
423
+ "optional": true,
387
424
  "feel": "required",
388
- "description": "Sets up the correlation key from process variables",
425
+ "group": "endpoint",
389
426
  "binding": {
390
- "type": "bpmn:Message#zeebe:subscription#property",
391
- "name": "correlationKey"
427
+ "name": "queryParameters",
428
+ "type": "zeebe:property"
392
429
  },
393
- "constraints": {
394
- "notEmpty": true
395
- }
430
+ "type": "String"
396
431
  },
397
432
  {
398
- "label": "Correlation key (payload)",
399
- "type": "String",
400
- "group": "activation",
433
+ "id": "headers",
434
+ "label": "Headers",
435
+ "description": "Map of HTTP headers to add to the request",
436
+ "optional": true,
401
437
  "feel": "required",
438
+ "group": "endpoint",
402
439
  "binding": {
403
- "type": "zeebe:property",
404
- "name": "correlationKeyExpression"
440
+ "name": "headers",
441
+ "type": "zeebe:property"
405
442
  },
406
- "description": "Extracts the correlation key from the incoming message payload",
407
- "constraints": {
408
- "notEmpty": true
409
- }
443
+ "type": "String"
410
444
  },
411
445
  {
412
- "label": "Condition",
413
- "type": "String",
414
- "group": "activation",
415
- "feel": "required",
416
- "optional": true,
446
+ "id": "skipEncoding",
447
+ "label": "Skip URL encoding",
448
+ "description": "Skip the default URL decoding and encoding behavior",
449
+ "optional": true,
450
+ "group": "endpoint",
417
451
  "binding": {
418
- "type": "zeebe:property",
419
- "name": "activationCondition"
452
+ "name": "skipEncoding",
453
+ "type": "zeebe:property"
420
454
  },
421
- "description": "Condition under which the connector triggers. Leave empty to catch all events. <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>"
455
+ "type": "Hidden"
422
456
  },
423
457
  {
424
- "label": "Connection timeout",
425
- "description": "Sets the timeout in seconds to establish a connection or 0 for an infinite timeout",
458
+ "id": "followRedirects",
459
+ "label": "Follow redirects",
460
+ "description": "If enabled, HTTP 3xx redirects will be followed automatically. Disabled by default.",
461
+ "optional": true,
462
+ "value": false,
463
+ "feel": "static",
426
464
  "group": "endpoint",
427
- "type": "String",
428
- "value": "20",
429
465
  "binding": {
430
- "type": "zeebe:property",
431
- "name": "connectionTimeoutInSeconds"
466
+ "name": "followRedirects",
467
+ "type": "zeebe:property"
432
468
  },
469
+ "type": "Boolean"
470
+ },
471
+ {
472
+ "id": "body",
473
+ "label": "Request body",
474
+ "description": "Payload to send with the request",
433
475
  "optional": true,
434
476
  "feel": "optional",
477
+ "group": "payload",
478
+ "binding": {
479
+ "name": "body",
480
+ "type": "zeebe:property"
481
+ },
482
+ "condition": {
483
+ "property": "method",
484
+ "oneOf": ["POST", "PUT", "PATCH"],
485
+ "type": "simple"
486
+ },
487
+ "type": "Text"
488
+ },
489
+ {
490
+ "id": "httpRequestInterval",
491
+ "label": "Http request interval",
492
+ "description": "The delay between HTTP requests, defined as ISO 8601 durations format. <a href='https://docs.camunda.io/docs/components/modeler/bpmn/timer-events/#time-duration' target='_blank'>How to configure a time duration</a>",
493
+ "optional": false,
494
+ "value": "PT50S",
495
+ "feel": "optional",
496
+ "group": "interval",
497
+ "binding": {
498
+ "name": "httpRequestInterval",
499
+ "type": "zeebe:property"
500
+ },
501
+ "type": "String"
502
+ },
503
+ {
504
+ "id": "processPollingInterval",
505
+ "label": "Process polling interval",
506
+ "optional": false,
507
+ "value": "PT5S",
508
+ "group": "interval",
509
+ "binding": {
510
+ "name": "processPollingInterval",
511
+ "type": "zeebe:property"
512
+ },
513
+ "type": "Hidden"
514
+ },
515
+ {
516
+ "id": "connectionTimeoutInSeconds",
517
+ "label": "Connection timeout in seconds",
518
+ "description": "Defines the connection timeout in seconds, or 0 for an infinite timeout",
519
+ "optional": false,
520
+ "value": "20",
521
+ "constraints": {
522
+ "notEmpty": true,
523
+ "pattern": {
524
+ "value": "^\\d+$",
525
+ "message": "Must be a number"
526
+ }
527
+ },
528
+ "feel": "optional",
529
+ "group": "timeout",
530
+ "binding": {
531
+ "name": "connectionTimeoutInSeconds",
532
+ "type": "zeebe:property"
533
+ },
534
+ "tooltip": "Set the timeout in seconds to establish a connection or 0 for an infinite timeout",
535
+ "type": "String"
536
+ },
537
+ {
538
+ "id": "readTimeoutInSeconds",
539
+ "label": "Read timeout in seconds",
540
+ "description": "Timeout in seconds to read data from an established connection or 0 for an infinite timeout",
541
+ "optional": false,
542
+ "value": "20",
543
+ "constraints": {
544
+ "notEmpty": true,
545
+ "pattern": {
546
+ "value": "^\\d+$",
547
+ "message": "Must be a number"
548
+ }
549
+ },
550
+ "feel": "optional",
551
+ "group": "timeout",
552
+ "binding": {
553
+ "name": "readTimeoutInSeconds",
554
+ "type": "zeebe:property"
555
+ },
556
+ "type": "String"
557
+ },
558
+ {
559
+ "id": "activationCondition",
560
+ "label": "Activation condition",
561
+ "description": "Condition under which the Connector triggers. Leave empty to catch all events",
562
+ "optional": true,
563
+ "feel": "required",
564
+ "group": "activation",
565
+ "binding": {
566
+ "name": "activationCondition",
567
+ "type": "zeebe:property"
568
+ },
569
+ "type": "String"
570
+ },
571
+ {
572
+ "id": "correlationKeyProcess",
573
+ "label": "Correlation key (process)",
574
+ "description": "Sets up the correlation key from process variables",
575
+ "constraints": {
576
+ "notEmpty": true
577
+ },
578
+ "feel": "required",
579
+ "group": "correlation",
580
+ "binding": {
581
+ "name": "correlationKey",
582
+ "type": "bpmn:Message#zeebe:subscription#property"
583
+ },
584
+ "type": "String"
585
+ },
586
+ {
587
+ "id": "correlationKeyPayload",
588
+ "label": "Correlation key (payload)",
589
+ "description": "Extracts the correlation key from the incoming message payload",
590
+ "constraints": {
591
+ "notEmpty": true
592
+ },
593
+ "feel": "required",
594
+ "group": "correlation",
595
+ "binding": {
596
+ "name": "correlationKeyExpression",
597
+ "type": "zeebe:property"
598
+ },
599
+ "type": "String"
600
+ },
601
+ {
602
+ "id": "messageIdExpression",
603
+ "label": "Message ID expression",
604
+ "description": "Expression to extract unique identifier of a message",
605
+ "optional": true,
606
+ "feel": "required",
607
+ "group": "correlation",
608
+ "binding": {
609
+ "name": "messageIdExpression",
610
+ "type": "zeebe:property"
611
+ },
612
+ "type": "String"
613
+ },
614
+ {
615
+ "id": "messageTtl",
616
+ "label": "Message TTL",
617
+ "description": "Time-to-live for the message in the broker (ISO-8601 duration)",
618
+ "optional": true,
435
619
  "constraints": {
436
620
  "notEmpty": false,
437
621
  "pattern": {
438
- "value": "^(=|([0-9]+|secrets\\..+|\\{\\{secrets\\..+\\}\\})$)",
439
- "message": "must be a timeout in seconds (default value is 20 seconds) or a FEEL expression"
622
+ "value": "^(PT.*|)$",
623
+ "message": "must be an ISO-8601 duration"
440
624
  }
441
- }
625
+ },
626
+ "feel": "optional",
627
+ "group": "correlation",
628
+ "binding": {
629
+ "name": "messageTtl",
630
+ "type": "zeebe:property"
631
+ },
632
+ "type": "String"
633
+ },
634
+ {
635
+ "id": "messageNameUuid",
636
+ "label": "Message name",
637
+ "generatedValue": {
638
+ "type": "uuid"
639
+ },
640
+ "feel": "optional",
641
+ "group": "correlation",
642
+ "binding": {
643
+ "name": "name",
644
+ "type": "bpmn:Message#property"
645
+ },
646
+ "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.",
647
+ "type": "String"
442
648
  },
443
649
  {
650
+ "id": "resultVariable",
444
651
  "label": "Result variable",
445
- "type": "String",
446
- "group": "variable-mapping",
447
- "optional": true,
652
+ "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>.",
653
+ "group": "output",
448
654
  "binding": {
449
- "type": "zeebe:property",
450
- "name": "resultVariable"
655
+ "name": "resultVariable",
656
+ "type": "zeebe:property"
451
657
  },
452
- "description": "Name of variable to store the result of the connector in"
658
+ "type": "String"
453
659
  },
454
660
  {
661
+ "id": "resultExpression",
455
662
  "label": "Result expression",
456
- "type": "String",
457
- "group": "variable-mapping",
663
+ "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>.",
664
+ "value": "{\n myResponseBody: response.body\n // Use FEEL to extract values, e.g.,:\n // myUserId: response.body.post.userId\n}",
458
665
  "feel": "required",
459
- "optional": true,
666
+ "group": "output",
460
667
  "binding": {
461
- "type": "zeebe:property",
462
- "name": "resultExpression"
668
+ "name": "resultExpression",
669
+ "type": "zeebe:property"
463
670
  },
464
- "description": "Expression to map the inbound payload to process variables"
671
+ "type": "Text"
465
672
  }
466
673
  ],
467
- "engines": {
468
- "camunda": "^8.3"
674
+ "icon": {
675
+ "contents": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0nMS4wJz8+Cjxzdmcgd2lkdGg9JzE4JyBoZWlnaHQ9JzE4JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPgogICAgPGcgY2xhc3M9J2xheWVyJz4KICAgICAgICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+CiAgICAgICAgPHBhdGggZD0nbTE3LjAzLDljMCw0LjQ1IC0zLjYsOC4wNSAtOC4wNSw4LjA1Yy00LjQ1LDAgLTguMDUsLTMuNiAtOC4wNSwtOC4wNWMwLC00LjQ1IDMuNiwtOC4wNSA4LjA1LC04LjA1YzQuNDUsMCA4LjA1LDMuNiA4LjA1LDguMDV6JwogICAgICAgICAgICAgIGZpbGw9JyM1MDU1NjInIGlkPSdzdmdfMScvPgogICAgICAgIDxwYXRoIGQ9J200LjkzLDE0LjE2bDEuODUsLTEwLjQ1bDMuMzYsMGMxLjA1LDAgMS44NCwwLjI3IDIuMzcsMC44MWMwLjU0LDAuNTMgMC44LDEuMjEgMC44LDIuMDZjMCwwLjg2IC0wLjI0LDEuNTggLTAuNzMsMi4xM2MtMC40NywwLjU1IC0xLjEyLDAuOTMgLTEuOTUsMS4xNGwtMC40OCwwLjA5bC0wLjUzLDAuMDNsLTAuNiwwLjA1bC0xLjc5LDBsLTAuNzMsNC4xNGwtMS41OCwwem0yLjU3LC01LjU3bDEuNzQsMGMwLjc2LDAgMS4zNSwtMC4xNyAxLjc4LC0wLjVjMC40NCwtMC4zNSAwLjY1LC0wLjgyIDAuNjUsLTEuNDJjMCwtMC40OCAtMC4xNSwtMC44NSAtMC40NCwtMS4xMmMtMC4zLC0wLjI4IC0wLjc3LC0wLjQyIC0xLjQyLC0wLjQybC0xLjcsMGwtMC42MSwzLjQ2eicKICAgICAgICAgICAgICBmaWxsPSd3aGl0ZScgaWQ9J3N2Z18yJy8+CiAgICA8L2c+Cjwvc3ZnPg=="
469
676
  }
470
677
  },
471
678
  {
472
679
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
473
680
  "name": "HTTP Polling Boundary Catch Event Connector",
474
681
  "id": "io.camunda.connectors.http.Polling.Boundary",
475
- "version": 2,
682
+ "version": 3,
476
683
  "description": "Polls endpoint at regular intervals",
477
684
  "icon": {
478
685
  "contents": "data:image/svg+xml;utf8,%3C%3Fxml version='1.0'%3F%3E%3Csvg width='18' height='18' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cg class='layer'%3E%3Ctitle%3ELayer 1%3C/title%3E%3Cpath d='m17.03,9c0,4.45 -3.6,8.05 -8.05,8.05c-4.45,0 -8.05,-3.6 -8.05,-8.05c0,-4.45 3.6,-8.05 8.05,-8.05c4.45,0 8.05,3.6 8.05,8.05z' fill='%23505562' id='svg_1'/%3E%3Cpath d='m4.93,14.16l1.85,-10.45l3.36,0c1.05,0 1.84,0.27 2.37,0.81c0.54,0.53 0.8,1.21 0.8,2.06c0,0.86 -0.24,1.58 -0.73,2.13c-0.47,0.55 -1.12,0.93 -1.95,1.14l-0.48,0.09l-0.53,0.03l-0.6,0.05l-1.79,0l-0.73,4.14l-1.58,0zm2.57,-5.57l1.74,0c0.76,0 1.35,-0.17 1.78,-0.5c0.44,-0.35 0.65,-0.82 0.65,-1.42c0,-0.48 -0.15,-0.85 -0.44,-1.12c-0.3,-0.28 -0.77,-0.42 -1.42,-0.42l-1.7,0l-0.61,3.46z' fill='white' id='svg_2'/%3E%3C/g%3E%3C/svg%3E"
@@ -941,7 +1148,7 @@
941
1148
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
942
1149
  "name": "HTTP Polling Boundary Catch Event Connector",
943
1150
  "id": "io.camunda.connectors.http.Polling.Boundary",
944
- "version": 1,
1151
+ "version": 2,
945
1152
  "description": "Polls endpoint at regular intervals",
946
1153
  "icon": {
947
1154
  "contents": "data:image/svg+xml;utf8,%3C%3Fxml version='1.0'%3F%3E%3Csvg width='18' height='18' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cg class='layer'%3E%3Ctitle%3ELayer 1%3C/title%3E%3Cpath d='m17.03,9c0,4.45 -3.6,8.05 -8.05,8.05c-4.45,0 -8.05,-3.6 -8.05,-8.05c0,-4.45 3.6,-8.05 8.05,-8.05c4.45,0 8.05,3.6 8.05,8.05z' fill='%23505562' id='svg_1'/%3E%3Cpath d='m4.93,14.16l1.85,-10.45l3.36,0c1.05,0 1.84,0.27 2.37,0.81c0.54,0.53 0.8,1.21 0.8,2.06c0,0.86 -0.24,1.58 -0.73,2.13c-0.47,0.55 -1.12,0.93 -1.95,1.14l-0.48,0.09l-0.53,0.03l-0.6,0.05l-1.79,0l-0.73,4.14l-1.58,0zm2.57,-5.57l1.74,0c0.76,0 1.35,-0.17 1.78,-0.5c0.44,-0.35 0.65,-0.82 0.65,-1.42c0,-0.48 -0.15,-0.85 -0.44,-1.12c-0.3,-0.28 -0.77,-0.42 -1.42,-0.42l-1.7,0l-0.61,3.46z' fill='white' id='svg_2'/%3E%3C/g%3E%3C/svg%3E"
@@ -1123,7 +1330,7 @@
1123
1330
  "constraints": {
1124
1331
  "notEmpty": true,
1125
1332
  "pattern": {
1126
- "value": "^=|P(?=\\d|T\\d)(?:\\d+Y)?(?:\\d+M)?(?:\\d+W)?(?:\\d+D)?(?:T(?:\\d+H)?(?:\\d+M)?(?:\\d+(?:\\.\\d{1,3})?S)?)$",
1333
+ "value": "^P(?=\\d|T\\d)(?:\\d+Y)?(?:\\d+M)?(?:\\d+W)?(?:\\d+D)?(?:T(?:\\d+H)?(?:\\d+M)?(?:\\d+(?:\\.\\d{1,3})?S)?)$",
1127
1334
  "message": "value must be defined"
1128
1335
  }
1129
1336
  },
@@ -1135,7 +1342,7 @@
1135
1342
  "value": "PT5S",
1136
1343
  "binding": {
1137
1344
  "type": "zeebe:property",
1138
- "name": "operatePollingInterval"
1345
+ "name": "processPollingInterval"
1139
1346
  },
1140
1347
  "optional": true
1141
1348
  },
@@ -2056,5 +2263,474 @@
2056
2263
  "icon": {
2057
2264
  "contents": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0nMS4wJz8+Cjxzdmcgd2lkdGg9JzE4JyBoZWlnaHQ9JzE4JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPgogICAgPGcgY2xhc3M9J2xheWVyJz4KICAgICAgICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+CiAgICAgICAgPHBhdGggZD0nbTE3LjAzLDljMCw0LjQ1IC0zLjYsOC4wNSAtOC4wNSw4LjA1Yy00LjQ1LDAgLTguMDUsLTMuNiAtOC4wNSwtOC4wNWMwLC00LjQ1IDMuNiwtOC4wNSA4LjA1LC04LjA1YzQuNDUsMCA4LjA1LDMuNiA4LjA1LDguMDV6JwogICAgICAgICAgICAgIGZpbGw9JyM1MDU1NjInIGlkPSdzdmdfMScvPgogICAgICAgIDxwYXRoIGQ9J200LjkzLDE0LjE2bDEuODUsLTEwLjQ1bDMuMzYsMGMxLjA1LDAgMS44NCwwLjI3IDIuMzcsMC44MWMwLjU0LDAuNTMgMC44LDEuMjEgMC44LDIuMDZjMCwwLjg2IC0wLjI0LDEuNTggLTAuNzMsMi4xM2MtMC40NywwLjU1IC0xLjEyLDAuOTMgLTEuOTUsMS4xNGwtMC40OCwwLjA5bC0wLjUzLDAuMDNsLTAuNiwwLjA1bC0xLjc5LDBsLTAuNzMsNC4xNGwtMS41OCwwem0yLjU3LC01LjU3bDEuNzQsMGMwLjc2LDAgMS4zNSwtMC4xNyAxLjc4LC0wLjVjMC40NCwtMC4zNSAwLjY1LC0wLjgyIDAuNjUsLTEuNDJjMCwtMC40OCAtMC4xNSwtMC44NSAtMC40NCwtMS4xMmMtMC4zLC0wLjI4IC0wLjc3LC0wLjQyIC0xLjQyLC0wLjQybC0xLjcsMGwtMC42MSwzLjQ2eicKICAgICAgICAgICAgICBmaWxsPSd3aGl0ZScgaWQ9J3N2Z18yJy8+CiAgICA8L2c+Cjwvc3ZnPg=="
2058
2265
  }
2266
+ },
2267
+ {
2268
+ "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2269
+ "name": "HTTP Polling Boundary Catch Event Connector",
2270
+ "id": "io.camunda.connectors.http.Polling.Boundary",
2271
+ "version": 1,
2272
+ "description": "Polls endpoint at regular intervals",
2273
+ "icon": {
2274
+ "contents": "data:image/svg+xml;utf8,%3C%3Fxml version='1.0'%3F%3E%3Csvg width='18' height='18' xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg'%3E%3Cg class='layer'%3E%3Ctitle%3ELayer 1%3C/title%3E%3Cpath d='m17.03,9c0,4.45 -3.6,8.05 -8.05,8.05c-4.45,0 -8.05,-3.6 -8.05,-8.05c0,-4.45 3.6,-8.05 8.05,-8.05c4.45,0 8.05,3.6 8.05,8.05z' fill='%23505562' id='svg_1'/%3E%3Cpath d='m4.93,14.16l1.85,-10.45l3.36,0c1.05,0 1.84,0.27 2.37,0.81c0.54,0.53 0.8,1.21 0.8,2.06c0,0.86 -0.24,1.58 -0.73,2.13c-0.47,0.55 -1.12,0.93 -1.95,1.14l-0.48,0.09l-0.53,0.03l-0.6,0.05l-1.79,0l-0.73,4.14l-1.58,0zm2.57,-5.57l1.74,0c0.76,0 1.35,-0.17 1.78,-0.5c0.44,-0.35 0.65,-0.82 0.65,-1.42c0,-0.48 -0.15,-0.85 -0.44,-1.12c-0.3,-0.28 -0.77,-0.42 -1.42,-0.42l-1.7,0l-0.61,3.46z' fill='white' id='svg_2'/%3E%3C/g%3E%3C/svg%3E"
2275
+ },
2276
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/protocol/polling/",
2277
+ "category": {
2278
+ "id": "connectors",
2279
+ "name": "Connectors"
2280
+ },
2281
+ "appliesTo": ["bpmn:BoundaryEvent"],
2282
+ "elementType": {
2283
+ "value": "bpmn:BoundaryEvent",
2284
+ "eventDefinition": "bpmn:MessageEventDefinition"
2285
+ },
2286
+ "groups": [
2287
+ {
2288
+ "id": "authentication",
2289
+ "label": "Authentication"
2290
+ },
2291
+ {
2292
+ "id": "endpoint",
2293
+ "label": "HTTP Polling configuration"
2294
+ },
2295
+ {
2296
+ "id": "input",
2297
+ "label": "Payload"
2298
+ },
2299
+ {
2300
+ "id": "activation",
2301
+ "label": "Condition to proceed"
2302
+ },
2303
+ {
2304
+ "id": "timer",
2305
+ "label": "Timer"
2306
+ },
2307
+ {
2308
+ "id": "timeout",
2309
+ "label": "Connect timeout"
2310
+ },
2311
+ {
2312
+ "id": "variable-mapping",
2313
+ "label": "Response mapping"
2314
+ }
2315
+ ],
2316
+ "properties": [
2317
+ {
2318
+ "type": "Hidden",
2319
+ "value": "io.camunda:http-polling:1",
2320
+ "binding": {
2321
+ "type": "zeebe:property",
2322
+ "name": "inbound.type"
2323
+ }
2324
+ },
2325
+ {
2326
+ "type": "Hidden",
2327
+ "generatedValue": {
2328
+ "type": "uuid"
2329
+ },
2330
+ "binding": {
2331
+ "type": "bpmn:Message#property",
2332
+ "name": "name"
2333
+ }
2334
+ },
2335
+ {
2336
+ "label": "Type",
2337
+ "id": "authenticationType",
2338
+ "group": "authentication",
2339
+ "description": "Choose the authentication type. Select 'None' if no authentication is necessary",
2340
+ "value": "noAuth",
2341
+ "type": "Dropdown",
2342
+ "choices": [
2343
+ {
2344
+ "name": "None",
2345
+ "value": "noAuth"
2346
+ },
2347
+ {
2348
+ "name": "Basic",
2349
+ "value": "basic"
2350
+ },
2351
+ {
2352
+ "name": "Bearer token",
2353
+ "value": "bearer"
2354
+ },
2355
+ {
2356
+ "name": "OAuth 2.0",
2357
+ "value": "oauth-client-credentials-flow"
2358
+ }
2359
+ ],
2360
+ "binding": {
2361
+ "type": "zeebe:property",
2362
+ "name": "authentication.type"
2363
+ }
2364
+ },
2365
+ {
2366
+ "id": "method",
2367
+ "label": "Method",
2368
+ "group": "endpoint",
2369
+ "type": "Dropdown",
2370
+ "value": "get",
2371
+ "choices": [
2372
+ {
2373
+ "name": "GET",
2374
+ "value": "get"
2375
+ },
2376
+ {
2377
+ "name": "POST",
2378
+ "value": "post"
2379
+ },
2380
+ {
2381
+ "name": "PATCH",
2382
+ "value": "patch"
2383
+ },
2384
+ {
2385
+ "name": "PUT",
2386
+ "value": "put"
2387
+ },
2388
+ {
2389
+ "name": "DELETE",
2390
+ "value": "delete"
2391
+ }
2392
+ ],
2393
+ "binding": {
2394
+ "type": "zeebe:property",
2395
+ "name": "method"
2396
+ }
2397
+ },
2398
+ {
2399
+ "label": "URL",
2400
+ "group": "endpoint",
2401
+ "type": "String",
2402
+ "feel": "optional",
2403
+ "binding": {
2404
+ "type": "zeebe:property",
2405
+ "name": "url"
2406
+ },
2407
+ "constraints": {
2408
+ "notEmpty": true,
2409
+ "pattern": {
2410
+ "value": "^(=|(https?://|secrets\\..+|\\{\\{secrets\\..+\\}\\}).*$)",
2411
+ "message": "must be a http(s) URL"
2412
+ }
2413
+ }
2414
+ },
2415
+ {
2416
+ "label": "Query parameters",
2417
+ "description": "Map of query parameters to add to the request URL",
2418
+ "group": "endpoint",
2419
+ "type": "Text",
2420
+ "feel": "required",
2421
+ "binding": {
2422
+ "type": "zeebe:property",
2423
+ "name": "queryParameters"
2424
+ },
2425
+ "optional": true
2426
+ },
2427
+ {
2428
+ "label": "HTTP headers",
2429
+ "description": "Map of HTTP headers to add to the request",
2430
+ "group": "endpoint",
2431
+ "type": "Text",
2432
+ "feel": "required",
2433
+ "binding": {
2434
+ "type": "zeebe:property",
2435
+ "name": "headers"
2436
+ },
2437
+ "optional": true
2438
+ },
2439
+ {
2440
+ "label": "Interval",
2441
+ "description": "The delay between HTTP requests, defined as ISO 8601 durations format. <a href='https://docs.camunda.io/docs/components/modeler/bpmn/timer-events/#time-duration' target='_blank'>How to configure a time duration</a>",
2442
+ "group": "endpoint",
2443
+ "type": "String",
2444
+ "feel": "optional",
2445
+ "value": "PT50S",
2446
+ "binding": {
2447
+ "type": "zeebe:property",
2448
+ "name": "httpRequestInterval"
2449
+ },
2450
+ "constraints": {
2451
+ "notEmpty": true,
2452
+ "pattern": {
2453
+ "value": "^=|P(?=\\d|T\\d)(?:\\d+Y)?(?:\\d+M)?(?:\\d+W)?(?:\\d+D)?(?:T(?:\\d+H)?(?:\\d+M)?(?:\\d+(?:\\.\\d{1,3})?S)?)$",
2454
+ "message": "value must be defined"
2455
+ }
2456
+ },
2457
+ "optional": false
2458
+ },
2459
+ {
2460
+ "group": "endpoint",
2461
+ "type": "Hidden",
2462
+ "value": "PT5S",
2463
+ "binding": {
2464
+ "type": "zeebe:property",
2465
+ "name": "operatePollingInterval"
2466
+ },
2467
+ "optional": true
2468
+ },
2469
+ {
2470
+ "label": "Bearer token",
2471
+ "group": "authentication",
2472
+ "type": "String",
2473
+ "feel": "optional",
2474
+ "binding": {
2475
+ "type": "zeebe:property",
2476
+ "name": "authentication.token"
2477
+ },
2478
+ "constraints": {
2479
+ "notEmpty": true
2480
+ },
2481
+ "condition": {
2482
+ "property": "authenticationType",
2483
+ "equals": "bearer"
2484
+ }
2485
+ },
2486
+ {
2487
+ "label": "OAuth token endpoint",
2488
+ "description": "The OAuth token endpoint",
2489
+ "group": "authentication",
2490
+ "type": "String",
2491
+ "feel": "optional",
2492
+ "binding": {
2493
+ "type": "zeebe:property",
2494
+ "name": "authentication.oauthTokenEndpoint"
2495
+ },
2496
+ "constraints": {
2497
+ "notEmpty": true
2498
+ },
2499
+ "condition": {
2500
+ "property": "authenticationType",
2501
+ "equals": "oauth-client-credentials-flow"
2502
+ }
2503
+ },
2504
+ {
2505
+ "label": "Client ID",
2506
+ "description": "Your application's client ID from the OAuth client",
2507
+ "group": "authentication",
2508
+ "type": "String",
2509
+ "feel": "optional",
2510
+ "binding": {
2511
+ "type": "zeebe:property",
2512
+ "name": "authentication.clientId"
2513
+ },
2514
+ "constraints": {
2515
+ "notEmpty": true
2516
+ },
2517
+ "condition": {
2518
+ "property": "authenticationType",
2519
+ "equals": "oauth-client-credentials-flow"
2520
+ }
2521
+ },
2522
+ {
2523
+ "label": "Client secret",
2524
+ "description": "Your application's client secret from the OAuth client",
2525
+ "group": "authentication",
2526
+ "type": "String",
2527
+ "feel": "optional",
2528
+ "binding": {
2529
+ "type": "zeebe:property",
2530
+ "name": "authentication.clientSecret"
2531
+ },
2532
+ "constraints": {
2533
+ "notEmpty": true
2534
+ },
2535
+ "condition": {
2536
+ "property": "authenticationType",
2537
+ "equals": "oauth-client-credentials-flow"
2538
+ }
2539
+ },
2540
+ {
2541
+ "label": "Scopes",
2542
+ "description": "The scopes which you want to request authorization for (e.g.read:contacts)",
2543
+ "group": "authentication",
2544
+ "type": "String",
2545
+ "feel": "optional",
2546
+ "optional": true,
2547
+ "binding": {
2548
+ "type": "zeebe:property",
2549
+ "name": "authentication.scopes"
2550
+ },
2551
+ "condition": {
2552
+ "property": "authenticationType",
2553
+ "equals": "oauth-client-credentials-flow"
2554
+ }
2555
+ },
2556
+ {
2557
+ "label": "Audience",
2558
+ "description": "The unique identifier of the target API you want to access",
2559
+ "group": "authentication",
2560
+ "type": "String",
2561
+ "feel": "optional",
2562
+ "optional": true,
2563
+ "binding": {
2564
+ "type": "zeebe:property",
2565
+ "name": "authentication.audience"
2566
+ },
2567
+ "condition": {
2568
+ "property": "authenticationType",
2569
+ "equals": "oauth-client-credentials-flow"
2570
+ }
2571
+ },
2572
+ {
2573
+ "label": "Client authentication",
2574
+ "id": "authentication.clientAuthentication",
2575
+ "group": "authentication",
2576
+ "description": "Send client ID and client secret as Basic Auth request in the header, or as client credentials in the request body",
2577
+ "value": "basicAuthHeader",
2578
+ "type": "Dropdown",
2579
+ "choices": [
2580
+ {
2581
+ "name": "Send client credentials in body",
2582
+ "value": "credentialsBody"
2583
+ },
2584
+ {
2585
+ "name": "Send as Basic Auth header",
2586
+ "value": "basicAuthHeader"
2587
+ }
2588
+ ],
2589
+ "binding": {
2590
+ "type": "zeebe:property",
2591
+ "name": "authentication.clientAuthentication"
2592
+ },
2593
+ "condition": {
2594
+ "property": "authenticationType",
2595
+ "equals": "oauth-client-credentials-flow"
2596
+ }
2597
+ },
2598
+ {
2599
+ "label": "Username",
2600
+ "group": "authentication",
2601
+ "type": "String",
2602
+ "feel": "optional",
2603
+ "binding": {
2604
+ "type": "zeebe:property",
2605
+ "name": "authentication.username"
2606
+ },
2607
+ "constraints": {
2608
+ "notEmpty": true
2609
+ },
2610
+ "condition": {
2611
+ "property": "authenticationType",
2612
+ "equals": "basic"
2613
+ }
2614
+ },
2615
+ {
2616
+ "label": "Password",
2617
+ "group": "authentication",
2618
+ "type": "String",
2619
+ "feel": "optional",
2620
+ "binding": {
2621
+ "type": "zeebe:property",
2622
+ "name": "authentication.password"
2623
+ },
2624
+ "constraints": {
2625
+ "notEmpty": true
2626
+ },
2627
+ "condition": {
2628
+ "property": "authenticationType",
2629
+ "equals": "basic"
2630
+ }
2631
+ },
2632
+ {
2633
+ "label": "Request body",
2634
+ "description": "Payload to send with the request",
2635
+ "group": "input",
2636
+ "type": "Text",
2637
+ "feel": "optional",
2638
+ "binding": {
2639
+ "type": "zeebe:property",
2640
+ "name": "body"
2641
+ },
2642
+ "condition": {
2643
+ "property": "method",
2644
+ "oneOf": ["post", "put", "patch"]
2645
+ },
2646
+ "optional": true
2647
+ },
2648
+ {
2649
+ "label": "Correlation key (process)",
2650
+ "type": "String",
2651
+ "group": "activation",
2652
+ "feel": "required",
2653
+ "description": "Sets up the correlation key from process variables",
2654
+ "binding": {
2655
+ "type": "bpmn:Message#zeebe:subscription#property",
2656
+ "name": "correlationKey"
2657
+ },
2658
+ "constraints": {
2659
+ "notEmpty": true
2660
+ }
2661
+ },
2662
+ {
2663
+ "label": "Correlation key (payload)",
2664
+ "type": "String",
2665
+ "group": "activation",
2666
+ "feel": "required",
2667
+ "binding": {
2668
+ "type": "zeebe:property",
2669
+ "name": "correlationKeyExpression"
2670
+ },
2671
+ "description": "Extracts the correlation key from the incoming message payload",
2672
+ "constraints": {
2673
+ "notEmpty": true
2674
+ }
2675
+ },
2676
+ {
2677
+ "label": "Condition",
2678
+ "type": "String",
2679
+ "group": "activation",
2680
+ "feel": "required",
2681
+ "optional": true,
2682
+ "binding": {
2683
+ "type": "zeebe:property",
2684
+ "name": "activationCondition"
2685
+ },
2686
+ "description": "Condition under which the connector triggers. Leave empty to catch all events. <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>"
2687
+ },
2688
+ {
2689
+ "label": "Connection timeout",
2690
+ "description": "Sets the timeout in seconds to establish a connection or 0 for an infinite timeout",
2691
+ "group": "endpoint",
2692
+ "type": "String",
2693
+ "value": "20",
2694
+ "binding": {
2695
+ "type": "zeebe:property",
2696
+ "name": "connectionTimeoutInSeconds"
2697
+ },
2698
+ "optional": true,
2699
+ "feel": "optional",
2700
+ "constraints": {
2701
+ "notEmpty": false,
2702
+ "pattern": {
2703
+ "value": "^(=|([0-9]+|secrets\\..+|\\{\\{secrets\\..+\\}\\})$)",
2704
+ "message": "must be a timeout in seconds (default value is 20 seconds) or a FEEL expression"
2705
+ }
2706
+ }
2707
+ },
2708
+ {
2709
+ "label": "Result variable",
2710
+ "type": "String",
2711
+ "group": "variable-mapping",
2712
+ "optional": true,
2713
+ "binding": {
2714
+ "type": "zeebe:property",
2715
+ "name": "resultVariable"
2716
+ },
2717
+ "description": "Name of variable to store the result of the connector in"
2718
+ },
2719
+ {
2720
+ "label": "Result expression",
2721
+ "type": "String",
2722
+ "group": "variable-mapping",
2723
+ "feel": "required",
2724
+ "optional": true,
2725
+ "binding": {
2726
+ "type": "zeebe:property",
2727
+ "name": "resultExpression"
2728
+ },
2729
+ "description": "Expression to map the inbound payload to process variables"
2730
+ }
2731
+ ],
2732
+ "engines": {
2733
+ "camunda": "^8.3"
2734
+ }
2059
2735
  }
2060
2736
  ]