Email & deeplinks for approval

Dear Community,

We have a requirement to provide Approvers in a workflow with an email that summarizes the transaction details as well as provides a deep link to

  • Either task in a tasklist
  • or provides a deeplink to actually Approve / Reject the transaction (we understand security implications of this) if this possible at all without creating a customised REST service

As we are not keen to reinvent the wheel we would appreciate your sharing of typical patterns to implement the requirement.

Best regards,
Ilya

Tasks cannot be deep linked without extension to task list app(see forum search for people asking similar questions)

If you want approve/deny, you need to write a microservice or engine app that provides a additional endpoint

Hi Stephen,

Appreciate your prompt and valuable (as usual) reply

Best regards,
Ilya

I would consider something like that a ‘deep link’ to the ‘task in a tasklist’ and it works for me:

http://localhost:8282/camunda/app/tasklist/default/#/?task=64a280e7-4ed2-11e8-a8da-9cebe823bffb

It should be possible to add the task id as an input parameter to the e-mail body to create that link.

2 Likes

Dear f_a,

Yes, this works for us well!

Thank you.

Best regards,
Ilya

@Ilya_Malyarenko

here is a example of being able to add new endpoints to the camunda engine through scripting:

You could write these in any of the supported languages, and a email approval example is provided.
You would have to add your own security logic.

vertx-approval

See the link above for more docs on how. Short version: it provides a process engine plugin for Camunda, and you configure the plugin to read from a YAML file that is a list of “verticles”. a verticle is your code that defines the endpoints or whatever action.

your yaml file would look something like:

verticles:
    my_verticle:
        name: "my verticle"
        path: "/verticles/vert1/vert1.js"
        deployment_options:
          worker: false
          instances: 1
          config:
              value1: "dog"
              value2: "cat"