Best practice send-receive-pattern

Hi all,

I’m looking for a best-practice-solution for a common problem:
In the process I want to model with camunda, i have to call an external service asynchronously. I need a way to call that service, and offer an endpoint for the answer. In case I don’t get an answer in a defined timeframe, I want to retry the request three times and afterwards raise an incident. The user needs to be able to manualy retry this call.

Thanks in advance.

There are a lot of ways of implemented this. I would suggest starting with a pattern like this: