@camunda/connectors-element-templates 1.0.18 → 1.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/package.json +1 -1
  2. package/src/element-templates/agenticai-a2a-client-outbound-connector.json +2 -2
  3. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-intermediate.json +2 -2
  4. package/src/element-templates/agenticai-a2a-client-polling-inbound-connector-receive.json +2 -2
  5. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-intermediate.json +2 -2
  6. package/src/element-templates/agenticai-a2a-client-webhook-inbound-connector-receive.json +2 -2
  7. package/src/element-templates/agenticai-adhoctoolsschema-outbound-connector.json +22 -22
  8. package/src/element-templates/agenticai-aiagent-job-worker.json +240 -240
  9. package/src/element-templates/agenticai-aiagent-outbound-connector.json +3735 -3735
  10. package/src/element-templates/agenticai-mcp-client-outbound-connector.json +550 -550
  11. package/src/element-templates/agenticai-mcp-remote-client-outbound-connector.json +733 -733
  12. package/src/element-templates/asana-connector.json +116 -116
  13. package/src/element-templates/automation-anywhere-outbound-connector.json +665 -665
  14. package/src/element-templates/aws-bedrock-outbound-connector.json +431 -431
  15. package/src/element-templates/aws-dynamodb-outbound-connector.json +1337 -1337
  16. package/src/element-templates/aws-eventbridge-connector-boundary.json +37 -37
  17. package/src/element-templates/aws-eventbridge-connector-intermediate.json +77 -77
  18. package/src/element-templates/aws-eventbridge-connector-message-start.json +21 -21
  19. package/src/element-templates/aws-eventbridge-connector-receive.json +6 -6
  20. package/src/element-templates/aws-eventbridge-outbound-connector.json +229 -229
  21. package/src/element-templates/aws-lambda-outbound-connector.json +278 -278
  22. package/src/element-templates/aws-s3-outbound-connector.json +244 -244
  23. package/src/element-templates/aws-sagemaker-outbound-connector.json +58 -58
  24. package/src/element-templates/aws-sns-inbound-boundary.json +224 -224
  25. package/src/element-templates/aws-sns-inbound-intermediate.json +329 -329
  26. package/src/element-templates/aws-sns-inbound-message-start.json +357 -357
  27. package/src/element-templates/aws-sns-inbound-start-event.json +135 -135
  28. package/src/element-templates/aws-sns-outbound-connector.json +293 -293
  29. package/src/element-templates/aws-sqs-boundary-connector.json +890 -890
  30. package/src/element-templates/aws-sqs-inbound-intermediate-connector.json +529 -529
  31. package/src/element-templates/aws-sqs-outbound-connector.json +573 -573
  32. package/src/element-templates/aws-sqs-start-event-connector.json +408 -408
  33. package/src/element-templates/aws-sqs-start-message.json +488 -488
  34. package/src/element-templates/aws-textract-outbound-connector.json +275 -275
  35. package/src/element-templates/azure-blobstorage-outbound-connector.json +200 -200
  36. package/src/element-templates/azure-open-ai-connector.json +48 -48
  37. package/src/element-templates/blue-prism-connector.json +101 -101
  38. package/src/element-templates/csv-outbound-connector.json +44 -44
  39. package/src/element-templates/easy-post-connector.json +216 -216
  40. package/src/element-templates/email-inbound-connector-boundary.json +37 -37
  41. package/src/element-templates/email-inbound-connector-intermediate.json +37 -37
  42. package/src/element-templates/email-message-start-event-connector.json +63 -63
  43. package/src/element-templates/email-outbound-connector.json +902 -902
  44. package/src/element-templates/embeddings-vector-database-outbound-connector.json +520 -520
  45. package/src/element-templates/github-connector.json +10272 -10272
  46. package/src/element-templates/github-webhook-connector-intermediate.json +41 -41
  47. package/src/element-templates/github-webhook-connector-message-start.json +19 -19
  48. package/src/element-templates/github-webhook-connector-start-event.json +54 -54
  49. package/src/element-templates/gitlab-connector.json +2854 -2854
  50. package/src/element-templates/google-cloud-storage-outbound-connector.json +200 -200
  51. package/src/element-templates/google-drive-outbound-connector.json +1139 -1139
  52. package/src/element-templates/google-gemini-outbound-connector.json +122 -122
  53. package/src/element-templates/google-maps-platform-connector.json +94 -94
  54. package/src/element-templates/google-sheets-outbound-connector.json +2455 -2455
  55. package/src/element-templates/graphql-outbound-connector.json +1814 -1814
  56. package/src/element-templates/http-json-connector.json +2221 -2221
  57. package/src/element-templates/http-polling-boundary-catch-event-connector.json +766 -766
  58. package/src/element-templates/http-polling-connector.json +1510 -1510
  59. package/src/element-templates/hubspot-outbound-connector.json +65 -65
  60. package/src/element-templates/hugging-face-connector.json +122 -122
  61. package/src/element-templates/jdbc-outbound-connector.json +67 -67
  62. package/src/element-templates/kafka-inbound-connector-boundary.json +130 -130
  63. package/src/element-templates/kafka-inbound-connector-intermediate.json +1371 -1371
  64. package/src/element-templates/kafka-inbound-connector-start-message.json +166 -166
  65. package/src/element-templates/kafka-outbound-connector.json +250 -250
  66. package/src/element-templates/microsoft-office365-mail-connector.json +77 -77
  67. package/src/element-templates/microsoft-teams-outbound-connector.json +4124 -4124
  68. package/src/element-templates/openai-connector.json +199 -199
  69. package/src/element-templates/operate-connector.json +144 -144
  70. package/src/element-templates/power-automate-connector.json +62 -62
  71. package/src/element-templates/rabbitmq-inbound-connector-boundary.json +454 -454
  72. package/src/element-templates/rabbitmq-inbound-connector-intermediate.json +895 -895
  73. package/src/element-templates/rabbitmq-inbound-connector-message-start.json +458 -458
  74. package/src/element-templates/rabbitmq-inbound-connector-start-event.json +610 -610
  75. package/src/element-templates/rabbitmq-outbound-connector.json +662 -662
  76. package/src/element-templates/rpa-connector.json +5 -5
  77. package/src/element-templates/salesforce-connector.json +60 -60
  78. package/src/element-templates/sendgrid-outbound-connector.json +1301 -1301
  79. package/src/element-templates/servicenow-connector.json +6 -6
  80. package/src/element-templates/servicenow-incident-connector.json +6 -6
  81. package/src/element-templates/slack-inbound-boundary.json +305 -305
  82. package/src/element-templates/slack-inbound-intermediate.json +363 -363
  83. package/src/element-templates/slack-inbound-message-start.json +286 -286
  84. package/src/element-templates/slack-inbound-receive.json +23 -23
  85. package/src/element-templates/slack-inbound-start-event.json +301 -301
  86. package/src/element-templates/slack-outbound-connector.json +2249 -2249
  87. package/src/element-templates/twilio-connector.json +366 -366
  88. package/src/element-templates/twilio-webhook-boundary-connector.json +37 -37
  89. package/src/element-templates/twilio-webhook-connector.json +36 -36
  90. package/src/element-templates/twilio-webhook-intermediate-connector.json +59 -59
  91. package/src/element-templates/twilio-webhook-message-start-connector.json +42 -42
  92. package/src/element-templates/uipath-connector.json +54 -54
  93. package/src/element-templates/webhook-connector-boundary.json +1238 -1238
  94. package/src/element-templates/webhook-connector-intermediate.json +1254 -1254
  95. package/src/element-templates/webhook-connector-receive.json +61 -61
  96. package/src/element-templates/webhook-connector-start-event.json +1419 -1419
  97. package/src/element-templates/webhook-connector-start-message.json +1289 -1289
  98. package/src/element-templates/whatsapp-connector.json +21 -21
@@ -3,18 +3,9 @@
3
3
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
4
4
  "name": "Google Drive Outbound Connector",
5
5
  "id": "io.camunda.connectors.GoogleDrive.v1",
6
- "description": "Manage Google Drive files and folders",
7
- "keywords": [
8
- "create file",
9
- "create file from template",
10
- "create folder",
11
- "upload file",
12
- "download file",
13
- "file storage",
14
- "document management"
15
- ],
6
+ "description": "Create folder or a file from template",
16
7
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/googledrive/",
17
- "version": 6,
8
+ "version": 3,
18
9
  "category": {
19
10
  "id": "connectors",
20
11
  "name": "Connectors"
@@ -23,9 +14,6 @@
23
14
  "elementType": {
24
15
  "value": "bpmn:ServiceTask"
25
16
  },
26
- "engines": {
27
- "camunda": "^8.10"
28
- },
29
17
  "groups": [
30
18
  {
31
19
  "id": "authentication",
@@ -39,10 +27,6 @@
39
27
  "id": "operationDetails",
40
28
  "label": "Operation details"
41
29
  },
42
- {
43
- "id": "connector",
44
- "label": "Connector"
45
- },
46
30
  {
47
31
  "id": "output",
48
32
  "label": "Output mapping"
@@ -196,14 +180,6 @@
196
180
  {
197
181
  "name": "Create file from template",
198
182
  "value": "file"
199
- },
200
- {
201
- "name": "Upload file",
202
- "value": "upload"
203
- },
204
- {
205
- "name": "Download file",
206
- "value": "download"
207
183
  }
208
184
  ]
209
185
  },
@@ -220,11 +196,6 @@
220
196
  "name": "resource.name",
221
197
  "type": "zeebe:input"
222
198
  },
223
- "condition": {
224
- "property": "resource.type",
225
- "oneOf": ["folder", "file"],
226
- "type": "simple"
227
- },
228
199
  "type": "String"
229
200
  },
230
201
  {
@@ -238,11 +209,6 @@
238
209
  "name": "resource.parent",
239
210
  "type": "zeebe:input"
240
211
  },
241
- "condition": {
242
- "property": "resource.type",
243
- "oneOf": ["folder", "file", "upload"],
244
- "type": "simple"
245
- },
246
212
  "type": "String"
247
213
  },
248
214
  {
@@ -300,218 +266,403 @@
300
266
  "type": "String"
301
267
  },
302
268
  {
303
- "id": "resource.downloadData.fileId",
304
- "label": "File ID",
305
- "optional": false,
306
- "constraints": {
307
- "notEmpty": true
269
+ "id": "resultVariable",
270
+ "label": "Result variable",
271
+ "description": "Name of variable to store the response in",
272
+ "group": "output",
273
+ "binding": {
274
+ "key": "resultVariable",
275
+ "type": "zeebe:taskHeader"
276
+ },
277
+ "type": "String"
278
+ },
279
+ {
280
+ "id": "resultExpression",
281
+ "label": "Result expression",
282
+ "description": "Expression to map the response into process variables",
283
+ "feel": "required",
284
+ "group": "output",
285
+ "binding": {
286
+ "key": "resultExpression",
287
+ "type": "zeebe:taskHeader"
288
+ },
289
+ "type": "Text"
290
+ },
291
+ {
292
+ "id": "errorExpression",
293
+ "label": "Error expression",
294
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
295
+ "feel": "required",
296
+ "group": "error",
297
+ "binding": {
298
+ "key": "errorExpression",
299
+ "type": "zeebe:taskHeader"
308
300
  },
301
+ "type": "Text"
302
+ },
303
+ {
304
+ "id": "retryCount",
305
+ "label": "Retries",
306
+ "description": "Number of retries",
307
+ "value": "3",
309
308
  "feel": "optional",
310
- "group": "operationDetails",
309
+ "group": "retries",
311
310
  "binding": {
312
- "name": "resource.downloadData.fileId",
313
- "type": "zeebe:input"
311
+ "property": "retries",
312
+ "type": "zeebe:taskDefinition"
314
313
  },
315
- "condition": {
316
- "property": "resource.type",
317
- "equals": "download",
318
- "type": "simple"
314
+ "type": "String"
315
+ },
316
+ {
317
+ "id": "retryBackoff",
318
+ "label": "Retry backoff",
319
+ "description": "ISO-8601 duration to wait between retries",
320
+ "value": "PT0S",
321
+ "feel": "optional",
322
+ "group": "retries",
323
+ "binding": {
324
+ "key": "retryBackoff",
325
+ "type": "zeebe:taskHeader"
319
326
  },
320
327
  "type": "String"
328
+ }
329
+ ],
330
+ "icon": {
331
+ "contents": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgODcuMyA3OCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxwYXRoIGQ9Im02LjYgNjYuODUgMy44NSA2LjY1Yy44IDEuNCAxLjk1IDIuNSAzLjMgMy4zbDEzLjc1LTIzLjhoLTI3LjVjMCAxLjU1LjQgMy4xIDEuMiA0LjV6IiBmaWxsPSIjMDA2NmRhIi8+Cgk8cGF0aCBkPSJtNDMuNjUgMjUtMTMuNzUtMjMuOGMtMS4zNS44LTIuNSAxLjktMy4zIDMuM2wtMjUuNCA0NGE5LjA2IDkuMDYgMCAwIDAgLTEuMiA0LjVoMjcuNXoiIGZpbGw9IiMwMGFjNDciLz4KCTxwYXRoIGQ9Im03My41NSA3Ni44YzEuMzUtLjggMi41LTEuOSAzLjMtMy4zbDEuNi0yLjc1IDcuNjUtMTMuMjVjLjgtMS40IDEuMi0yLjk1IDEuMi00LjVoLTI3LjUwMmw1Ljg1MiAxMS41eiIgZmlsbD0iI2VhNDMzNSIvPgoJPHBhdGggZD0ibTQzLjY1IDI1IDEzLjc1LTIzLjhjLTEuMzUtLjgtMi45LTEuMi00LjUtMS4yaC0xOC41Yy0xLjYgMC0zLjE1LjQ1LTQuNSAxLjJ6IiBmaWxsPSIjMDA4MzJkIi8+Cgk8cGF0aCBkPSJtNTkuOCA1M2gtMzIuM2wtMTMuNzUgMjMuOGMxLjM1LjggMi45IDEuMiA0LjUgMS4yaDUwLjhjMS42IDAgMy4xNS0uNDUgNC41LTEuMnoiIGZpbGw9IiMyNjg0ZmMiLz4KCTxwYXRoIGQ9Im03My40IDI2LjUtMTIuNy0yMmMtLjgtMS40LTEuOTUtMi41LTMuMy0zLjNsLTEzLjc1IDIzLjggMTYuMTUgMjhoMjcuNDVjMC0xLjU1LS40LTMuMS0xLjItNC41eiIgZmlsbD0iI2ZmYmEwMCIvPgo8L3N2Zz4="
332
+ },
333
+ "engines": {
334
+ "camunda": "^8.5"
335
+ }
336
+ },
337
+ {
338
+ "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
339
+ "name": "Google Drive Outbound Connector",
340
+ "id": "io.camunda.connectors.GoogleDrive.v1",
341
+ "description": "Manage Google Drive files and folders",
342
+ "keywords": [
343
+ "create file",
344
+ "create file from template",
345
+ "create folder",
346
+ "upload file",
347
+ "download file",
348
+ "file storage",
349
+ "document management"
350
+ ],
351
+ "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/googledrive/",
352
+ "version": 5,
353
+ "category": {
354
+ "id": "connectors",
355
+ "name": "Connectors"
356
+ },
357
+ "appliesTo": ["bpmn:Task"],
358
+ "elementType": {
359
+ "value": "bpmn:ServiceTask"
360
+ },
361
+ "engines": {
362
+ "camunda": "^8.3"
363
+ },
364
+ "groups": [
365
+ {
366
+ "id": "authentication",
367
+ "label": "Authentication"
321
368
  },
322
369
  {
323
- "id": "resource.uploadData.document_documentSource",
324
- "label": "Document source",
325
- "description": "Upload camunda document, <a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">see documentation</a>",
326
- "value": "camunda",
327
- "group": "operationDetails",
370
+ "id": "operation",
371
+ "label": "Select operation"
372
+ },
373
+ {
374
+ "id": "operationDetails",
375
+ "label": "Operation details"
376
+ },
377
+ {
378
+ "id": "connector",
379
+ "label": "Connector"
380
+ },
381
+ {
382
+ "id": "output",
383
+ "label": "Output mapping"
384
+ },
385
+ {
386
+ "id": "error",
387
+ "label": "Error handling"
388
+ },
389
+ {
390
+ "id": "retries",
391
+ "label": "Retries"
392
+ }
393
+ ],
394
+ "properties": [
395
+ {
396
+ "value": "io.camunda:google-drive:1",
328
397
  "binding": {
329
- "name": "resource.uploadData.document_documentSource",
330
- "type": "zeebe:input"
398
+ "property": "type",
399
+ "type": "zeebe:taskDefinition"
331
400
  },
332
- "condition": {
333
- "property": "resource.type",
334
- "equals": "upload",
335
- "type": "simple"
401
+ "type": "Hidden"
402
+ },
403
+ {
404
+ "id": "authentication.authType",
405
+ "label": "Type",
406
+ "optional": false,
407
+ "value": "refresh",
408
+ "constraints": {
409
+ "notEmpty": true
410
+ },
411
+ "group": "authentication",
412
+ "binding": {
413
+ "name": "authentication.authType",
414
+ "type": "zeebe:input"
336
415
  },
337
416
  "type": "Dropdown",
338
417
  "choices": [
339
418
  {
340
- "name": "Camunda Document",
341
- "value": "camunda"
342
- },
343
- {
344
- "name": "Inline Content",
345
- "value": "inline"
419
+ "name": "Bearer token",
420
+ "value": "bearer"
346
421
  },
347
422
  {
348
- "name": "From URL",
349
- "value": "external"
423
+ "name": "Refresh token",
424
+ "value": "refresh"
350
425
  }
351
426
  ]
352
427
  },
353
428
  {
354
- "id": "resource.uploadData.document_camundaReference",
355
- "label": "Camunda document",
429
+ "id": "authentication.bearerToken",
430
+ "label": "Bearer token",
431
+ "description": "Enter a valid Google API Bearer token",
432
+ "optional": false,
356
433
  "constraints": {
357
434
  "notEmpty": true
358
435
  },
359
- "feel": "required",
360
- "group": "operationDetails",
436
+ "feel": "optional",
437
+ "group": "authentication",
361
438
  "binding": {
362
- "name": "resource.uploadData.document_camundaReference",
439
+ "name": "authentication.bearerToken",
363
440
  "type": "zeebe:input"
364
441
  },
365
442
  "condition": {
366
- "allMatch": [
367
- {
368
- "property": "resource.type",
369
- "equals": "upload",
370
- "type": "simple"
371
- },
372
- {
373
- "property": "resource.uploadData.document_documentSource",
374
- "equals": "camunda",
375
- "type": "simple"
376
- }
377
- ]
443
+ "property": "authentication.authType",
444
+ "equals": "bearer",
445
+ "type": "simple"
378
446
  },
379
447
  "type": "String"
380
448
  },
381
449
  {
382
- "id": "resource.uploadData.document_inline_content",
383
- "label": "Content",
450
+ "id": "authentication.oauthClientId",
451
+ "label": "Client ID",
452
+ "description": "Enter Google API Client ID",
453
+ "optional": false,
384
454
  "constraints": {
385
455
  "notEmpty": true
386
456
  },
387
457
  "feel": "optional",
388
- "group": "operationDetails",
458
+ "group": "authentication",
389
459
  "binding": {
390
- "name": "resource.uploadData.document_inline_content",
460
+ "name": "authentication.oauthClientId",
391
461
  "type": "zeebe:input"
392
462
  },
393
463
  "condition": {
394
- "allMatch": [
395
- {
396
- "property": "resource.type",
397
- "equals": "upload",
398
- "type": "simple"
399
- },
400
- {
401
- "property": "resource.uploadData.document_documentSource",
402
- "equals": "inline",
403
- "type": "simple"
404
- }
405
- ]
464
+ "property": "authentication.authType",
465
+ "equals": "refresh",
466
+ "type": "simple"
406
467
  },
407
468
  "type": "String"
408
469
  },
409
470
  {
410
- "id": "resource.uploadData.document_inline_fileName",
411
- "label": "File name",
471
+ "id": "authentication.oauthClientSecret",
472
+ "label": "Client secret",
473
+ "description": "Enter Google API client Secret",
474
+ "optional": false,
475
+ "constraints": {
476
+ "notEmpty": true
477
+ },
478
+ "feel": "optional",
479
+ "group": "authentication",
480
+ "binding": {
481
+ "name": "authentication.oauthClientSecret",
482
+ "type": "zeebe:input"
483
+ },
484
+ "condition": {
485
+ "property": "authentication.authType",
486
+ "equals": "refresh",
487
+ "type": "simple"
488
+ },
489
+ "type": "String"
490
+ },
491
+ {
492
+ "id": "authentication.oauthRefreshToken",
493
+ "label": "Refresh token",
494
+ "description": "Enter a valid Google API refresh token",
495
+ "optional": false,
496
+ "constraints": {
497
+ "notEmpty": true
498
+ },
499
+ "feel": "optional",
500
+ "group": "authentication",
501
+ "binding": {
502
+ "name": "authentication.oauthRefreshToken",
503
+ "type": "zeebe:input"
504
+ },
505
+ "condition": {
506
+ "property": "authentication.authType",
507
+ "equals": "refresh",
508
+ "type": "simple"
509
+ },
510
+ "type": "String"
511
+ },
512
+ {
513
+ "id": "resource.type",
514
+ "label": "Operation",
515
+ "optional": false,
516
+ "value": "folder",
517
+ "constraints": {
518
+ "notEmpty": true
519
+ },
520
+ "group": "operation",
521
+ "binding": {
522
+ "name": "resource.type",
523
+ "type": "zeebe:input"
524
+ },
525
+ "type": "Dropdown",
526
+ "choices": [
527
+ {
528
+ "name": "Create folder",
529
+ "value": "folder"
530
+ },
531
+ {
532
+ "name": "Create file from template",
533
+ "value": "file"
534
+ },
535
+ {
536
+ "name": "Upload file",
537
+ "value": "upload"
538
+ },
539
+ {
540
+ "name": "Download file",
541
+ "value": "download"
542
+ }
543
+ ]
544
+ },
545
+ {
546
+ "id": "resource.name",
547
+ "label": "New resource name",
548
+ "optional": false,
549
+ "constraints": {
550
+ "notEmpty": true
551
+ },
412
552
  "feel": "optional",
413
553
  "group": "operationDetails",
414
554
  "binding": {
415
- "name": "resource.uploadData.document_inline_fileName",
555
+ "name": "resource.name",
416
556
  "type": "zeebe:input"
417
557
  },
418
558
  "condition": {
419
- "allMatch": [
420
- {
421
- "property": "resource.type",
422
- "equals": "upload",
423
- "type": "simple"
424
- },
425
- {
426
- "property": "resource.uploadData.document_documentSource",
427
- "equals": "inline",
428
- "type": "simple"
429
- }
430
- ]
559
+ "property": "resource.type",
560
+ "oneOf": ["folder", "file"],
561
+ "type": "simple"
431
562
  },
432
563
  "type": "String"
433
564
  },
434
565
  {
435
- "id": "resource.uploadData.document_inline_contentType",
436
- "label": "Content type",
566
+ "id": "resource.parent",
567
+ "label": "Parent folder ID",
568
+ "description": "Your resources will be created here. If left empty, a new resource will appear in the root folder",
569
+ "optional": true,
437
570
  "feel": "optional",
438
571
  "group": "operationDetails",
439
572
  "binding": {
440
- "name": "resource.uploadData.document_inline_contentType",
573
+ "name": "resource.parent",
441
574
  "type": "zeebe:input"
442
575
  },
443
576
  "condition": {
444
- "allMatch": [
445
- {
446
- "property": "resource.type",
447
- "equals": "upload",
448
- "type": "simple"
449
- },
450
- {
451
- "property": "resource.uploadData.document_documentSource",
452
- "equals": "inline",
453
- "type": "simple"
454
- }
455
- ]
577
+ "property": "resource.type",
578
+ "oneOf": ["folder", "file", "upload"],
579
+ "type": "simple"
456
580
  },
457
581
  "type": "String"
458
582
  },
459
583
  {
460
- "id": "resource.uploadData.document_external_url",
461
- "label": "URL",
584
+ "id": "resource.additionalGoogleDriveProperties",
585
+ "label": "Additional properties or metadata",
586
+ "optional": true,
587
+ "feel": "required",
588
+ "group": "operationDetails",
589
+ "binding": {
590
+ "name": "resource.additionalGoogleDriveProperties",
591
+ "type": "zeebe:input"
592
+ },
593
+ "condition": {
594
+ "property": "resource.type",
595
+ "equals": "folder",
596
+ "type": "simple"
597
+ },
598
+ "type": "String"
599
+ },
600
+ {
601
+ "id": "resource.template.id",
602
+ "label": "Template ID",
603
+ "optional": false,
462
604
  "constraints": {
463
605
  "notEmpty": true
464
606
  },
465
607
  "feel": "optional",
466
608
  "group": "operationDetails",
467
609
  "binding": {
468
- "name": "resource.uploadData.document_external_url",
610
+ "name": "resource.template.id",
469
611
  "type": "zeebe:input"
470
612
  },
471
613
  "condition": {
472
- "allMatch": [
473
- {
474
- "property": "resource.type",
475
- "equals": "upload",
476
- "type": "simple"
477
- },
478
- {
479
- "property": "resource.uploadData.document_documentSource",
480
- "equals": "external",
481
- "type": "simple"
482
- }
483
- ]
614
+ "property": "resource.type",
615
+ "equals": "file",
616
+ "type": "simple"
484
617
  },
485
618
  "type": "String"
486
619
  },
487
620
  {
488
- "id": "resource.uploadData.document_external_fileName",
489
- "label": "File name",
621
+ "id": "resource.template.variables",
622
+ "label": "Template variables",
623
+ "optional": false,
624
+ "feel": "required",
625
+ "group": "operationDetails",
626
+ "binding": {
627
+ "name": "resource.template.variables",
628
+ "type": "zeebe:input"
629
+ },
630
+ "condition": {
631
+ "property": "resource.type",
632
+ "equals": "file",
633
+ "type": "simple"
634
+ },
635
+ "type": "String"
636
+ },
637
+ {
638
+ "id": "resource.downloadData.fileId",
639
+ "label": "File ID",
640
+ "optional": false,
641
+ "constraints": {
642
+ "notEmpty": true
643
+ },
490
644
  "feel": "optional",
491
645
  "group": "operationDetails",
492
646
  "binding": {
493
- "name": "resource.uploadData.document_external_fileName",
647
+ "name": "resource.downloadData.fileId",
494
648
  "type": "zeebe:input"
495
649
  },
496
650
  "condition": {
497
- "allMatch": [
498
- {
499
- "property": "resource.type",
500
- "equals": "upload",
501
- "type": "simple"
502
- },
503
- {
504
- "property": "resource.uploadData.document_documentSource",
505
- "equals": "external",
506
- "type": "simple"
507
- }
508
- ]
651
+ "property": "resource.type",
652
+ "equals": "download",
653
+ "type": "simple"
509
654
  },
510
655
  "type": "String"
511
656
  },
512
657
  {
513
- "id": "resource.uploadData.document__composer",
514
- "value": "=if document_documentSource = \"camunda\" then document_camundaReference else if document_documentSource = \"inline\" then { \"camunda.document.type\": \"inline\", content: document_inline_content, name: document_inline_fileName, contentType: document_inline_contentType } else if document_documentSource = \"external\" then { \"camunda.document.type\": \"external\", url: document_external_url, name: document_external_fileName } else null",
658
+ "id": "resource.uploadData.document",
659
+ "label": "Document",
660
+ "description": "Upload camunda document, <a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">see documentation</a>",
661
+ "optional": false,
662
+ "constraints": {
663
+ "notEmpty": true
664
+ },
665
+ "feel": "required",
515
666
  "group": "operationDetails",
516
667
  "binding": {
517
668
  "name": "resource.uploadData.document",
@@ -522,13 +673,13 @@
522
673
  "equals": "upload",
523
674
  "type": "simple"
524
675
  },
525
- "type": "Hidden"
676
+ "type": "String"
526
677
  },
527
678
  {
528
679
  "id": "version",
529
680
  "label": "Version",
530
681
  "description": "Version of the element template",
531
- "value": "6",
682
+ "value": "5",
532
683
  "group": "connector",
533
684
  "binding": {
534
685
  "key": "elementTemplateVersion",
@@ -617,9 +768,12 @@
617
768
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
618
769
  "name": "Google Drive Outbound Connector",
619
770
  "id": "io.camunda.connectors.GoogleDrive.v1",
620
- "version": 2,
771
+ "description": "Manage Google Drive files and folders",
772
+ "metadata": {
773
+ "keywords": ["create file", "create file from template", "create folder"]
774
+ },
621
775
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/googledrive/",
622
- "description": "Create folder or a file from template",
776
+ "version": 4,
623
777
  "category": {
624
778
  "id": "connectors",
625
779
  "name": "Connectors"
@@ -628,6 +782,9 @@
628
782
  "elementType": {
629
783
  "value": "bpmn:ServiceTask"
630
784
  },
785
+ "engines": {
786
+ "camunda": "^8.3"
787
+ },
631
788
  "groups": [
632
789
  {
633
790
  "id": "authentication",
@@ -646,25 +803,37 @@
646
803
  "label": "Output mapping"
647
804
  },
648
805
  {
649
- "id": "errors",
806
+ "id": "error",
650
807
  "label": "Error handling"
808
+ },
809
+ {
810
+ "id": "retries",
811
+ "label": "Retries"
651
812
  }
652
813
  ],
653
814
  "properties": [
654
815
  {
655
- "type": "Hidden",
656
816
  "value": "io.camunda:google-drive:1",
657
817
  "binding": {
658
- "type": "zeebe:taskDefinition",
659
- "property": "type"
660
- }
818
+ "property": "type",
819
+ "type": "zeebe:taskDefinition"
820
+ },
821
+ "type": "Hidden"
661
822
  },
662
823
  {
663
- "id": "authenticationType",
824
+ "id": "authentication.authType",
664
825
  "label": "Type",
826
+ "optional": false,
827
+ "value": "refresh",
828
+ "constraints": {
829
+ "notEmpty": true
830
+ },
665
831
  "group": "authentication",
666
- "type": "Dropdown",
667
- "value": "bearer",
832
+ "binding": {
833
+ "name": "authentication.authType",
834
+ "type": "zeebe:input"
835
+ },
836
+ "type": "Dropdown",
668
837
  "choices": [
669
838
  {
670
839
  "name": "Bearer token",
@@ -674,86 +843,106 @@
674
843
  "name": "Refresh token",
675
844
  "value": "refresh"
676
845
  }
677
- ],
678
- "binding": {
679
- "type": "zeebe:input",
680
- "name": "authentication.authType",
681
- "key": "authentication.authType"
682
- }
846
+ ]
683
847
  },
684
848
  {
849
+ "id": "authentication.bearerToken",
685
850
  "label": "Bearer token",
686
- "description": "Enter Google API Bearer token that is authorized to interact with desired Drive",
687
- "group": "authentication",
688
- "type": "String",
689
- "binding": {
690
- "type": "zeebe:input",
691
- "name": "authentication.bearerToken"
692
- },
851
+ "description": "Enter a valid Google API Bearer token",
852
+ "optional": false,
693
853
  "constraints": {
694
854
  "notEmpty": true
695
855
  },
856
+ "feel": "optional",
857
+ "group": "authentication",
858
+ "binding": {
859
+ "name": "authentication.bearerToken",
860
+ "type": "zeebe:input"
861
+ },
696
862
  "condition": {
697
- "property": "authenticationType",
698
- "equals": "bearer"
699
- }
863
+ "property": "authentication.authType",
864
+ "equals": "bearer",
865
+ "type": "simple"
866
+ },
867
+ "type": "String"
700
868
  },
701
869
  {
870
+ "id": "authentication.oauthClientId",
702
871
  "label": "Client ID",
703
872
  "description": "Enter Google API Client ID",
704
- "group": "authentication",
705
- "type": "String",
706
- "binding": {
707
- "type": "zeebe:input",
708
- "name": "authentication.oauthClientId"
709
- },
873
+ "optional": false,
710
874
  "constraints": {
711
875
  "notEmpty": true
712
876
  },
877
+ "feel": "optional",
878
+ "group": "authentication",
879
+ "binding": {
880
+ "name": "authentication.oauthClientId",
881
+ "type": "zeebe:input"
882
+ },
713
883
  "condition": {
714
- "property": "authenticationType",
715
- "equals": "refresh"
716
- }
884
+ "property": "authentication.authType",
885
+ "equals": "refresh",
886
+ "type": "simple"
887
+ },
888
+ "type": "String"
717
889
  },
718
890
  {
891
+ "id": "authentication.oauthClientSecret",
719
892
  "label": "Client secret",
720
893
  "description": "Enter Google API client Secret",
721
- "group": "authentication",
722
- "type": "String",
723
- "binding": {
724
- "type": "zeebe:input",
725
- "name": "authentication.oauthClientSecret"
726
- },
894
+ "optional": false,
727
895
  "constraints": {
728
896
  "notEmpty": true
729
897
  },
898
+ "feel": "optional",
899
+ "group": "authentication",
900
+ "binding": {
901
+ "name": "authentication.oauthClientSecret",
902
+ "type": "zeebe:input"
903
+ },
730
904
  "condition": {
731
- "property": "authenticationType",
732
- "equals": "refresh"
733
- }
905
+ "property": "authentication.authType",
906
+ "equals": "refresh",
907
+ "type": "simple"
908
+ },
909
+ "type": "String"
734
910
  },
735
911
  {
912
+ "id": "authentication.oauthRefreshToken",
736
913
  "label": "Refresh token",
737
- "description": "Enter Google API refresh token that is authorized to interact with desired Drive",
738
- "group": "authentication",
739
- "type": "String",
740
- "binding": {
741
- "type": "zeebe:input",
742
- "name": "authentication.oauthRefreshToken"
743
- },
914
+ "description": "Enter a valid Google API refresh token",
915
+ "optional": false,
744
916
  "constraints": {
745
917
  "notEmpty": true
746
918
  },
919
+ "feel": "optional",
920
+ "group": "authentication",
921
+ "binding": {
922
+ "name": "authentication.oauthRefreshToken",
923
+ "type": "zeebe:input"
924
+ },
747
925
  "condition": {
748
- "property": "authenticationType",
749
- "equals": "refresh"
750
- }
926
+ "property": "authentication.authType",
927
+ "equals": "refresh",
928
+ "type": "simple"
929
+ },
930
+ "type": "String"
751
931
  },
752
932
  {
753
- "id": "resourceType",
933
+ "id": "resource.type",
934
+ "label": "Operation",
935
+ "optional": false,
936
+ "value": "folder",
937
+ "constraints": {
938
+ "notEmpty": true
939
+ },
754
940
  "group": "operation",
941
+ "binding": {
942
+ "name": "resource.type",
943
+ "type": "zeebe:input"
944
+ },
755
945
  "type": "Dropdown",
756
- "value": "folder",
757
946
  "choices": [
758
947
  {
759
948
  "name": "Create folder",
@@ -762,180 +951,222 @@
762
951
  {
763
952
  "name": "Create file from template",
764
953
  "value": "file"
954
+ },
955
+ {
956
+ "name": "Upload file",
957
+ "value": "upload"
958
+ },
959
+ {
960
+ "name": "Download file",
961
+ "value": "download"
765
962
  }
766
- ],
767
- "binding": {
768
- "type": "zeebe:input",
769
- "name": "resource.type",
770
- "key": "resource.type"
771
- }
963
+ ]
772
964
  },
773
965
  {
774
- "label": "File name",
775
- "description": "Enter name for your file",
776
- "group": "operationDetails",
777
- "type": "String",
778
- "feel": "optional",
779
- "binding": {
780
- "type": "zeebe:input",
781
- "name": "resource.name"
782
- },
966
+ "id": "resource.name",
967
+ "label": "New resource name",
968
+ "optional": false,
783
969
  "constraints": {
784
- "notEmpty": true,
785
- "maxLength": 255
970
+ "notEmpty": true
786
971
  },
787
- "condition": {
788
- "property": "resourceType",
789
- "equals": "file"
790
- }
791
- },
792
- {
793
- "label": "Folder name",
794
- "description": "Enter name for your folder",
795
- "group": "operationDetails",
796
- "type": "String",
797
972
  "feel": "optional",
973
+ "group": "operationDetails",
798
974
  "binding": {
799
- "type": "zeebe:input",
800
- "name": "resource.name"
801
- },
802
- "constraints": {
803
- "notEmpty": true,
804
- "maxLength": 255
975
+ "name": "resource.name",
976
+ "type": "zeebe:input"
805
977
  },
806
978
  "condition": {
807
- "property": "resourceType",
808
- "equals": "folder"
809
- }
979
+ "property": "resource.type",
980
+ "oneOf": ["folder", "file"],
981
+ "type": "simple"
982
+ },
983
+ "type": "String"
810
984
  },
811
985
  {
812
- "label": "Template ID",
813
- "description": "Enter ID of the template you are creating a file from",
814
- "group": "operationDetails",
815
- "type": "String",
986
+ "id": "resource.parent",
987
+ "label": "Parent folder ID",
988
+ "description": "Your resources will be created here. If left empty, a new resource will appear in the root folder",
989
+ "optional": true,
816
990
  "feel": "optional",
991
+ "group": "operationDetails",
817
992
  "binding": {
818
- "type": "zeebe:input",
819
- "name": "resource.template.id"
820
- },
821
- "constraints": {
822
- "notEmpty": true
993
+ "name": "resource.parent",
994
+ "type": "zeebe:input"
823
995
  },
824
996
  "condition": {
825
- "property": "resourceType",
826
- "equals": "file"
827
- }
997
+ "property": "resource.type",
998
+ "oneOf": ["folder", "file", "upload"],
999
+ "type": "simple"
1000
+ },
1001
+ "type": "String"
828
1002
  },
829
1003
  {
830
- "label": "Parent folder ID",
831
- "description": "Enter ID of the parent folder where new folder will be created",
832
- "group": "operationDetails",
833
- "type": "String",
834
- "feel": "optional",
1004
+ "id": "resource.additionalGoogleDriveProperties",
1005
+ "label": "Additional properties or metadata",
835
1006
  "optional": true,
1007
+ "feel": "required",
1008
+ "group": "operationDetails",
836
1009
  "binding": {
837
- "type": "zeebe:input",
838
- "name": "resource.parent"
1010
+ "name": "resource.additionalGoogleDriveProperties",
1011
+ "type": "zeebe:input"
839
1012
  },
840
1013
  "condition": {
841
- "property": "resourceType",
842
- "equals": "folder"
843
- }
1014
+ "property": "resource.type",
1015
+ "equals": "folder",
1016
+ "type": "simple"
1017
+ },
1018
+ "type": "String"
844
1019
  },
845
1020
  {
846
- "label": "Parent folder ID",
847
- "description": "Enter ID of the parent folder where new file will be created",
848
- "group": "operationDetails",
849
- "type": "String",
1021
+ "id": "resource.template.id",
1022
+ "label": "Template ID",
1023
+ "optional": false,
1024
+ "constraints": {
1025
+ "notEmpty": true
1026
+ },
850
1027
  "feel": "optional",
851
- "optional": true,
1028
+ "group": "operationDetails",
852
1029
  "binding": {
853
- "type": "zeebe:input",
854
- "name": "resource.parent"
1030
+ "name": "resource.template.id",
1031
+ "type": "zeebe:input"
855
1032
  },
856
1033
  "condition": {
857
- "property": "resourceType",
858
- "equals": "file"
859
- }
1034
+ "property": "resource.type",
1035
+ "equals": "file",
1036
+ "type": "simple"
1037
+ },
1038
+ "type": "String"
860
1039
  },
861
1040
  {
1041
+ "id": "resource.template.variables",
862
1042
  "label": "Template variables",
863
- "description": "Use this field to pass and update variables in your template as JSON",
864
- "group": "operationDetails",
865
- "type": "Text",
1043
+ "optional": false,
866
1044
  "feel": "required",
1045
+ "group": "operationDetails",
867
1046
  "binding": {
868
- "type": "zeebe:input",
869
- "name": "resource.template.variables"
1047
+ "name": "resource.template.variables",
1048
+ "type": "zeebe:input"
870
1049
  },
871
1050
  "condition": {
872
- "property": "resourceType",
873
- "equals": "file"
874
- }
1051
+ "property": "resource.type",
1052
+ "equals": "file",
1053
+ "type": "simple"
1054
+ },
1055
+ "type": "String"
875
1056
  },
876
1057
  {
877
- "label": "Additional properties or metadata",
878
- "description": "Use this field to pass additional Google Drive parameters as JSON.",
1058
+ "id": "resource.downloadData.fileId",
1059
+ "label": "File ID",
1060
+ "optional": false,
1061
+ "constraints": {
1062
+ "notEmpty": true
1063
+ },
1064
+ "feel": "optional",
879
1065
  "group": "operationDetails",
880
- "type": "Text",
881
- "optional": true,
1066
+ "binding": {
1067
+ "name": "resource.downloadData.fileId",
1068
+ "type": "zeebe:input"
1069
+ },
1070
+ "condition": {
1071
+ "property": "resource.type",
1072
+ "equals": "download",
1073
+ "type": "simple"
1074
+ },
1075
+ "type": "String"
1076
+ },
1077
+ {
1078
+ "id": "resource.uploadData.document",
1079
+ "label": "Document",
1080
+ "description": "Upload camunda document, <a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">see documentation</a>",
1081
+ "optional": false,
1082
+ "constraints": {
1083
+ "notEmpty": true
1084
+ },
882
1085
  "feel": "required",
1086
+ "group": "operationDetails",
883
1087
  "binding": {
884
- "type": "zeebe:input",
885
- "name": "resource.additionalGoogleDriveProperties",
886
- "key": "resource.additionalGoogleDriveProperties"
887
- }
1088
+ "name": "resource.uploadData.document",
1089
+ "type": "zeebe:input"
1090
+ },
1091
+ "condition": {
1092
+ "property": "resource.type",
1093
+ "equals": "upload",
1094
+ "type": "simple"
1095
+ },
1096
+ "type": "String"
888
1097
  },
889
1098
  {
1099
+ "id": "resultVariable",
890
1100
  "label": "Result variable",
891
- "description": "Enter 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>",
1101
+ "description": "Name of variable to store the response in",
892
1102
  "group": "output",
893
- "type": "String",
894
1103
  "binding": {
895
- "type": "zeebe:taskHeader",
896
- "key": "resultVariable"
897
- }
1104
+ "key": "resultVariable",
1105
+ "type": "zeebe:taskHeader"
1106
+ },
1107
+ "type": "String"
898
1108
  },
899
1109
  {
1110
+ "id": "resultExpression",
900
1111
  "label": "Result expression",
901
- "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>",
902
- "group": "output",
903
- "type": "Text",
1112
+ "description": "Expression to map the response into process variables",
904
1113
  "feel": "required",
1114
+ "group": "output",
905
1115
  "binding": {
906
- "type": "zeebe:taskHeader",
907
- "key": "resultExpression"
908
- }
1116
+ "key": "resultExpression",
1117
+ "type": "zeebe:taskHeader"
1118
+ },
1119
+ "type": "Text"
909
1120
  },
910
1121
  {
1122
+ "id": "errorExpression",
911
1123
  "label": "Error expression",
912
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#bpmn-errors\" target=\"_blank\">documentation</a>",
913
- "group": "errors",
914
- "type": "Text",
1124
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
915
1125
  "feel": "required",
1126
+ "group": "error",
916
1127
  "binding": {
917
- "type": "zeebe:taskHeader",
918
- "key": "errorExpression"
919
- }
1128
+ "key": "errorExpression",
1129
+ "type": "zeebe:taskHeader"
1130
+ },
1131
+ "type": "Text"
1132
+ },
1133
+ {
1134
+ "id": "retryCount",
1135
+ "label": "Retries",
1136
+ "description": "Number of retries",
1137
+ "value": "3",
1138
+ "feel": "optional",
1139
+ "group": "retries",
1140
+ "binding": {
1141
+ "property": "retries",
1142
+ "type": "zeebe:taskDefinition"
1143
+ },
1144
+ "type": "String"
1145
+ },
1146
+ {
1147
+ "id": "retryBackoff",
1148
+ "label": "Retry backoff",
1149
+ "description": "ISO-8601 duration to wait between retries",
1150
+ "value": "PT0S",
1151
+ "group": "retries",
1152
+ "binding": {
1153
+ "key": "retryBackoff",
1154
+ "type": "zeebe:taskHeader"
1155
+ },
1156
+ "type": "String"
920
1157
  }
921
1158
  ],
922
1159
  "icon": {
923
- "contents": "data:image/svg+xml;utf8,%3Csvg width='18' height='18' viewBox='0 0 87.3 78' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6.6 66.85 3.85 6.65c.8 1.4 1.95 2.5 3.3 3.3l13.75-23.8h-27.5c0 1.55.4 3.1 1.2 4.5z' fill='%230066da'/%3E%3Cpath d='m43.65 25-13.75-23.8c-1.35.8-2.5 1.9-3.3 3.3l-25.4 44a9.06 9.06 0 0 0 -1.2 4.5h27.5z' fill='%2300ac47'/%3E%3Cpath d='m73.55 76.8c1.35-.8 2.5-1.9 3.3-3.3l1.6-2.75 7.65-13.25c.8-1.4 1.2-2.95 1.2-4.5h-27.502l5.852 11.5z' fill='%23ea4335'/%3E%3Cpath d='m43.65 25 13.75-23.8c-1.35-.8-2.9-1.2-4.5-1.2h-18.5c-1.6 0-3.15.45-4.5 1.2z' fill='%2300832d'/%3E%3Cpath d='m59.8 53h-32.3l-13.75 23.8c1.35.8 2.9 1.2 4.5 1.2h50.8c1.6 0 3.15-.45 4.5-1.2z' fill='%232684fc'/%3E%3Cpath d='m73.4 26.5-12.7-22c-.8-1.4-1.95-2.5-3.3-3.3l-13.75 23.8 16.15 28h27.45c0-1.55-.4-3.1-1.2-4.5z' fill='%23ffba00'/%3E%3C/svg%3E"
924
- },
925
- "engines": {
926
- "camunda": "^8.2"
1160
+ "contents": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgODcuMyA3OCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxwYXRoIGQ9Im02LjYgNjYuODUgMy44NSA2LjY1Yy44IDEuNCAxLjk1IDIuNSAzLjMgMy4zbDEzLjc1LTIzLjhoLTI3LjVjMCAxLjU1LjQgMy4xIDEuMiA0LjV6IiBmaWxsPSIjMDA2NmRhIi8+Cgk8cGF0aCBkPSJtNDMuNjUgMjUtMTMuNzUtMjMuOGMtMS4zNS44LTIuNSAxLjktMy4zIDMuM2wtMjUuNCA0NGE5LjA2IDkuMDYgMCAwIDAgLTEuMiA0LjVoMjcuNXoiIGZpbGw9IiMwMGFjNDciLz4KCTxwYXRoIGQ9Im03My41NSA3Ni44YzEuMzUtLjggMi41LTEuOSAzLjMtMy4zbDEuNi0yLjc1IDcuNjUtMTMuMjVjLjgtMS40IDEuMi0yLjk1IDEuMi00LjVoLTI3LjUwMmw1Ljg1MiAxMS41eiIgZmlsbD0iI2VhNDMzNSIvPgoJPHBhdGggZD0ibTQzLjY1IDI1IDEzLjc1LTIzLjhjLTEuMzUtLjgtMi45LTEuMi00LjUtMS4yaC0xOC41Yy0xLjYgMC0zLjE1LjQ1LTQuNSAxLjJ6IiBmaWxsPSIjMDA4MzJkIi8+Cgk8cGF0aCBkPSJtNTkuOCA1M2gtMzIuM2wtMTMuNzUgMjMuOGMxLjM1LjggMi45IDEuMiA0LjUgMS4yaDUwLjhjMS42IDAgMy4xNS0uNDUgNC41LTEuMnoiIGZpbGw9IiMyNjg0ZmMiLz4KCTxwYXRoIGQ9Im03My40IDI2LjUtMTIuNy0yMmMtLjgtMS40LTEuOTUtMi41LTMuMy0zLjNsLTEzLjc1IDIzLjggMTYuMTUgMjhoMjcuNDVjMC0xLjU1LS40LTMuMS0xLjItNC41eiIgZmlsbD0iI2ZmYmEwMCIvPgo8L3N2Zz4="
927
1161
  }
928
1162
  },
929
1163
  {
930
1164
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
931
1165
  "name": "Google Drive connector",
932
1166
  "id": "io.camunda.connectors.GoogleDrive.v1",
1167
+ "version": 1,
933
1168
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/googledrive/",
934
1169
  "description": "Create folder or a file from template",
935
- "deprecated": {
936
- "message": "Replace with 'Google Drive connector' template.",
937
- "documentationRef": "https://docs.camunda.io/docs/components/modeler/desktop-modeler/element-templates/using-templates/#replacing-templates"
938
- },
939
1170
  "category": {
940
1171
  "id": "connectors",
941
1172
  "name": "Connectors"
@@ -1237,24 +1468,18 @@
1237
1468
  ],
1238
1469
  "icon": {
1239
1470
  "contents": "data:image/svg+xml;utf8,%3Csvg width='18' height='18' viewBox='0 0 87.3 78' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6.6 66.85 3.85 6.65c.8 1.4 1.95 2.5 3.3 3.3l13.75-23.8h-27.5c0 1.55.4 3.1 1.2 4.5z' fill='%230066da'/%3E%3Cpath d='m43.65 25-13.75-23.8c-1.35.8-2.5 1.9-3.3 3.3l-25.4 44a9.06 9.06 0 0 0 -1.2 4.5h27.5z' fill='%2300ac47'/%3E%3Cpath d='m73.55 76.8c1.35-.8 2.5-1.9 3.3-3.3l1.6-2.75 7.65-13.25c.8-1.4 1.2-2.95 1.2-4.5h-27.502l5.852 11.5z' fill='%23ea4335'/%3E%3Cpath d='m43.65 25 13.75-23.8c-1.35-.8-2.9-1.2-4.5-1.2h-18.5c-1.6 0-3.15.45-4.5 1.2z' fill='%2300832d'/%3E%3Cpath d='m59.8 53h-32.3l-13.75 23.8c1.35.8 2.9 1.2 4.5 1.2h50.8c1.6 0 3.15-.45 4.5-1.2z' fill='%232684fc'/%3E%3Cpath d='m73.4 26.5-12.7-22c-.8-1.4-1.95-2.5-3.3-3.3l-13.75 23.8 16.15 28h27.45c0-1.55-.4-3.1-1.2-4.5z' fill='%23ffba00'/%3E%3C/svg%3E"
1471
+ },
1472
+ "engines": {
1473
+ "camunda": "^8.2"
1240
1474
  }
1241
1475
  },
1242
1476
  {
1243
1477
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1244
1478
  "name": "Google Drive Outbound Connector",
1245
1479
  "id": "io.camunda.connectors.GoogleDrive.v1",
1246
- "description": "Manage Google Drive files and folders",
1247
- "keywords": [
1248
- "create file",
1249
- "create file from template",
1250
- "create folder",
1251
- "upload file",
1252
- "download file",
1253
- "file storage",
1254
- "document management"
1255
- ],
1480
+ "version": 2,
1256
1481
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/googledrive/",
1257
- "version": 5,
1482
+ "description": "Create folder or a file from template",
1258
1483
  "category": {
1259
1484
  "id": "connectors",
1260
1485
  "name": "Connectors"
@@ -1263,9 +1488,6 @@
1263
1488
  "elementType": {
1264
1489
  "value": "bpmn:ServiceTask"
1265
1490
  },
1266
- "engines": {
1267
- "camunda": "^8.3"
1268
- },
1269
1491
  "groups": [
1270
1492
  {
1271
1493
  "id": "authentication",
@@ -1279,46 +1501,30 @@
1279
1501
  "id": "operationDetails",
1280
1502
  "label": "Operation details"
1281
1503
  },
1282
- {
1283
- "id": "connector",
1284
- "label": "Connector"
1285
- },
1286
1504
  {
1287
1505
  "id": "output",
1288
1506
  "label": "Output mapping"
1289
1507
  },
1290
1508
  {
1291
- "id": "error",
1509
+ "id": "errors",
1292
1510
  "label": "Error handling"
1293
- },
1294
- {
1295
- "id": "retries",
1296
- "label": "Retries"
1297
1511
  }
1298
1512
  ],
1299
1513
  "properties": [
1300
1514
  {
1515
+ "type": "Hidden",
1301
1516
  "value": "io.camunda:google-drive:1",
1302
1517
  "binding": {
1303
- "property": "type",
1304
- "type": "zeebe:taskDefinition"
1305
- },
1306
- "type": "Hidden"
1518
+ "type": "zeebe:taskDefinition",
1519
+ "property": "type"
1520
+ }
1307
1521
  },
1308
1522
  {
1309
- "id": "authentication.authType",
1523
+ "id": "authenticationType",
1310
1524
  "label": "Type",
1311
- "optional": false,
1312
- "value": "refresh",
1313
- "constraints": {
1314
- "notEmpty": true
1315
- },
1316
1525
  "group": "authentication",
1317
- "binding": {
1318
- "name": "authentication.authType",
1319
- "type": "zeebe:input"
1320
- },
1321
1526
  "type": "Dropdown",
1527
+ "value": "bearer",
1322
1528
  "choices": [
1323
1529
  {
1324
1530
  "name": "Bearer token",
@@ -1328,106 +1534,86 @@
1328
1534
  "name": "Refresh token",
1329
1535
  "value": "refresh"
1330
1536
  }
1331
- ]
1537
+ ],
1538
+ "binding": {
1539
+ "type": "zeebe:input",
1540
+ "name": "authentication.authType",
1541
+ "key": "authentication.authType"
1542
+ }
1332
1543
  },
1333
1544
  {
1334
- "id": "authentication.bearerToken",
1335
1545
  "label": "Bearer token",
1336
- "description": "Enter a valid Google API Bearer token",
1337
- "optional": false,
1338
- "constraints": {
1339
- "notEmpty": true
1340
- },
1341
- "feel": "optional",
1546
+ "description": "Enter Google API Bearer token that is authorized to interact with desired Drive",
1342
1547
  "group": "authentication",
1548
+ "type": "String",
1343
1549
  "binding": {
1344
- "name": "authentication.bearerToken",
1345
- "type": "zeebe:input"
1550
+ "type": "zeebe:input",
1551
+ "name": "authentication.bearerToken"
1346
1552
  },
1347
- "condition": {
1348
- "property": "authentication.authType",
1349
- "equals": "bearer",
1350
- "type": "simple"
1553
+ "constraints": {
1554
+ "notEmpty": true
1351
1555
  },
1352
- "type": "String"
1556
+ "condition": {
1557
+ "property": "authenticationType",
1558
+ "equals": "bearer"
1559
+ }
1353
1560
  },
1354
1561
  {
1355
- "id": "authentication.oauthClientId",
1356
1562
  "label": "Client ID",
1357
1563
  "description": "Enter Google API Client ID",
1358
- "optional": false,
1359
- "constraints": {
1360
- "notEmpty": true
1361
- },
1362
- "feel": "optional",
1363
1564
  "group": "authentication",
1565
+ "type": "String",
1364
1566
  "binding": {
1365
- "name": "authentication.oauthClientId",
1366
- "type": "zeebe:input"
1567
+ "type": "zeebe:input",
1568
+ "name": "authentication.oauthClientId"
1367
1569
  },
1368
- "condition": {
1369
- "property": "authentication.authType",
1370
- "equals": "refresh",
1371
- "type": "simple"
1570
+ "constraints": {
1571
+ "notEmpty": true
1372
1572
  },
1373
- "type": "String"
1573
+ "condition": {
1574
+ "property": "authenticationType",
1575
+ "equals": "refresh"
1576
+ }
1374
1577
  },
1375
1578
  {
1376
- "id": "authentication.oauthClientSecret",
1377
1579
  "label": "Client secret",
1378
1580
  "description": "Enter Google API client Secret",
1379
- "optional": false,
1380
- "constraints": {
1381
- "notEmpty": true
1382
- },
1383
- "feel": "optional",
1384
1581
  "group": "authentication",
1582
+ "type": "String",
1385
1583
  "binding": {
1386
- "name": "authentication.oauthClientSecret",
1387
- "type": "zeebe:input"
1584
+ "type": "zeebe:input",
1585
+ "name": "authentication.oauthClientSecret"
1388
1586
  },
1389
- "condition": {
1390
- "property": "authentication.authType",
1391
- "equals": "refresh",
1392
- "type": "simple"
1587
+ "constraints": {
1588
+ "notEmpty": true
1393
1589
  },
1394
- "type": "String"
1590
+ "condition": {
1591
+ "property": "authenticationType",
1592
+ "equals": "refresh"
1593
+ }
1395
1594
  },
1396
1595
  {
1397
- "id": "authentication.oauthRefreshToken",
1398
1596
  "label": "Refresh token",
1399
- "description": "Enter a valid Google API refresh token",
1400
- "optional": false,
1597
+ "description": "Enter Google API refresh token that is authorized to interact with desired Drive",
1598
+ "group": "authentication",
1599
+ "type": "String",
1600
+ "binding": {
1601
+ "type": "zeebe:input",
1602
+ "name": "authentication.oauthRefreshToken"
1603
+ },
1401
1604
  "constraints": {
1402
1605
  "notEmpty": true
1403
1606
  },
1404
- "feel": "optional",
1405
- "group": "authentication",
1406
- "binding": {
1407
- "name": "authentication.oauthRefreshToken",
1408
- "type": "zeebe:input"
1409
- },
1410
1607
  "condition": {
1411
- "property": "authentication.authType",
1412
- "equals": "refresh",
1413
- "type": "simple"
1414
- },
1415
- "type": "String"
1608
+ "property": "authenticationType",
1609
+ "equals": "refresh"
1610
+ }
1416
1611
  },
1417
1612
  {
1418
- "id": "resource.type",
1419
- "label": "Operation",
1420
- "optional": false,
1421
- "value": "folder",
1422
- "constraints": {
1423
- "notEmpty": true
1424
- },
1613
+ "id": "resourceType",
1425
1614
  "group": "operation",
1426
- "binding": {
1427
- "name": "resource.type",
1428
- "type": "zeebe:input"
1429
- },
1430
1615
  "type": "Dropdown",
1616
+ "value": "folder",
1431
1617
  "choices": [
1432
1618
  {
1433
1619
  "name": "Create folder",
@@ -1436,249 +1622,180 @@
1436
1622
  {
1437
1623
  "name": "Create file from template",
1438
1624
  "value": "file"
1439
- },
1440
- {
1441
- "name": "Upload file",
1442
- "value": "upload"
1443
- },
1444
- {
1445
- "name": "Download file",
1446
- "value": "download"
1447
1625
  }
1448
- ]
1626
+ ],
1627
+ "binding": {
1628
+ "type": "zeebe:input",
1629
+ "name": "resource.type",
1630
+ "key": "resource.type"
1631
+ }
1449
1632
  },
1450
1633
  {
1451
- "id": "resource.name",
1452
- "label": "New resource name",
1453
- "optional": false,
1454
- "constraints": {
1455
- "notEmpty": true
1456
- },
1457
- "feel": "optional",
1634
+ "label": "File name",
1635
+ "description": "Enter name for your file",
1458
1636
  "group": "operationDetails",
1637
+ "type": "String",
1638
+ "feel": "optional",
1459
1639
  "binding": {
1460
- "name": "resource.name",
1461
- "type": "zeebe:input"
1640
+ "type": "zeebe:input",
1641
+ "name": "resource.name"
1462
1642
  },
1463
- "condition": {
1464
- "property": "resource.type",
1465
- "oneOf": ["folder", "file"],
1466
- "type": "simple"
1643
+ "constraints": {
1644
+ "notEmpty": true,
1645
+ "maxLength": 255
1467
1646
  },
1468
- "type": "String"
1647
+ "condition": {
1648
+ "property": "resourceType",
1649
+ "equals": "file"
1650
+ }
1469
1651
  },
1470
1652
  {
1471
- "id": "resource.parent",
1472
- "label": "Parent folder ID",
1473
- "description": "Your resources will be created here. If left empty, a new resource will appear in the root folder",
1474
- "optional": true,
1475
- "feel": "optional",
1653
+ "label": "Folder name",
1654
+ "description": "Enter name for your folder",
1476
1655
  "group": "operationDetails",
1656
+ "type": "String",
1657
+ "feel": "optional",
1477
1658
  "binding": {
1478
- "name": "resource.parent",
1479
- "type": "zeebe:input"
1659
+ "type": "zeebe:input",
1660
+ "name": "resource.name"
1480
1661
  },
1481
- "condition": {
1482
- "property": "resource.type",
1483
- "oneOf": ["folder", "file", "upload"],
1484
- "type": "simple"
1662
+ "constraints": {
1663
+ "notEmpty": true,
1664
+ "maxLength": 255
1485
1665
  },
1486
- "type": "String"
1666
+ "condition": {
1667
+ "property": "resourceType",
1668
+ "equals": "folder"
1669
+ }
1487
1670
  },
1488
1671
  {
1489
- "id": "resource.additionalGoogleDriveProperties",
1490
- "label": "Additional properties or metadata",
1491
- "optional": true,
1492
- "feel": "required",
1672
+ "label": "Template ID",
1673
+ "description": "Enter ID of the template you are creating a file from",
1493
1674
  "group": "operationDetails",
1675
+ "type": "String",
1676
+ "feel": "optional",
1494
1677
  "binding": {
1495
- "name": "resource.additionalGoogleDriveProperties",
1496
- "type": "zeebe:input"
1497
- },
1498
- "condition": {
1499
- "property": "resource.type",
1500
- "equals": "folder",
1501
- "type": "simple"
1678
+ "type": "zeebe:input",
1679
+ "name": "resource.template.id"
1502
1680
  },
1503
- "type": "String"
1504
- },
1505
- {
1506
- "id": "resource.template.id",
1507
- "label": "Template ID",
1508
- "optional": false,
1509
1681
  "constraints": {
1510
1682
  "notEmpty": true
1511
1683
  },
1512
- "feel": "optional",
1513
- "group": "operationDetails",
1514
- "binding": {
1515
- "name": "resource.template.id",
1516
- "type": "zeebe:input"
1517
- },
1518
1684
  "condition": {
1519
- "property": "resource.type",
1520
- "equals": "file",
1521
- "type": "simple"
1522
- },
1523
- "type": "String"
1685
+ "property": "resourceType",
1686
+ "equals": "file"
1687
+ }
1524
1688
  },
1525
1689
  {
1526
- "id": "resource.template.variables",
1527
- "label": "Template variables",
1528
- "optional": false,
1529
- "feel": "required",
1690
+ "label": "Parent folder ID",
1691
+ "description": "Enter ID of the parent folder where new folder will be created",
1530
1692
  "group": "operationDetails",
1693
+ "type": "String",
1694
+ "feel": "optional",
1695
+ "optional": true,
1531
1696
  "binding": {
1532
- "name": "resource.template.variables",
1533
- "type": "zeebe:input"
1697
+ "type": "zeebe:input",
1698
+ "name": "resource.parent"
1534
1699
  },
1535
1700
  "condition": {
1536
- "property": "resource.type",
1537
- "equals": "file",
1538
- "type": "simple"
1539
- },
1540
- "type": "String"
1701
+ "property": "resourceType",
1702
+ "equals": "folder"
1703
+ }
1541
1704
  },
1542
1705
  {
1543
- "id": "resource.downloadData.fileId",
1544
- "label": "File ID",
1545
- "optional": false,
1546
- "constraints": {
1547
- "notEmpty": true
1548
- },
1549
- "feel": "optional",
1706
+ "label": "Parent folder ID",
1707
+ "description": "Enter ID of the parent folder where new file will be created",
1550
1708
  "group": "operationDetails",
1709
+ "type": "String",
1710
+ "feel": "optional",
1711
+ "optional": true,
1551
1712
  "binding": {
1552
- "name": "resource.downloadData.fileId",
1553
- "type": "zeebe:input"
1713
+ "type": "zeebe:input",
1714
+ "name": "resource.parent"
1554
1715
  },
1555
1716
  "condition": {
1556
- "property": "resource.type",
1557
- "equals": "download",
1558
- "type": "simple"
1559
- },
1560
- "type": "String"
1717
+ "property": "resourceType",
1718
+ "equals": "file"
1719
+ }
1561
1720
  },
1562
1721
  {
1563
- "id": "resource.uploadData.document",
1564
- "label": "Document",
1565
- "description": "Upload camunda document, <a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">see documentation</a>",
1566
- "optional": false,
1567
- "constraints": {
1568
- "notEmpty": true
1569
- },
1570
- "feel": "required",
1722
+ "label": "Template variables",
1723
+ "description": "Use this field to pass and update variables in your template as JSON",
1571
1724
  "group": "operationDetails",
1725
+ "type": "Text",
1726
+ "feel": "required",
1572
1727
  "binding": {
1573
- "name": "resource.uploadData.document",
1574
- "type": "zeebe:input"
1728
+ "type": "zeebe:input",
1729
+ "name": "resource.template.variables"
1575
1730
  },
1576
1731
  "condition": {
1577
- "property": "resource.type",
1578
- "equals": "upload",
1579
- "type": "simple"
1580
- },
1581
- "type": "String"
1582
- },
1583
- {
1584
- "id": "version",
1585
- "label": "Version",
1586
- "description": "Version of the element template",
1587
- "value": "5",
1588
- "group": "connector",
1589
- "binding": {
1590
- "key": "elementTemplateVersion",
1591
- "type": "zeebe:taskHeader"
1592
- },
1593
- "type": "Hidden"
1732
+ "property": "resourceType",
1733
+ "equals": "file"
1734
+ }
1594
1735
  },
1595
1736
  {
1596
- "id": "id",
1597
- "label": "ID",
1598
- "description": "ID of the element template",
1599
- "value": "io.camunda.connectors.GoogleDrive.v1",
1600
- "group": "connector",
1737
+ "label": "Additional properties or metadata",
1738
+ "description": "Use this field to pass additional Google Drive parameters as JSON.",
1739
+ "group": "operationDetails",
1740
+ "type": "Text",
1741
+ "optional": true,
1742
+ "feel": "required",
1601
1743
  "binding": {
1602
- "key": "elementTemplateId",
1603
- "type": "zeebe:taskHeader"
1604
- },
1605
- "type": "Hidden"
1744
+ "type": "zeebe:input",
1745
+ "name": "resource.additionalGoogleDriveProperties",
1746
+ "key": "resource.additionalGoogleDriveProperties"
1747
+ }
1606
1748
  },
1607
1749
  {
1608
- "id": "resultVariable",
1609
1750
  "label": "Result variable",
1610
- "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>.",
1751
+ "description": "Enter 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>",
1611
1752
  "group": "output",
1753
+ "type": "String",
1612
1754
  "binding": {
1613
- "key": "resultVariable",
1614
- "type": "zeebe:taskHeader"
1615
- },
1616
- "type": "String"
1755
+ "type": "zeebe:taskHeader",
1756
+ "key": "resultVariable"
1757
+ }
1617
1758
  },
1618
1759
  {
1619
- "id": "resultExpression",
1620
1760
  "label": "Result expression",
1621
- "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>.",
1622
- "feel": "required",
1761
+ "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>",
1623
1762
  "group": "output",
1763
+ "type": "Text",
1764
+ "feel": "required",
1624
1765
  "binding": {
1625
- "key": "resultExpression",
1626
- "type": "zeebe:taskHeader"
1627
- },
1628
- "type": "Text"
1766
+ "type": "zeebe:taskHeader",
1767
+ "key": "resultExpression"
1768
+ }
1629
1769
  },
1630
1770
  {
1631
- "id": "errorExpression",
1632
1771
  "label": "Error expression",
1633
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
1772
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#bpmn-errors\" target=\"_blank\">documentation</a>",
1773
+ "group": "errors",
1774
+ "type": "Text",
1634
1775
  "feel": "required",
1635
- "group": "error",
1636
- "binding": {
1637
- "key": "errorExpression",
1638
- "type": "zeebe:taskHeader"
1639
- },
1640
- "type": "Text"
1641
- },
1642
- {
1643
- "id": "retryCount",
1644
- "label": "Retries",
1645
- "description": "Number of retries",
1646
- "value": "3",
1647
- "feel": "optional",
1648
- "group": "retries",
1649
- "binding": {
1650
- "property": "retries",
1651
- "type": "zeebe:taskDefinition"
1652
- },
1653
- "type": "String"
1654
- },
1655
- {
1656
- "id": "retryBackoff",
1657
- "label": "Retry backoff",
1658
- "description": "ISO-8601 duration to wait between retries",
1659
- "value": "PT0S",
1660
- "group": "retries",
1661
1776
  "binding": {
1662
- "key": "retryBackoff",
1663
- "type": "zeebe:taskHeader"
1664
- },
1665
- "type": "String"
1777
+ "type": "zeebe:taskHeader",
1778
+ "key": "errorExpression"
1779
+ }
1666
1780
  }
1667
1781
  ],
1668
1782
  "icon": {
1669
- "contents": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgODcuMyA3OCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxwYXRoIGQ9Im02LjYgNjYuODUgMy44NSA2LjY1Yy44IDEuNCAxLjk1IDIuNSAzLjMgMy4zbDEzLjc1LTIzLjhoLTI3LjVjMCAxLjU1LjQgMy4xIDEuMiA0LjV6IiBmaWxsPSIjMDA2NmRhIi8+Cgk8cGF0aCBkPSJtNDMuNjUgMjUtMTMuNzUtMjMuOGMtMS4zNS44LTIuNSAxLjktMy4zIDMuM2wtMjUuNCA0NGE5LjA2IDkuMDYgMCAwIDAgLTEuMiA0LjVoMjcuNXoiIGZpbGw9IiMwMGFjNDciLz4KCTxwYXRoIGQ9Im03My41NSA3Ni44YzEuMzUtLjggMi41LTEuOSAzLjMtMy4zbDEuNi0yLjc1IDcuNjUtMTMuMjVjLjgtMS40IDEuMi0yLjk1IDEuMi00LjVoLTI3LjUwMmw1Ljg1MiAxMS41eiIgZmlsbD0iI2VhNDMzNSIvPgoJPHBhdGggZD0ibTQzLjY1IDI1IDEzLjc1LTIzLjhjLTEuMzUtLjgtMi45LTEuMi00LjUtMS4yaC0xOC41Yy0xLjYgMC0zLjE1LjQ1LTQuNSAxLjJ6IiBmaWxsPSIjMDA4MzJkIi8+Cgk8cGF0aCBkPSJtNTkuOCA1M2gtMzIuM2wtMTMuNzUgMjMuOGMxLjM1LjggMi45IDEuMiA0LjUgMS4yaDUwLjhjMS42IDAgMy4xNS0uNDUgNC41LTEuMnoiIGZpbGw9IiMyNjg0ZmMiLz4KCTxwYXRoIGQ9Im03My40IDI2LjUtMTIuNy0yMmMtLjgtMS40LTEuOTUtMi41LTMuMy0zLjNsLTEzLjc1IDIzLjggMTYuMTUgMjhoMjcuNDVjMC0xLjU1LS40LTMuMS0xLjItNC41eiIgZmlsbD0iI2ZmYmEwMCIvPgo8L3N2Zz4="
1783
+ "contents": "data:image/svg+xml;utf8,%3Csvg width='18' height='18' viewBox='0 0 87.3 78' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6.6 66.85 3.85 6.65c.8 1.4 1.95 2.5 3.3 3.3l13.75-23.8h-27.5c0 1.55.4 3.1 1.2 4.5z' fill='%230066da'/%3E%3Cpath d='m43.65 25-13.75-23.8c-1.35.8-2.5 1.9-3.3 3.3l-25.4 44a9.06 9.06 0 0 0 -1.2 4.5h27.5z' fill='%2300ac47'/%3E%3Cpath d='m73.55 76.8c1.35-.8 2.5-1.9 3.3-3.3l1.6-2.75 7.65-13.25c.8-1.4 1.2-2.95 1.2-4.5h-27.502l5.852 11.5z' fill='%23ea4335'/%3E%3Cpath d='m43.65 25 13.75-23.8c-1.35-.8-2.9-1.2-4.5-1.2h-18.5c-1.6 0-3.15.45-4.5 1.2z' fill='%2300832d'/%3E%3Cpath d='m59.8 53h-32.3l-13.75 23.8c1.35.8 2.9 1.2 4.5 1.2h50.8c1.6 0 3.15-.45 4.5-1.2z' fill='%232684fc'/%3E%3Cpath d='m73.4 26.5-12.7-22c-.8-1.4-1.95-2.5-3.3-3.3l-13.75 23.8 16.15 28h27.45c0-1.55-.4-3.1-1.2-4.5z' fill='%23ffba00'/%3E%3C/svg%3E"
1784
+ },
1785
+ "engines": {
1786
+ "camunda": "^8.2"
1670
1787
  }
1671
1788
  },
1672
1789
  {
1673
1790
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
1674
- "name": "Google Drive Outbound Connector",
1791
+ "name": "Google Drive connector",
1675
1792
  "id": "io.camunda.connectors.GoogleDrive.v1",
1676
- "description": "Manage Google Drive files and folders",
1677
- "metadata": {
1678
- "keywords": ["create file", "create file from template", "create folder"]
1679
- },
1680
1793
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/googledrive/",
1681
- "version": 4,
1794
+ "description": "Create folder or a file from template",
1795
+ "deprecated": {
1796
+ "message": "Replace with 'Google Drive connector' template.",
1797
+ "documentationRef": "https://docs.camunda.io/docs/components/modeler/desktop-modeler/element-templates/using-templates/#replacing-templates"
1798
+ },
1682
1799
  "category": {
1683
1800
  "id": "connectors",
1684
1801
  "name": "Connectors"
@@ -1687,9 +1804,6 @@
1687
1804
  "elementType": {
1688
1805
  "value": "bpmn:ServiceTask"
1689
1806
  },
1690
- "engines": {
1691
- "camunda": "^8.3"
1692
- },
1693
1807
  "groups": [
1694
1808
  {
1695
1809
  "id": "authentication",
@@ -1708,37 +1822,25 @@
1708
1822
  "label": "Output mapping"
1709
1823
  },
1710
1824
  {
1711
- "id": "error",
1825
+ "id": "errors",
1712
1826
  "label": "Error handling"
1713
- },
1714
- {
1715
- "id": "retries",
1716
- "label": "Retries"
1717
1827
  }
1718
1828
  ],
1719
1829
  "properties": [
1720
1830
  {
1831
+ "type": "Hidden",
1721
1832
  "value": "io.camunda:google-drive:1",
1722
1833
  "binding": {
1723
- "property": "type",
1724
- "type": "zeebe:taskDefinition"
1725
- },
1726
- "type": "Hidden"
1834
+ "type": "zeebe:taskDefinition",
1835
+ "property": "type"
1836
+ }
1727
1837
  },
1728
1838
  {
1729
- "id": "authentication.authType",
1839
+ "id": "authenticationType",
1730
1840
  "label": "Type",
1731
- "optional": false,
1732
- "value": "refresh",
1733
- "constraints": {
1734
- "notEmpty": true
1735
- },
1736
1841
  "group": "authentication",
1737
- "binding": {
1738
- "name": "authentication.authType",
1739
- "type": "zeebe:input"
1740
- },
1741
1842
  "type": "Dropdown",
1843
+ "value": "bearer",
1742
1844
  "choices": [
1743
1845
  {
1744
1846
  "name": "Bearer token",
@@ -1748,106 +1850,86 @@
1748
1850
  "name": "Refresh token",
1749
1851
  "value": "refresh"
1750
1852
  }
1751
- ]
1853
+ ],
1854
+ "binding": {
1855
+ "type": "zeebe:input",
1856
+ "name": "authentication.authType",
1857
+ "key": "authentication.authType"
1858
+ }
1752
1859
  },
1753
1860
  {
1754
- "id": "authentication.bearerToken",
1755
1861
  "label": "Bearer token",
1756
- "description": "Enter a valid Google API Bearer token",
1757
- "optional": false,
1758
- "constraints": {
1759
- "notEmpty": true
1760
- },
1761
- "feel": "optional",
1862
+ "description": "Enter Google API Bearer token that is authorized to interact with desired Drive",
1762
1863
  "group": "authentication",
1864
+ "type": "String",
1763
1865
  "binding": {
1764
- "name": "authentication.bearerToken",
1765
- "type": "zeebe:input"
1866
+ "type": "zeebe:input",
1867
+ "name": "authentication.bearerToken"
1766
1868
  },
1767
- "condition": {
1768
- "property": "authentication.authType",
1769
- "equals": "bearer",
1770
- "type": "simple"
1869
+ "constraints": {
1870
+ "notEmpty": true
1771
1871
  },
1772
- "type": "String"
1872
+ "condition": {
1873
+ "property": "authenticationType",
1874
+ "equals": "bearer"
1875
+ }
1773
1876
  },
1774
1877
  {
1775
- "id": "authentication.oauthClientId",
1776
1878
  "label": "Client ID",
1777
1879
  "description": "Enter Google API Client ID",
1778
- "optional": false,
1779
- "constraints": {
1780
- "notEmpty": true
1781
- },
1782
- "feel": "optional",
1783
1880
  "group": "authentication",
1881
+ "type": "String",
1784
1882
  "binding": {
1785
- "name": "authentication.oauthClientId",
1786
- "type": "zeebe:input"
1883
+ "type": "zeebe:input",
1884
+ "name": "authentication.oauthClientId"
1787
1885
  },
1788
- "condition": {
1789
- "property": "authentication.authType",
1790
- "equals": "refresh",
1791
- "type": "simple"
1886
+ "constraints": {
1887
+ "notEmpty": true
1792
1888
  },
1793
- "type": "String"
1889
+ "condition": {
1890
+ "property": "authenticationType",
1891
+ "equals": "refresh"
1892
+ }
1794
1893
  },
1795
1894
  {
1796
- "id": "authentication.oauthClientSecret",
1797
1895
  "label": "Client secret",
1798
1896
  "description": "Enter Google API client Secret",
1799
- "optional": false,
1800
- "constraints": {
1801
- "notEmpty": true
1802
- },
1803
- "feel": "optional",
1804
1897
  "group": "authentication",
1898
+ "type": "String",
1805
1899
  "binding": {
1806
- "name": "authentication.oauthClientSecret",
1807
- "type": "zeebe:input"
1900
+ "type": "zeebe:input",
1901
+ "name": "authentication.oauthClientSecret"
1808
1902
  },
1809
- "condition": {
1810
- "property": "authentication.authType",
1811
- "equals": "refresh",
1812
- "type": "simple"
1903
+ "constraints": {
1904
+ "notEmpty": true
1813
1905
  },
1814
- "type": "String"
1906
+ "condition": {
1907
+ "property": "authenticationType",
1908
+ "equals": "refresh"
1909
+ }
1815
1910
  },
1816
1911
  {
1817
- "id": "authentication.oauthRefreshToken",
1818
1912
  "label": "Refresh token",
1819
- "description": "Enter a valid Google API refresh token",
1820
- "optional": false,
1821
- "constraints": {
1822
- "notEmpty": true
1823
- },
1824
- "feel": "optional",
1913
+ "description": "Enter Google API refresh token that is authorized to interact with desired Drive",
1825
1914
  "group": "authentication",
1915
+ "type": "String",
1826
1916
  "binding": {
1827
- "name": "authentication.oauthRefreshToken",
1828
- "type": "zeebe:input"
1829
- },
1830
- "condition": {
1831
- "property": "authentication.authType",
1832
- "equals": "refresh",
1833
- "type": "simple"
1917
+ "type": "zeebe:input",
1918
+ "name": "authentication.oauthRefreshToken"
1834
1919
  },
1835
- "type": "String"
1836
- },
1837
- {
1838
- "id": "resource.type",
1839
- "label": "Operation",
1840
- "optional": false,
1841
- "value": "folder",
1842
1920
  "constraints": {
1843
1921
  "notEmpty": true
1844
1922
  },
1923
+ "condition": {
1924
+ "property": "authenticationType",
1925
+ "equals": "refresh"
1926
+ }
1927
+ },
1928
+ {
1929
+ "id": "resourceType",
1845
1930
  "group": "operation",
1846
- "binding": {
1847
- "name": "resource.type",
1848
- "type": "zeebe:input"
1849
- },
1850
1931
  "type": "Dropdown",
1932
+ "value": "folder",
1851
1933
  "choices": [
1852
1934
  {
1853
1935
  "name": "Create folder",
@@ -1856,222 +1938,183 @@
1856
1938
  {
1857
1939
  "name": "Create file from template",
1858
1940
  "value": "file"
1859
- },
1860
- {
1861
- "name": "Upload file",
1862
- "value": "upload"
1863
- },
1864
- {
1865
- "name": "Download file",
1866
- "value": "download"
1867
1941
  }
1868
- ]
1942
+ ],
1943
+ "binding": {
1944
+ "type": "zeebe:input",
1945
+ "name": "resource.type",
1946
+ "key": "resource.type"
1947
+ }
1869
1948
  },
1870
1949
  {
1871
- "id": "resource.name",
1872
- "label": "New resource name",
1873
- "optional": false,
1874
- "constraints": {
1875
- "notEmpty": true
1876
- },
1877
- "feel": "optional",
1950
+ "label": "File name",
1951
+ "description": "Enter name for your file",
1878
1952
  "group": "operationDetails",
1953
+ "type": "String",
1954
+ "feel": "optional",
1879
1955
  "binding": {
1880
- "name": "resource.name",
1881
- "type": "zeebe:input"
1956
+ "type": "zeebe:input",
1957
+ "name": "resource.name"
1882
1958
  },
1883
- "condition": {
1884
- "property": "resource.type",
1885
- "oneOf": ["folder", "file"],
1886
- "type": "simple"
1959
+ "constraints": {
1960
+ "notEmpty": true,
1961
+ "maxLength": 255
1887
1962
  },
1888
- "type": "String"
1963
+ "condition": {
1964
+ "property": "resourceType",
1965
+ "equals": "file"
1966
+ }
1889
1967
  },
1890
1968
  {
1891
- "id": "resource.parent",
1892
- "label": "Parent folder ID",
1893
- "description": "Your resources will be created here. If left empty, a new resource will appear in the root folder",
1894
- "optional": true,
1895
- "feel": "optional",
1969
+ "label": "Folder name",
1970
+ "description": "Enter name for your folder",
1896
1971
  "group": "operationDetails",
1972
+ "type": "String",
1973
+ "feel": "optional",
1897
1974
  "binding": {
1898
- "name": "resource.parent",
1899
- "type": "zeebe:input"
1975
+ "type": "zeebe:input",
1976
+ "name": "resource.name"
1900
1977
  },
1901
- "condition": {
1902
- "property": "resource.type",
1903
- "oneOf": ["folder", "file", "upload"],
1904
- "type": "simple"
1978
+ "constraints": {
1979
+ "notEmpty": true,
1980
+ "maxLength": 255
1905
1981
  },
1906
- "type": "String"
1982
+ "condition": {
1983
+ "property": "resourceType",
1984
+ "equals": "folder"
1985
+ }
1907
1986
  },
1908
1987
  {
1909
- "id": "resource.additionalGoogleDriveProperties",
1910
- "label": "Additional properties or metadata",
1911
- "optional": true,
1912
- "feel": "required",
1988
+ "label": "Template ID",
1989
+ "description": "Enter ID of the template you are creating a file from",
1913
1990
  "group": "operationDetails",
1991
+ "type": "String",
1992
+ "feel": "optional",
1914
1993
  "binding": {
1915
- "name": "resource.additionalGoogleDriveProperties",
1916
- "type": "zeebe:input"
1917
- },
1918
- "condition": {
1919
- "property": "resource.type",
1920
- "equals": "folder",
1921
- "type": "simple"
1994
+ "type": "zeebe:input",
1995
+ "name": "resource.template.id"
1922
1996
  },
1923
- "type": "String"
1924
- },
1925
- {
1926
- "id": "resource.template.id",
1927
- "label": "Template ID",
1928
- "optional": false,
1929
1997
  "constraints": {
1930
1998
  "notEmpty": true
1931
1999
  },
1932
- "feel": "optional",
2000
+ "condition": {
2001
+ "property": "resourceType",
2002
+ "equals": "file"
2003
+ }
2004
+ },
2005
+ {
2006
+ "label": "Parent folder ID",
2007
+ "description": "Enter ID of the parent folder where new folder will be created",
1933
2008
  "group": "operationDetails",
2009
+ "type": "String",
2010
+ "feel": "optional",
2011
+ "optional": true,
1934
2012
  "binding": {
1935
- "name": "resource.template.id",
1936
- "type": "zeebe:input"
2013
+ "type": "zeebe:input",
2014
+ "name": "resource.parent"
1937
2015
  },
1938
2016
  "condition": {
1939
- "property": "resource.type",
1940
- "equals": "file",
1941
- "type": "simple"
1942
- },
1943
- "type": "String"
2017
+ "property": "resourceType",
2018
+ "equals": "folder"
2019
+ }
1944
2020
  },
1945
2021
  {
1946
- "id": "resource.template.variables",
1947
- "label": "Template variables",
1948
- "optional": false,
1949
- "feel": "required",
2022
+ "label": "Parent folder ID",
2023
+ "description": "Enter ID of the parent folder where new file will be created",
1950
2024
  "group": "operationDetails",
2025
+ "type": "String",
2026
+ "feel": "optional",
2027
+ "optional": true,
1951
2028
  "binding": {
1952
- "name": "resource.template.variables",
1953
- "type": "zeebe:input"
2029
+ "type": "zeebe:input",
2030
+ "name": "resource.parent"
1954
2031
  },
1955
2032
  "condition": {
1956
- "property": "resource.type",
1957
- "equals": "file",
1958
- "type": "simple"
1959
- },
1960
- "type": "String"
2033
+ "property": "resourceType",
2034
+ "equals": "file"
2035
+ }
1961
2036
  },
1962
2037
  {
1963
- "id": "resource.downloadData.fileId",
1964
- "label": "File ID",
1965
- "optional": false,
1966
- "constraints": {
1967
- "notEmpty": true
1968
- },
1969
- "feel": "optional",
2038
+ "label": "Template variables",
2039
+ "description": "Use this field to pass and update variables in your template as JSON",
1970
2040
  "group": "operationDetails",
2041
+ "type": "Text",
2042
+ "feel": "required",
1971
2043
  "binding": {
1972
- "name": "resource.downloadData.fileId",
1973
- "type": "zeebe:input"
2044
+ "type": "zeebe:input",
2045
+ "name": "resource.template.variables"
1974
2046
  },
1975
2047
  "condition": {
1976
- "property": "resource.type",
1977
- "equals": "download",
1978
- "type": "simple"
1979
- },
1980
- "type": "String"
2048
+ "property": "resourceType",
2049
+ "equals": "file"
2050
+ }
1981
2051
  },
1982
2052
  {
1983
- "id": "resource.uploadData.document",
1984
- "label": "Document",
1985
- "description": "Upload camunda document, <a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">see documentation</a>",
1986
- "optional": false,
1987
- "constraints": {
1988
- "notEmpty": true
1989
- },
1990
- "feel": "required",
2053
+ "label": "Additional properties or metadata",
2054
+ "description": "Use this field to pass additional Google Drive parameters as JSON.",
1991
2055
  "group": "operationDetails",
2056
+ "type": "Text",
2057
+ "optional": true,
2058
+ "feel": "required",
1992
2059
  "binding": {
1993
- "name": "resource.uploadData.document",
1994
- "type": "zeebe:input"
1995
- },
1996
- "condition": {
1997
- "property": "resource.type",
1998
- "equals": "upload",
1999
- "type": "simple"
2000
- },
2001
- "type": "String"
2060
+ "type": "zeebe:input",
2061
+ "name": "resource.additionalGoogleDriveProperties",
2062
+ "key": "resource.additionalGoogleDriveProperties"
2063
+ }
2002
2064
  },
2003
2065
  {
2004
- "id": "resultVariable",
2005
2066
  "label": "Result variable",
2006
- "description": "Name of variable to store the response in",
2067
+ "description": "Enter 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>",
2007
2068
  "group": "output",
2069
+ "type": "String",
2008
2070
  "binding": {
2009
- "key": "resultVariable",
2010
- "type": "zeebe:taskHeader"
2011
- },
2012
- "type": "String"
2071
+ "type": "zeebe:taskHeader",
2072
+ "key": "resultVariable"
2073
+ }
2013
2074
  },
2014
2075
  {
2015
- "id": "resultExpression",
2016
2076
  "label": "Result expression",
2017
- "description": "Expression to map the response into process variables",
2018
- "feel": "required",
2077
+ "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>",
2019
2078
  "group": "output",
2079
+ "type": "Text",
2080
+ "feel": "required",
2020
2081
  "binding": {
2021
- "key": "resultExpression",
2022
- "type": "zeebe:taskHeader"
2023
- },
2024
- "type": "Text"
2082
+ "type": "zeebe:taskHeader",
2083
+ "key": "resultExpression"
2084
+ }
2025
2085
  },
2026
2086
  {
2027
- "id": "errorExpression",
2028
2087
  "label": "Error expression",
2029
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
2088
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#bpmn-errors\" target=\"_blank\">documentation</a>",
2089
+ "group": "errors",
2090
+ "type": "Text",
2030
2091
  "feel": "required",
2031
- "group": "error",
2032
- "binding": {
2033
- "key": "errorExpression",
2034
- "type": "zeebe:taskHeader"
2035
- },
2036
- "type": "Text"
2037
- },
2038
- {
2039
- "id": "retryCount",
2040
- "label": "Retries",
2041
- "description": "Number of retries",
2042
- "value": "3",
2043
- "feel": "optional",
2044
- "group": "retries",
2045
- "binding": {
2046
- "property": "retries",
2047
- "type": "zeebe:taskDefinition"
2048
- },
2049
- "type": "String"
2050
- },
2051
- {
2052
- "id": "retryBackoff",
2053
- "label": "Retry backoff",
2054
- "description": "ISO-8601 duration to wait between retries",
2055
- "value": "PT0S",
2056
- "group": "retries",
2057
2092
  "binding": {
2058
- "key": "retryBackoff",
2059
- "type": "zeebe:taskHeader"
2060
- },
2061
- "type": "String"
2093
+ "type": "zeebe:taskHeader",
2094
+ "key": "errorExpression"
2095
+ }
2062
2096
  }
2063
2097
  ],
2064
2098
  "icon": {
2065
- "contents": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgODcuMyA3OCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxwYXRoIGQ9Im02LjYgNjYuODUgMy44NSA2LjY1Yy44IDEuNCAxLjk1IDIuNSAzLjMgMy4zbDEzLjc1LTIzLjhoLTI3LjVjMCAxLjU1LjQgMy4xIDEuMiA0LjV6IiBmaWxsPSIjMDA2NmRhIi8+Cgk8cGF0aCBkPSJtNDMuNjUgMjUtMTMuNzUtMjMuOGMtMS4zNS44LTIuNSAxLjktMy4zIDMuM2wtMjUuNCA0NGE5LjA2IDkuMDYgMCAwIDAgLTEuMiA0LjVoMjcuNXoiIGZpbGw9IiMwMGFjNDciLz4KCTxwYXRoIGQ9Im03My41NSA3Ni44YzEuMzUtLjggMi41LTEuOSAzLjMtMy4zbDEuNi0yLjc1IDcuNjUtMTMuMjVjLjgtMS40IDEuMi0yLjk1IDEuMi00LjVoLTI3LjUwMmw1Ljg1MiAxMS41eiIgZmlsbD0iI2VhNDMzNSIvPgoJPHBhdGggZD0ibTQzLjY1IDI1IDEzLjc1LTIzLjhjLTEuMzUtLjgtMi45LTEuMi00LjUtMS4yaC0xOC41Yy0xLjYgMC0zLjE1LjQ1LTQuNSAxLjJ6IiBmaWxsPSIjMDA4MzJkIi8+Cgk8cGF0aCBkPSJtNTkuOCA1M2gtMzIuM2wtMTMuNzUgMjMuOGMxLjM1LjggMi45IDEuMiA0LjUgMS4yaDUwLjhjMS42IDAgMy4xNS0uNDUgNC41LTEuMnoiIGZpbGw9IiMyNjg0ZmMiLz4KCTxwYXRoIGQ9Im03My40IDI2LjUtMTIuNy0yMmMtLjgtMS40LTEuOTUtMi41LTMuMy0zLjNsLTEzLjc1IDIzLjggMTYuMTUgMjhoMjcuNDVjMC0xLjU1LS40LTMuMS0xLjItNC41eiIgZmlsbD0iI2ZmYmEwMCIvPgo8L3N2Zz4="
2099
+ "contents": "data:image/svg+xml;utf8,%3Csvg width='18' height='18' viewBox='0 0 87.3 78' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6.6 66.85 3.85 6.65c.8 1.4 1.95 2.5 3.3 3.3l13.75-23.8h-27.5c0 1.55.4 3.1 1.2 4.5z' fill='%230066da'/%3E%3Cpath d='m43.65 25-13.75-23.8c-1.35.8-2.5 1.9-3.3 3.3l-25.4 44a9.06 9.06 0 0 0 -1.2 4.5h27.5z' fill='%2300ac47'/%3E%3Cpath d='m73.55 76.8c1.35-.8 2.5-1.9 3.3-3.3l1.6-2.75 7.65-13.25c.8-1.4 1.2-2.95 1.2-4.5h-27.502l5.852 11.5z' fill='%23ea4335'/%3E%3Cpath d='m43.65 25 13.75-23.8c-1.35-.8-2.9-1.2-4.5-1.2h-18.5c-1.6 0-3.15.45-4.5 1.2z' fill='%2300832d'/%3E%3Cpath d='m59.8 53h-32.3l-13.75 23.8c1.35.8 2.9 1.2 4.5 1.2h50.8c1.6 0 3.15-.45 4.5-1.2z' fill='%232684fc'/%3E%3Cpath d='m73.4 26.5-12.7-22c-.8-1.4-1.95-2.5-3.3-3.3l-13.75 23.8 16.15 28h27.45c0-1.55-.4-3.1-1.2-4.5z' fill='%23ffba00'/%3E%3C/svg%3E"
2066
2100
  }
2067
2101
  },
2068
2102
  {
2069
2103
  "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2070
2104
  "name": "Google Drive Outbound Connector",
2071
2105
  "id": "io.camunda.connectors.GoogleDrive.v1",
2072
- "description": "Create folder or a file from template",
2106
+ "description": "Manage Google Drive files and folders",
2107
+ "keywords": [
2108
+ "create file",
2109
+ "create file from template",
2110
+ "create folder",
2111
+ "upload file",
2112
+ "download file",
2113
+ "file storage",
2114
+ "document management"
2115
+ ],
2073
2116
  "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/googledrive/",
2074
- "version": 3,
2117
+ "version": 6,
2075
2118
  "category": {
2076
2119
  "id": "connectors",
2077
2120
  "name": "Connectors"
@@ -2080,6 +2123,9 @@
2080
2123
  "elementType": {
2081
2124
  "value": "bpmn:ServiceTask"
2082
2125
  },
2126
+ "engines": {
2127
+ "camunda": "^8.10"
2128
+ },
2083
2129
  "groups": [
2084
2130
  {
2085
2131
  "id": "authentication",
@@ -2093,6 +2139,10 @@
2093
2139
  "id": "operationDetails",
2094
2140
  "label": "Operation details"
2095
2141
  },
2142
+ {
2143
+ "id": "connector",
2144
+ "label": "Connector"
2145
+ },
2096
2146
  {
2097
2147
  "id": "output",
2098
2148
  "label": "Output mapping"
@@ -2246,6 +2296,14 @@
2246
2296
  {
2247
2297
  "name": "Create file from template",
2248
2298
  "value": "file"
2299
+ },
2300
+ {
2301
+ "name": "Upload file",
2302
+ "value": "upload"
2303
+ },
2304
+ {
2305
+ "name": "Download file",
2306
+ "value": "download"
2249
2307
  }
2250
2308
  ]
2251
2309
  },
@@ -2262,6 +2320,11 @@
2262
2320
  "name": "resource.name",
2263
2321
  "type": "zeebe:input"
2264
2322
  },
2323
+ "condition": {
2324
+ "property": "resource.type",
2325
+ "oneOf": ["folder", "file"],
2326
+ "type": "simple"
2327
+ },
2265
2328
  "type": "String"
2266
2329
  },
2267
2330
  {
@@ -2275,6 +2338,11 @@
2275
2338
  "name": "resource.parent",
2276
2339
  "type": "zeebe:input"
2277
2340
  },
2341
+ "condition": {
2342
+ "property": "resource.type",
2343
+ "oneOf": ["folder", "file", "upload"],
2344
+ "type": "simple"
2345
+ },
2278
2346
  "type": "String"
2279
2347
  },
2280
2348
  {
@@ -2332,385 +2400,317 @@
2332
2400
  "type": "String"
2333
2401
  },
2334
2402
  {
2335
- "id": "resultVariable",
2336
- "label": "Result variable",
2337
- "description": "Name of variable to store the response in",
2338
- "group": "output",
2403
+ "id": "resource.downloadData.fileId",
2404
+ "label": "File ID",
2405
+ "optional": false,
2406
+ "constraints": {
2407
+ "notEmpty": true
2408
+ },
2409
+ "feel": "optional",
2410
+ "group": "operationDetails",
2339
2411
  "binding": {
2340
- "key": "resultVariable",
2341
- "type": "zeebe:taskHeader"
2412
+ "name": "resource.downloadData.fileId",
2413
+ "type": "zeebe:input"
2414
+ },
2415
+ "condition": {
2416
+ "property": "resource.type",
2417
+ "equals": "download",
2418
+ "type": "simple"
2342
2419
  },
2343
2420
  "type": "String"
2344
2421
  },
2345
2422
  {
2346
- "id": "resultExpression",
2347
- "label": "Result expression",
2348
- "description": "Expression to map the response into process variables",
2349
- "feel": "required",
2350
- "group": "output",
2423
+ "id": "resource.uploadData.document_documentSource",
2424
+ "label": "Document source",
2425
+ "description": "Upload camunda document, <a href=\"https://docs.camunda.io/docs/apis-tools/camunda-api-rest/specifications/upload-document-alpha/\">see documentation</a>",
2426
+ "value": "camunda",
2427
+ "group": "operationDetails",
2351
2428
  "binding": {
2352
- "key": "resultExpression",
2353
- "type": "zeebe:taskHeader"
2354
- },
2355
- "type": "Text"
2356
- },
2357
- {
2358
- "id": "errorExpression",
2359
- "label": "Error expression",
2360
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
2361
- "feel": "required",
2362
- "group": "error",
2363
- "binding": {
2364
- "key": "errorExpression",
2365
- "type": "zeebe:taskHeader"
2366
- },
2367
- "type": "Text"
2368
- },
2369
- {
2370
- "id": "retryCount",
2371
- "label": "Retries",
2372
- "description": "Number of retries",
2373
- "value": "3",
2374
- "feel": "optional",
2375
- "group": "retries",
2376
- "binding": {
2377
- "property": "retries",
2378
- "type": "zeebe:taskDefinition"
2429
+ "name": "resource.uploadData.document_documentSource",
2430
+ "type": "zeebe:input"
2379
2431
  },
2380
- "type": "String"
2381
- },
2382
- {
2383
- "id": "retryBackoff",
2384
- "label": "Retry backoff",
2385
- "description": "ISO-8601 duration to wait between retries",
2386
- "value": "PT0S",
2387
- "feel": "optional",
2388
- "group": "retries",
2389
- "binding": {
2390
- "key": "retryBackoff",
2391
- "type": "zeebe:taskHeader"
2432
+ "condition": {
2433
+ "property": "resource.type",
2434
+ "equals": "upload",
2435
+ "type": "simple"
2392
2436
  },
2393
- "type": "String"
2394
- }
2395
- ],
2396
- "icon": {
2397
- "contents": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgODcuMyA3OCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxwYXRoIGQ9Im02LjYgNjYuODUgMy44NSA2LjY1Yy44IDEuNCAxLjk1IDIuNSAzLjMgMy4zbDEzLjc1LTIzLjhoLTI3LjVjMCAxLjU1LjQgMy4xIDEuMiA0LjV6IiBmaWxsPSIjMDA2NmRhIi8+Cgk8cGF0aCBkPSJtNDMuNjUgMjUtMTMuNzUtMjMuOGMtMS4zNS44LTIuNSAxLjktMy4zIDMuM2wtMjUuNCA0NGE5LjA2IDkuMDYgMCAwIDAgLTEuMiA0LjVoMjcuNXoiIGZpbGw9IiMwMGFjNDciLz4KCTxwYXRoIGQ9Im03My41NSA3Ni44YzEuMzUtLjggMi41LTEuOSAzLjMtMy4zbDEuNi0yLjc1IDcuNjUtMTMuMjVjLjgtMS40IDEuMi0yLjk1IDEuMi00LjVoLTI3LjUwMmw1Ljg1MiAxMS41eiIgZmlsbD0iI2VhNDMzNSIvPgoJPHBhdGggZD0ibTQzLjY1IDI1IDEzLjc1LTIzLjhjLTEuMzUtLjgtMi45LTEuMi00LjUtMS4yaC0xOC41Yy0xLjYgMC0zLjE1LjQ1LTQuNSAxLjJ6IiBmaWxsPSIjMDA4MzJkIi8+Cgk8cGF0aCBkPSJtNTkuOCA1M2gtMzIuM2wtMTMuNzUgMjMuOGMxLjM1LjggMi45IDEuMiA0LjUgMS4yaDUwLjhjMS42IDAgMy4xNS0uNDUgNC41LTEuMnoiIGZpbGw9IiMyNjg0ZmMiLz4KCTxwYXRoIGQ9Im03My40IDI2LjUtMTIuNy0yMmMtLjgtMS40LTEuOTUtMi41LTMuMy0zLjNsLTEzLjc1IDIzLjggMTYuMTUgMjhoMjcuNDVjMC0xLjU1LS40LTMuMS0xLjItNC41eiIgZmlsbD0iI2ZmYmEwMCIvPgo8L3N2Zz4="
2398
- },
2399
- "engines": {
2400
- "camunda": "^8.5"
2401
- }
2402
- },
2403
- {
2404
- "$schema": "https://unpkg.com/@camunda/zeebe-element-templates-json-schema/resources/schema.json",
2405
- "name": "Google Drive connector",
2406
- "id": "io.camunda.connectors.GoogleDrive.v1",
2407
- "version": 1,
2408
- "documentationRef": "https://docs.camunda.io/docs/components/connectors/out-of-the-box-connectors/googledrive/",
2409
- "description": "Create folder or a file from template",
2410
- "category": {
2411
- "id": "connectors",
2412
- "name": "Connectors"
2413
- },
2414
- "appliesTo": ["bpmn:Task"],
2415
- "elementType": {
2416
- "value": "bpmn:ServiceTask"
2417
- },
2418
- "groups": [
2419
- {
2420
- "id": "authentication",
2421
- "label": "Authentication"
2422
- },
2423
- {
2424
- "id": "operation",
2425
- "label": "Select operation"
2426
- },
2427
- {
2428
- "id": "operationDetails",
2429
- "label": "Operation details"
2430
- },
2431
- {
2432
- "id": "output",
2433
- "label": "Output mapping"
2434
- },
2435
- {
2436
- "id": "errors",
2437
- "label": "Error handling"
2438
- }
2439
- ],
2440
- "properties": [
2441
- {
2442
- "type": "Hidden",
2443
- "value": "io.camunda:google-drive:1",
2444
- "binding": {
2445
- "type": "zeebe:taskDefinition",
2446
- "property": "type"
2447
- }
2448
- },
2449
- {
2450
- "id": "authenticationType",
2451
- "label": "Type",
2452
- "group": "authentication",
2453
2437
  "type": "Dropdown",
2454
- "value": "bearer",
2455
2438
  "choices": [
2456
2439
  {
2457
- "name": "Bearer token",
2458
- "value": "bearer"
2440
+ "name": "Camunda Document",
2441
+ "value": "camunda"
2459
2442
  },
2460
2443
  {
2461
- "name": "Refresh token",
2462
- "value": "refresh"
2444
+ "name": "Inline Content",
2445
+ "value": "inline"
2446
+ },
2447
+ {
2448
+ "name": "From URL",
2449
+ "value": "external"
2463
2450
  }
2464
- ],
2465
- "binding": {
2466
- "type": "zeebe:input",
2467
- "name": "authentication.authType",
2468
- "key": "authentication.authType"
2469
- }
2451
+ ]
2470
2452
  },
2471
2453
  {
2472
- "label": "Bearer token",
2473
- "description": "Enter Google API Bearer token that is authorized to interact with desired Drive",
2474
- "group": "authentication",
2475
- "type": "String",
2476
- "binding": {
2477
- "type": "zeebe:input",
2478
- "name": "authentication.bearerToken"
2479
- },
2454
+ "id": "resource.uploadData.document_camundaReference",
2455
+ "label": "Camunda document",
2480
2456
  "constraints": {
2481
2457
  "notEmpty": true
2482
2458
  },
2483
- "condition": {
2484
- "property": "authenticationType",
2485
- "equals": "bearer"
2486
- }
2487
- },
2488
- {
2489
- "label": "Client ID",
2490
- "description": "Enter Google API Client ID",
2491
- "group": "authentication",
2492
- "type": "String",
2459
+ "feel": "required",
2460
+ "group": "operationDetails",
2493
2461
  "binding": {
2494
- "type": "zeebe:input",
2495
- "name": "authentication.oauthClientId"
2496
- },
2497
- "constraints": {
2498
- "notEmpty": true
2462
+ "name": "resource.uploadData.document_camundaReference",
2463
+ "type": "zeebe:input"
2499
2464
  },
2500
2465
  "condition": {
2501
- "property": "authenticationType",
2502
- "equals": "refresh"
2503
- }
2466
+ "allMatch": [
2467
+ {
2468
+ "property": "resource.type",
2469
+ "equals": "upload",
2470
+ "type": "simple"
2471
+ },
2472
+ {
2473
+ "property": "resource.uploadData.document_documentSource",
2474
+ "equals": "camunda",
2475
+ "type": "simple"
2476
+ }
2477
+ ]
2478
+ },
2479
+ "type": "String"
2504
2480
  },
2505
2481
  {
2506
- "label": "Client secret",
2507
- "description": "Enter Google API client Secret",
2508
- "group": "authentication",
2509
- "type": "String",
2510
- "binding": {
2511
- "type": "zeebe:input",
2512
- "name": "authentication.oauthClientSecret"
2513
- },
2482
+ "id": "resource.uploadData.document_inline_content",
2483
+ "label": "Content",
2514
2484
  "constraints": {
2515
2485
  "notEmpty": true
2516
2486
  },
2517
- "condition": {
2518
- "property": "authenticationType",
2519
- "equals": "refresh"
2520
- }
2521
- },
2522
- {
2523
- "label": "Refresh token",
2524
- "description": "Enter Google API refresh token that is authorized to interact with desired Drive",
2525
- "group": "authentication",
2526
- "type": "String",
2487
+ "feel": "optional",
2488
+ "group": "operationDetails",
2527
2489
  "binding": {
2528
- "type": "zeebe:input",
2529
- "name": "authentication.oauthRefreshToken"
2530
- },
2531
- "constraints": {
2532
- "notEmpty": true
2490
+ "name": "resource.uploadData.document_inline_content",
2491
+ "type": "zeebe:input"
2533
2492
  },
2534
2493
  "condition": {
2535
- "property": "authenticationType",
2536
- "equals": "refresh"
2537
- }
2538
- },
2539
- {
2540
- "id": "resourceType",
2541
- "group": "operation",
2542
- "type": "Dropdown",
2543
- "value": "folder",
2544
- "choices": [
2545
- {
2546
- "name": "Create folder",
2547
- "value": "folder"
2548
- },
2549
- {
2550
- "name": "Create file from template",
2551
- "value": "file"
2552
- }
2553
- ],
2554
- "binding": {
2555
- "type": "zeebe:input",
2556
- "name": "resource.type",
2557
- "key": "resource.type"
2558
- }
2494
+ "allMatch": [
2495
+ {
2496
+ "property": "resource.type",
2497
+ "equals": "upload",
2498
+ "type": "simple"
2499
+ },
2500
+ {
2501
+ "property": "resource.uploadData.document_documentSource",
2502
+ "equals": "inline",
2503
+ "type": "simple"
2504
+ }
2505
+ ]
2506
+ },
2507
+ "type": "String"
2559
2508
  },
2560
2509
  {
2510
+ "id": "resource.uploadData.document_inline_fileName",
2561
2511
  "label": "File name",
2562
- "description": "Enter name for your file",
2563
- "group": "operationDetails",
2564
- "type": "String",
2565
2512
  "feel": "optional",
2513
+ "group": "operationDetails",
2566
2514
  "binding": {
2567
- "type": "zeebe:input",
2568
- "name": "resource.name"
2569
- },
2570
- "constraints": {
2571
- "notEmpty": true,
2572
- "maxLength": 255
2515
+ "name": "resource.uploadData.document_inline_fileName",
2516
+ "type": "zeebe:input"
2573
2517
  },
2574
2518
  "condition": {
2575
- "property": "resourceType",
2576
- "equals": "file"
2577
- }
2519
+ "allMatch": [
2520
+ {
2521
+ "property": "resource.type",
2522
+ "equals": "upload",
2523
+ "type": "simple"
2524
+ },
2525
+ {
2526
+ "property": "resource.uploadData.document_documentSource",
2527
+ "equals": "inline",
2528
+ "type": "simple"
2529
+ }
2530
+ ]
2531
+ },
2532
+ "type": "String"
2578
2533
  },
2579
2534
  {
2580
- "label": "Folder name",
2581
- "description": "Enter name for your folder",
2582
- "group": "operationDetails",
2583
- "type": "String",
2535
+ "id": "resource.uploadData.document_inline_contentType",
2536
+ "label": "Content type",
2584
2537
  "feel": "optional",
2538
+ "group": "operationDetails",
2585
2539
  "binding": {
2586
- "type": "zeebe:input",
2587
- "name": "resource.name"
2588
- },
2589
- "constraints": {
2590
- "notEmpty": true,
2591
- "maxLength": 255
2540
+ "name": "resource.uploadData.document_inline_contentType",
2541
+ "type": "zeebe:input"
2592
2542
  },
2593
2543
  "condition": {
2594
- "property": "resourceType",
2595
- "equals": "folder"
2596
- }
2544
+ "allMatch": [
2545
+ {
2546
+ "property": "resource.type",
2547
+ "equals": "upload",
2548
+ "type": "simple"
2549
+ },
2550
+ {
2551
+ "property": "resource.uploadData.document_documentSource",
2552
+ "equals": "inline",
2553
+ "type": "simple"
2554
+ }
2555
+ ]
2556
+ },
2557
+ "type": "String"
2597
2558
  },
2598
2559
  {
2599
- "label": "Template ID",
2600
- "description": "Enter ID of the template you are creating a file from",
2601
- "group": "operationDetails",
2602
- "type": "String",
2603
- "feel": "optional",
2604
- "binding": {
2605
- "type": "zeebe:input",
2606
- "name": "resource.template.id"
2607
- },
2560
+ "id": "resource.uploadData.document_external_url",
2561
+ "label": "URL",
2608
2562
  "constraints": {
2609
2563
  "notEmpty": true
2610
2564
  },
2565
+ "feel": "optional",
2566
+ "group": "operationDetails",
2567
+ "binding": {
2568
+ "name": "resource.uploadData.document_external_url",
2569
+ "type": "zeebe:input"
2570
+ },
2611
2571
  "condition": {
2612
- "property": "resourceType",
2613
- "equals": "file"
2614
- }
2572
+ "allMatch": [
2573
+ {
2574
+ "property": "resource.type",
2575
+ "equals": "upload",
2576
+ "type": "simple"
2577
+ },
2578
+ {
2579
+ "property": "resource.uploadData.document_documentSource",
2580
+ "equals": "external",
2581
+ "type": "simple"
2582
+ }
2583
+ ]
2584
+ },
2585
+ "type": "String"
2615
2586
  },
2616
2587
  {
2617
- "label": "Parent folder ID",
2618
- "description": "Enter ID of the parent folder where new folder will be created",
2619
- "group": "operationDetails",
2620
- "type": "String",
2588
+ "id": "resource.uploadData.document_external_fileName",
2589
+ "label": "File name",
2621
2590
  "feel": "optional",
2622
- "optional": true,
2591
+ "group": "operationDetails",
2623
2592
  "binding": {
2624
- "type": "zeebe:input",
2625
- "name": "resource.parent"
2593
+ "name": "resource.uploadData.document_external_fileName",
2594
+ "type": "zeebe:input"
2626
2595
  },
2627
2596
  "condition": {
2628
- "property": "resourceType",
2629
- "equals": "folder"
2630
- }
2597
+ "allMatch": [
2598
+ {
2599
+ "property": "resource.type",
2600
+ "equals": "upload",
2601
+ "type": "simple"
2602
+ },
2603
+ {
2604
+ "property": "resource.uploadData.document_documentSource",
2605
+ "equals": "external",
2606
+ "type": "simple"
2607
+ }
2608
+ ]
2609
+ },
2610
+ "type": "String"
2631
2611
  },
2632
2612
  {
2633
- "label": "Parent folder ID",
2634
- "description": "Enter ID of the parent folder where new file will be created",
2613
+ "id": "resource.uploadData.document__composer",
2614
+ "value": "=if document_documentSource = \"camunda\" then document_camundaReference else if document_documentSource = \"inline\" then { \"camunda.document.type\": \"inline\", content: document_inline_content, name: document_inline_fileName, contentType: document_inline_contentType } else if document_documentSource = \"external\" then { \"camunda.document.type\": \"external\", url: document_external_url, name: document_external_fileName } else null",
2635
2615
  "group": "operationDetails",
2636
- "type": "String",
2637
- "feel": "optional",
2638
- "optional": true,
2639
2616
  "binding": {
2640
- "type": "zeebe:input",
2641
- "name": "resource.parent"
2617
+ "name": "resource.uploadData.document",
2618
+ "type": "zeebe:input"
2642
2619
  },
2643
2620
  "condition": {
2644
- "property": "resourceType",
2645
- "equals": "file"
2646
- }
2621
+ "property": "resource.type",
2622
+ "equals": "upload",
2623
+ "type": "simple"
2624
+ },
2625
+ "type": "Hidden"
2647
2626
  },
2648
2627
  {
2649
- "label": "Template variables",
2650
- "description": "Use this field to pass and update variables in your template as JSON",
2651
- "group": "operationDetails",
2652
- "type": "Text",
2653
- "feel": "required",
2628
+ "id": "version",
2629
+ "label": "Version",
2630
+ "description": "Version of the element template",
2631
+ "value": "6",
2632
+ "group": "connector",
2654
2633
  "binding": {
2655
- "type": "zeebe:input",
2656
- "name": "resource.template.variables"
2634
+ "key": "elementTemplateVersion",
2635
+ "type": "zeebe:taskHeader"
2657
2636
  },
2658
- "condition": {
2659
- "property": "resourceType",
2660
- "equals": "file"
2661
- }
2637
+ "type": "Hidden"
2662
2638
  },
2663
2639
  {
2664
- "label": "Additional properties or metadata",
2665
- "description": "Use this field to pass additional Google Drive parameters as JSON.",
2666
- "group": "operationDetails",
2667
- "type": "Text",
2668
- "optional": true,
2669
- "feel": "required",
2640
+ "id": "id",
2641
+ "label": "ID",
2642
+ "description": "ID of the element template",
2643
+ "value": "io.camunda.connectors.GoogleDrive.v1",
2644
+ "group": "connector",
2670
2645
  "binding": {
2671
- "type": "zeebe:input",
2672
- "name": "resource.additionalGoogleDriveProperties",
2673
- "key": "resource.additionalGoogleDriveProperties"
2674
- }
2646
+ "key": "elementTemplateId",
2647
+ "type": "zeebe:taskHeader"
2648
+ },
2649
+ "type": "Hidden"
2675
2650
  },
2676
2651
  {
2652
+ "id": "resultVariable",
2677
2653
  "label": "Result variable",
2678
- "description": "Enter 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>",
2654
+ "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>.",
2679
2655
  "group": "output",
2680
- "type": "String",
2681
2656
  "binding": {
2682
- "type": "zeebe:taskHeader",
2683
- "key": "resultVariable"
2684
- }
2657
+ "key": "resultVariable",
2658
+ "type": "zeebe:taskHeader"
2659
+ },
2660
+ "type": "String"
2685
2661
  },
2686
2662
  {
2663
+ "id": "resultExpression",
2687
2664
  "label": "Result expression",
2688
- "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>",
2689
- "group": "output",
2690
- "type": "Text",
2665
+ "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>.",
2691
2666
  "feel": "required",
2667
+ "group": "output",
2692
2668
  "binding": {
2693
- "type": "zeebe:taskHeader",
2694
- "key": "resultExpression"
2695
- }
2669
+ "key": "resultExpression",
2670
+ "type": "zeebe:taskHeader"
2671
+ },
2672
+ "type": "Text"
2696
2673
  },
2697
2674
  {
2675
+ "id": "errorExpression",
2698
2676
  "label": "Error expression",
2699
- "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/#bpmn-errors\" target=\"_blank\">documentation</a>",
2700
- "group": "errors",
2701
- "type": "Text",
2677
+ "description": "Expression to handle errors. Details in the <a href=\"https://docs.camunda.io/docs/components/connectors/use-connectors/\" target=\"_blank\">documentation</a>.",
2702
2678
  "feel": "required",
2679
+ "group": "error",
2703
2680
  "binding": {
2704
- "type": "zeebe:taskHeader",
2705
- "key": "errorExpression"
2706
- }
2681
+ "key": "errorExpression",
2682
+ "type": "zeebe:taskHeader"
2683
+ },
2684
+ "type": "Text"
2685
+ },
2686
+ {
2687
+ "id": "retryCount",
2688
+ "label": "Retries",
2689
+ "description": "Number of retries",
2690
+ "value": "3",
2691
+ "feel": "optional",
2692
+ "group": "retries",
2693
+ "binding": {
2694
+ "property": "retries",
2695
+ "type": "zeebe:taskDefinition"
2696
+ },
2697
+ "type": "String"
2698
+ },
2699
+ {
2700
+ "id": "retryBackoff",
2701
+ "label": "Retry backoff",
2702
+ "description": "ISO-8601 duration to wait between retries",
2703
+ "value": "PT0S",
2704
+ "group": "retries",
2705
+ "binding": {
2706
+ "key": "retryBackoff",
2707
+ "type": "zeebe:taskHeader"
2708
+ },
2709
+ "type": "String"
2707
2710
  }
2708
2711
  ],
2709
2712
  "icon": {
2710
- "contents": "data:image/svg+xml;utf8,%3Csvg width='18' height='18' viewBox='0 0 87.3 78' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6.6 66.85 3.85 6.65c.8 1.4 1.95 2.5 3.3 3.3l13.75-23.8h-27.5c0 1.55.4 3.1 1.2 4.5z' fill='%230066da'/%3E%3Cpath d='m43.65 25-13.75-23.8c-1.35.8-2.5 1.9-3.3 3.3l-25.4 44a9.06 9.06 0 0 0 -1.2 4.5h27.5z' fill='%2300ac47'/%3E%3Cpath d='m73.55 76.8c1.35-.8 2.5-1.9 3.3-3.3l1.6-2.75 7.65-13.25c.8-1.4 1.2-2.95 1.2-4.5h-27.502l5.852 11.5z' fill='%23ea4335'/%3E%3Cpath d='m43.65 25 13.75-23.8c-1.35-.8-2.9-1.2-4.5-1.2h-18.5c-1.6 0-3.15.45-4.5 1.2z' fill='%2300832d'/%3E%3Cpath d='m59.8 53h-32.3l-13.75 23.8c1.35.8 2.9 1.2 4.5 1.2h50.8c1.6 0 3.15-.45 4.5-1.2z' fill='%232684fc'/%3E%3Cpath d='m73.4 26.5-12.7-22c-.8-1.4-1.95-2.5-3.3-3.3l-13.75 23.8 16.15 28h27.45c0-1.55-.4-3.1-1.2-4.5z' fill='%23ffba00'/%3E%3C/svg%3E"
2711
- },
2712
- "engines": {
2713
- "camunda": "^8.2"
2713
+ "contents": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgODcuMyA3OCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxwYXRoIGQ9Im02LjYgNjYuODUgMy44NSA2LjY1Yy44IDEuNCAxLjk1IDIuNSAzLjMgMy4zbDEzLjc1LTIzLjhoLTI3LjVjMCAxLjU1LjQgMy4xIDEuMiA0LjV6IiBmaWxsPSIjMDA2NmRhIi8+Cgk8cGF0aCBkPSJtNDMuNjUgMjUtMTMuNzUtMjMuOGMtMS4zNS44LTIuNSAxLjktMy4zIDMuM2wtMjUuNCA0NGE5LjA2IDkuMDYgMCAwIDAgLTEuMiA0LjVoMjcuNXoiIGZpbGw9IiMwMGFjNDciLz4KCTxwYXRoIGQ9Im03My41NSA3Ni44YzEuMzUtLjggMi41LTEuOSAzLjMtMy4zbDEuNi0yLjc1IDcuNjUtMTMuMjVjLjgtMS40IDEuMi0yLjk1IDEuMi00LjVoLTI3LjUwMmw1Ljg1MiAxMS41eiIgZmlsbD0iI2VhNDMzNSIvPgoJPHBhdGggZD0ibTQzLjY1IDI1IDEzLjc1LTIzLjhjLTEuMzUtLjgtMi45LTEuMi00LjUtMS4yaC0xOC41Yy0xLjYgMC0zLjE1LjQ1LTQuNSAxLjJ6IiBmaWxsPSIjMDA4MzJkIi8+Cgk8cGF0aCBkPSJtNTkuOCA1M2gtMzIuM2wtMTMuNzUgMjMuOGMxLjM1LjggMi45IDEuMiA0LjUgMS4yaDUwLjhjMS42IDAgMy4xNS0uNDUgNC41LTEuMnoiIGZpbGw9IiMyNjg0ZmMiLz4KCTxwYXRoIGQ9Im03My40IDI2LjUtMTIuNy0yMmMtLjgtMS40LTEuOTUtMi41LTMuMy0zLjNsLTEzLjc1IDIzLjggMTYuMTUgMjhoMjcuNDVjMC0xLjU1LS40LTMuMS0xLjItNC41eiIgZmlsbD0iI2ZmYmEwMCIvPgo8L3N2Zz4="
2714
2714
  }
2715
2715
  }
2716
2716
  ]