Skip to content

feat: Add default result expressions for selected connectors#6655

Merged
jan-ladleif merged 9 commits into
mainfrom
6311-add-default-result-expressions
Mar 31, 2026
Merged

feat: Add default result expressions for selected connectors#6655
jan-ladleif merged 9 commits into
mainfrom
6311-add-default-result-expressions

Conversation

@jan-ladleif
Copy link
Copy Markdown
Contributor

@jan-ladleif jan-ladleif commented Mar 12, 2026

Description

This PR adds default values for resultExpression using the defaultResultExpression annotation for selected connectors. The default values were chosen based on the actual data a user should expect when using them. As discussed in the team (https://github.com/camunda/team-connectors/issues/1183), using FEEL comments some concrete examples were also indicated.

The PR covers the following connectors and adds the following defaults:

http/polling

{
  myResponseBody: response.body
  // Use FEEL to extract values, e.g.,:
  // myUserId: response.body.post.userId
}

http/rest

{
  myResponseBody: response.body
  // Use FEEL to extract values, e.g.,:
  // myUserId: response.body.post.userId
}

webhook

{
  myRequestBody: request.body
  // Use FEEL to extract values, e.g.,:
  // myMessage: request.body.message
}

slack (inbound)

{
  myRequestBody: request.body
  // Use FEEL to extract values, e.g.,:
  // myUserId: request.body.event.user
}

slack (outbound)

{
  myResponse: response
  // Use FEEL to extract values depending on message
  // type, e.g.,: myMessage: response.message.text
}

Related issues

closes #6311

Checklist

  • Backport labels are added if these code changes should be backported. No backport label is added to the latest
    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.
    • or backport release-8.8.7: for changes that should be included in the specific release 8.8.7, and this
      release 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.
  • Tests/Integration tests for the changes have been added if applicable.

@jan-ladleif jan-ladleif changed the title Add default result expressions for selected connectors feat: Add default result expressions for selected connectors Mar 12, 2026
@jan-ladleif jan-ladleif marked this pull request as ready for review March 12, 2026 19:21
@jan-ladleif jan-ladleif requested a review from a team as a code owner March 12, 2026 19:21
Copilot AI review requested due to automatic review settings March 12, 2026 19:21
@jan-ladleif jan-ladleif added the qa:required Will trigger the QA workflow label Mar 12, 2026
@github-actions github-actions Bot temporarily deployed to connectors-6311-add-defaul-c8sm March 12, 2026 19:22 Destroyed
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds default resultExpression values (via defaultResultExpression) to several connectors so users get meaningful output mappings by default in generated element templates.

Changes:

  • Added defaultResultExpression to Webhook, Slack (inbound/outbound), HTTP REST, and HTTP Polling connectors and bumped template versions.
  • Updated corresponding element templates (standard + hybrid) to include a default resultExpression value and incremented versions.
  • Added version-pinned copies of previous element template versions under element-templates/versioned/.

Reviewed changes

Copilot reviewed 40 out of 40 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
connectors/webhook/src/main/java/io/camunda/connector/inbound/HttpWebhookExecutable.java Bumps template version and adds a default result expression for inbound webhook output mapping.
connectors/webhook/element-templates/webhook-connector-start-message.json Bumps template version and sets a default resultExpression value.
connectors/webhook/element-templates/webhook-connector-receive.json Bumps template version and sets a default resultExpression value.
connectors/webhook/element-templates/webhook-connector-intermediate.json Bumps template version and sets a default resultExpression value.
connectors/webhook/element-templates/webhook-connector-boundary.json Bumps template version and sets a default resultExpression value.
connectors/webhook/element-templates/versioned/webhook-connector-start-message-13.json Adds versioned copy of the previous template version.
connectors/webhook/element-templates/versioned/webhook-connector-receive-13.json Adds versioned copy of the previous template version.
connectors/webhook/element-templates/versioned/webhook-connector-intermediate-13.json Adds versioned copy of the previous template version.
connectors/webhook/element-templates/versioned/webhook-connector-boundary-13.json Adds versioned copy of the previous template version.
connectors/webhook/element-templates/hybrid/webhook-connector-start-message-hybrid.json Hybrid template version bump + default resultExpression value.
connectors/webhook/element-templates/hybrid/webhook-connector-receive-hybrid.json Hybrid template version bump + default resultExpression value.
connectors/webhook/element-templates/hybrid/webhook-connector-intermediate-hybrid.json Hybrid template version bump + default resultExpression value.
connectors/webhook/element-templates/hybrid/webhook-connector-boundary-hybrid.json Hybrid template version bump + default resultExpression value.
connectors/slack/src/main/java/io/camunda/connector/slack/outbound/SlackFunction.java Bumps template version and adds a default result expression for Slack outbound output mapping.
connectors/slack/src/main/java/io/camunda/connector/slack/inbound/SlackInboundWebhookExecutable.java Bumps template version and adds a default result expression for Slack inbound output mapping.
connectors/slack/element-templates/versioned/slack-outbound-connector-8.json Adds versioned copy of the previous Slack outbound template version.
connectors/slack/element-templates/versioned/slack-inbound-receive-7.json Adds versioned copy of the previous Slack inbound receive template version.
connectors/slack/element-templates/versioned/slack-inbound-message-start-7.json Adds versioned copy of the previous Slack inbound message start template version.
connectors/slack/element-templates/versioned/slack-inbound-intermediate-7.json Adds versioned copy of the previous Slack inbound intermediate template version.
connectors/slack/element-templates/versioned/slack-inbound-boundary-7.json Adds versioned copy of the previous Slack inbound boundary template version.
connectors/slack/element-templates/slack-outbound-connector.json Bumps version, updates internal template version header value, and sets default resultExpression.
connectors/slack/element-templates/slack-inbound-receive.json Bumps version and sets default resultExpression.
connectors/slack/element-templates/slack-inbound-message-start.json Bumps version and sets default resultExpression.
connectors/slack/element-templates/slack-inbound-intermediate.json Bumps version and sets default resultExpression.
connectors/slack/element-templates/slack-inbound-boundary.json Bumps version and sets default resultExpression.
connectors/slack/element-templates/hybrid/slack-outbound-connector-hybrid.json Hybrid template version bump + internal version header update + default resultExpression.
connectors/slack/element-templates/hybrid/slack-inbound-receive-hybrid.json Hybrid template version bump + default resultExpression.
connectors/slack/element-templates/hybrid/slack-inbound-message-start-hybrid.json Hybrid template version bump + default resultExpression.
connectors/slack/element-templates/hybrid/slack-inbound-intermediate-hybrid.json Hybrid template version bump + default resultExpression.
connectors/slack/element-templates/hybrid/slack-inbound-boundary-hybrid.json Hybrid template version bump + default resultExpression.
connectors/http/rest/src/main/java/io/camunda/connector/http/rest/HttpJsonFunction.java Bumps template version and adds a default result expression for REST response body mapping.
connectors/http/rest/element-templates/versioned/http-connector.json-12.json Adds a versioned copy of the previous HTTP REST element template (naming noted in review).
connectors/http/rest/element-templates/hybrid/http-json-connector-hybrid.json Hybrid template version bump + internal version header update + default resultExpression.
connectors/http/rest/element-templates/http-json-connector.json Template version bump + internal version header update + default resultExpression.
connectors/http/rest/README.md Updates documented element template version.
connectors/http/polling/src/main/java/io/camunda/connector/http/polling/HttpPollingConnector.java Bumps template version and adds a default result expression for polling output mapping.
connectors/http/polling/element-templates/versioned/http-polling-connector-4.json Adds versioned copy of the previous polling connector template version.
connectors/http/polling/element-templates/versioned/http-polling-boundary-catch-event-connector-4.json Adds versioned copy of the previous polling boundary template version.
connectors/http/polling/element-templates/http-polling-connector.json Template version bump + default resultExpression.
connectors/http/polling/element-templates/http-polling-boundary-catch-event-connector.json Template version bump + default resultExpression.

You can also share your feedback on Copilot code review. Take the survey.

@github-actions github-actions Bot temporarily deployed to connectors-6311-add-defaul-c8sm March 13, 2026 08:01 Destroyed
@jan-ladleif
Copy link
Copy Markdown
Contributor Author

Not sure if the build failures are due to the changes --- would be happy to jump in a call and look through the pipelines if that is something I can fix, but could not find anything concrete by myself.

Copy link
Copy Markdown
Collaborator

@johnBgood johnBgood left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks great! well done

@github-actions github-actions Bot temporarily deployed to connectors-6311-add-defaul-c8sm March 13, 2026 09:40 Destroyed
@johnBgood
Copy link
Copy Markdown
Collaborator

Not sure if the build failures are due to the changes --- would be happy to jump in a call and look through the pipelines if that is something I can fix, but could not find anything concrete by myself.

I re-started the tests, you have to do that sometimes, sadly :( The failures are not related to your PR

@github-actions github-actions Bot temporarily deployed to connectors-6311-add-defaul-c8sm March 26, 2026 09:43 Destroyed
@sbuettner sbuettner added this pull request to the merge queue Mar 26, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Mar 26, 2026
@jan-ladleif jan-ladleif added this pull request to the merge queue Mar 31, 2026
Merged via the queue into main with commit 43b0017 Mar 31, 2026
30 of 31 checks passed
@jan-ladleif jan-ladleif deleted the 6311-add-default-result-expressions branch March 31, 2026 10:15
@mathias-vandaele
Copy link
Copy Markdown
Collaborator

/backport

team-connectors-int-automation Bot pushed a commit that referenced this pull request Mar 31, 2026
* Add template annotations

* Add re-generated element templates, same version number

* Revert "Add re-generated element templates, same version number"

This reverts commit 6805b2e.

* chore: bump versions of updated connectors

* chore: regenerate adjusted element templates

* chore: add default expression to Slack outbound connector

* chore: regenerate Slack element templates

* fix: fix naming of versioned rest connector template

(cherry picked from commit 43b0017)
@team-connectors-int-automation
Copy link
Copy Markdown
Contributor

Successfully created backport PR for release-8.9.0:

mathias-vandaele pushed a commit that referenced this pull request Mar 31, 2026
…6856)

* Add template annotations

* Add re-generated element templates, same version number

* Revert "Add re-generated element templates, same version number"

This reverts commit 6805b2e.

* chore: bump versions of updated connectors

* chore: regenerate adjusted element templates

* chore: add default expression to Slack outbound connector

* chore: regenerate Slack element templates

* fix: fix naming of versioned rest connector template

(cherry picked from commit 43b0017)

Co-authored-by: Jan Ladleif <jan.ladleif@camunda.com>
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 8, 2026

🎉 This pull request has been included in release 8.9.0!

Thank you for your contribution! 🚀

mathias-vandaele added a commit that referenced this pull request Apr 13, 2026
* ci: release version 8.9.0-rc1

* ci: release version 8.9.0-rc2

* chore(helm): change helm-git-refs.json (#6849) (#6850)

(cherry picked from commit 14862bf)

Co-authored-by: Mathias Vandaele <mathias.vandaele@camunda.com>

* feat: Add default result expressions for selected connectors (#6655) (#6856)

* Add template annotations

* Add re-generated element templates, same version number

* Revert "Add re-generated element templates, same version number"

This reverts commit 6805b2e.

* chore: bump versions of updated connectors

* chore: regenerate adjusted element templates

* chore: add default expression to Slack outbound connector

* chore: regenerate Slack element templates

* fix: fix naming of versioned rest connector template

(cherry picked from commit 43b0017)

Co-authored-by: Jan Ladleif <jan.ladleif@camunda.com>

* feat(element-template-generator): improve HTTP DSL auth deduplication and server URL visibility (#6730) (#6863)

(cherry picked from commit d92861d)

Co-authored-by: Stefan Zabka <stefan.zabka@camunda.com>

* chore: kafka consumer group logging (#6858) (#6869)

* chore: kafka consumer group logging



* fix: groupId set check should be more complex



---------


(cherry picked from commit 915bbd7)

Signed-off-by: Pavel Kotelevskii <pavel.kotelevskii@camunda.com>
Co-authored-by: Pavel Kotelevskii <38818382+chillleader@users.noreply.github.com>

* chore(camunda): bump camunda version to 8.9.0 (#6908)

* ci: remove unused PAT (#6861) (#6910)

(cherry picked from commit 4933962)

Co-authored-by: Jonathan Roques <jonathan.roques@camunda.com>

* ci: release version 8.9.0-rc3

* ci: release version 8.9.0

---------

Signed-off-by: Pavel Kotelevskii <pavel.kotelevskii@camunda.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: team-connectors-int-automation[bot] <195338911+team-connectors-int-automation[bot]@users.noreply.github.com>
Co-authored-by: Mathias Vandaele <mathias.vandaele@camunda.com>
Co-authored-by: Jan Ladleif <jan.ladleif@camunda.com>
Co-authored-by: Stefan Zabka <stefan.zabka@camunda.com>
Co-authored-by: Pavel Kotelevskii <38818382+chillleader@users.noreply.github.com>
Co-authored-by: Jonathan Roques <jonathan.roques@camunda.com>
@github-actions
Copy link
Copy Markdown
Contributor

🎉 This pull request has been included in release 8.10.0-alpha1!

Thank you for your contribution! 🚀

@github-actions github-actions Bot added the version:8.10.0-alpha1 Released in version 8.10.0-alpha1 label May 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

All ETs should have a result expression or response variable by default

5 participants