Getting events from an external callback server

Hello ,

I’m stuck in making a choice of what type of task I should use in my bpmn .
My objective is to create a task within BPMN that can effectively wait and listen for a specific event originating from an external API endpoint, such as “…/callback”. Additionally, within my Java class, I aim to parse this event and extract pertinent information from it, all within the class that is associated with the BPMN task.

However, I’m encountering challenges in determining the most suitable type of task to achieve this functionality within BPMN. Furthermore, I seek advice on how to seamlessly integrate this task with Spring Boot for efficient event handling and data parsing.

IF you want to leverage Task that needs to wait for External Event to be completed then External task is the best choice which can be polled by the external worker and when it is done a callback can be made to update the completion /engine-rest/complete can be your callback - External Tasks | docs.camunda.org
When you complete you can pass the variable which can act as event data which you can then parse through subsequent service task in the model invoking delegate or custom java code.

You could also achieve same using message event with less overhead of polling/completion that exist in external task, My personal preference is message event

See the two models for your reference

@harish_malavade
thanks for your clear explanation it helped me a lot .