feat(orchestration): add Orchestration Cluster API connector template#7375
feat(orchestration): add Orchestration Cluster API connector template#7375crobbins215 wants to merge 1 commit into
Conversation
Read-only element template that wraps the Camunda 8 Orchestration Cluster
REST API v2. Replaces the deprecated Operate connector. Supports Search
(POST /{entity}/search) and Get by key (GET /{entity}/{key}) across process
instances, definitions, element instances, incidents, variables, user tasks,
jobs, decision instances/definitions/requirements, batch operations, message
subscriptions, audit logs, authorizations, groups, roles, tenants, and
mapping rules. SaaS and Self-Managed deployment with OAuth 2.0 client
credentials. Folder mirrors the operate connector layout.
Related to #7374
|
|
|
Tested with Uros (Consultant) and also tested all endpoints 20/20 tasks succeeded. Process completed end-to-end. No incidents.
|
There was a problem hiding this comment.
Pull request overview
Adds a new first-party, JSON-only element template that wraps the existing io.camunda:http-json:1 connector to expose the read-only Camunda 8 Orchestration Cluster REST API (v2). Mirrors the layout of the deprecated connectors/operate/ connector and is positioned as its replacement.
Changes:
- Add
connectors/orchestration/withREADME.mdand Self-Managed Free EditionLICENSE.txt. - Add current
element-templates/orchestration-connector.json(v1) covering 20 v2 entities, SaaS + Self-Managed, OAuth client-credentials, search + get-by-key, cursor/offset pagination, sensible defaults (limit 100, 20s timeout). - Add
element-templates/versioned/orchestration-connector-1.jsonas a v1 snapshot of the same template.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
connectors/orchestration/README.md |
User-facing docs listing supported entities, operations, and requirements. |
connectors/orchestration/LICENSE.txt |
Camunda Self-Managed Free Edition license, matching other first-party connectors. |
connectors/orchestration/element-templates/orchestration-connector.json |
Current element template, version 1, bound to io.camunda:http-json:1. |
connectors/orchestration/element-templates/versioned/orchestration-connector-1.json |
Versioned snapshot — duplicates the current template at the same id/version, which conflicts with the element-template validator's multi-file rules and the release bundling script's flat-file naming. |
| "id": "io.camunda.connectors.CamundaOrchestrationCluster.v1", | ||
| "version": 1, |
| { | ||
| "label": "Region", | ||
| "group": "cluster", | ||
| "type": "String", | ||
| "feel": "optional", | ||
| "binding": { | ||
| "type": "zeebe:input", | ||
| "name": "authentication.internal_region" | ||
| }, | ||
| "constraints": { | ||
| "notEmpty": true | ||
| }, | ||
| "condition": { | ||
| "property": "authentication.internal_deployment_type", | ||
| "equals": "saas" | ||
| }, | ||
| "tooltip": "SaaS cluster region, e.g. <code>bru-2</code>, <code>dsm-1</code>. Visible in the cluster overview in Console." | ||
| }, | ||
| { | ||
| "label": "Cluster ID", | ||
| "group": "cluster", | ||
| "type": "String", | ||
| "feel": "optional", | ||
| "binding": { | ||
| "type": "zeebe:input", | ||
| "name": "authentication.internal_cluster" | ||
| }, | ||
| "constraints": { | ||
| "notEmpty": true | ||
| }, | ||
| "condition": { | ||
| "property": "authentication.internal_deployment_type", | ||
| "equals": "saas" | ||
| }, | ||
| "tooltip": "SaaS cluster ID. See <a href=\"https://docs.camunda.io/docs/guides/setup-client-connection-credentials\" target=\"_blank\">creating API client credentials</a>." | ||
| }, |
| "id": "authentication.operate_base_url", | ||
| "group": "cluster", | ||
| "binding": { | ||
| "type": "zeebe:input", | ||
| "name": "authentication.operate_base_url" |
| "label": "Key / ID", | ||
| "group": "parameters", | ||
| "type": "String", | ||
| "feel": "optional", | ||
| "binding": { | ||
| "type": "zeebe:input", | ||
| "name": "input.internal_key" | ||
| }, | ||
| "constraints": { | ||
| "notEmpty": true, | ||
| "pattern": { | ||
| "value": "^(=.*|[A-Za-z0-9_.@-]+)$", | ||
| "message": "Numeric key, identifier (letters, digits, _ . @ -), or FEEL expression starting with =" | ||
| } | ||
| }, | ||
| "condition": { | ||
| "property": "input.internal_operation", | ||
| "equals": "/" | ||
| }, | ||
| "tooltip": "Entity identifier. Numeric key (processInstanceKey, incidentKey, variableKey, processDefinitionKey, elementInstanceKey, userTaskKey, jobKey, decisionDefinitionKey, decisionRequirementsKey, decisionEvaluationInstanceKey, batchOperationKey, authorizationKey, auditLogKey) or string ID (groupId, roleId, tenantId, mappingRuleId). Path separators are not allowed." |
Description
Adds a new first-party element template connector that wraps the Camunda 8 Orchestration Cluster REST API v2. This is the modern, read-only replacement for the deprecated Operate connector.
Layout mirrors the existing
connectors/operateconnector:What the template offers
GET /{entity}/{key}andPOST /{entity}/search. No state-changing operations.^8.9.Reuses the existing
io.camunda:http-json:1outbound connector under the hood — no Java code introduced.Related issues
closes #7374
Checklist
release, as this branch will be rebased onto main before the next release. Example backport labels:
backport stable/8.8: for changes that should be included in the next 8.8.x release.backport release-8.8.7: for changes that should be included in the specific release 8.8.7, and thisrelease has already been created. The release branch will be merged back into stable/8.8 later, so the change
will be included in future 8.8.x releases as well.