Hi all,
I have a use case where we want to start a process (process model independent of parent process) in different Appian environments from its parent process model.
So we need to accomplish an action in appian environment 1 and appian environment 2 once certain actions are completed in appian environment 3.
PM in appian environment 3 should trigger PMs in Appian environment 1 & 2 upon its completion, we cannot use web API or integration here.
So I wanted to understand if we can make use of 'start process by email' option to start multiple process which are in different appian environments.
Also if we have any other better approach for this scenarios? Any suggestion here much appreciated.
Thanks,
Preji
Discussion posts and replies are publicly visible
That's easy. Just expose a process via a web API and call that form the other system.
As I mentioned in the problem statement, usage of web API isnt allowed/accepted.
What is the reason for that?
it is considered as anti pattern and hence have been requested to find another approach
API calls are an anti-pattern !?!?!? I would really like to know more about this.
Is this in context of message based architectures?
The problem with an email based approach is, that the reliability of email is ZERO. Nobody guarantees that the other system gets the email and does anything with it. And as this is completely asynchronous, you will not get any response. There is a reason for why people use APIs.
Appian calling Appian is considered an anti-pattern.In my usecase I need process from Appian Prod to invoke processes in Appian non prod regions, and establishing this via WebAPI is not encouraged.
I want to understand if any other approach is available and reliable.
Apologies if I have mislead you.
Who says that this is an anti-pattern? I would challenge that!
While there are other options, I would only consider an alternative if that alternative has a major benefit in terms of architecture and systems integration.
E.g. a messaging architecture requires new infrastructure and adds the problem that it is asynchronous. This is not a problem for sending data updates in a microservices architecture, but trying to run a business process on it can be challenging.
I don't get why its considered an anti pattern either. One could argue that having Appian environments talking to each other could be considered an anti pattern depending on what is being pushed and in which direction but that has nothing to do with the method (API, Email etc)
In any case, there may be some other options but the API option is the best one by far.
Hello
Can you have or create common resource connection like JDBC/Share point folder ? If yes, then you can send one file or data to external folder or JDBC(linked to lower environment) from environment 3. And add schedular process accordingly in environment 1 and 2 in order to check data or file and then start the process.
However, adding schedular might have performance impact in env 1 and env 2.
Regards
Agreed with what others have said, I don't think using a Web API to trigger a process is an anti-pattern. I am curious though why you are triggering something in non-prod sites based on a process from a prod site. Can you provide more context on what you're doing there and why? There may be other solutions we could provide based on the root problem.