Integrate External Application vs Starting a process from an external system

Certified Associate Developer

Our client has two considerations:

1) Embed an external application / widgets (Reactive development) into Appian 

2) Calling Appian from an external system, with the following considerations

a. Calling new processes

b. Providing task links

c. Providing record links

From my understanding, (1) is not feasible in Appian, even with the new a!webComponents. 

(2a) is feasible but limited? Users can start processes through WebAPIs with parameters passed through the HTTP request, but I assume they cannot further interact with a process after. EG A User cannot add more information after the WebAPI is called. 

Is there a method to do (2b) and (2c)? I am unsure how to handle credentials when trying to follow a link from an external source. 

  Discussion posts and replies are publicly visible

Parents
  • Hi - it's a little hard to answer given the limited information you've provided. But, yes, you can start a new Process using a WebAPI and, yes, the process get's started Asynchronously. So if you want to further interact with that Process Model from the external system that started it you'll have to design a means by which the two systems can communicate/co-ordinate. For example, you might pause the Process, having sent a request to the external system, and then have the external system reply to another WebAPI that starts another Process that can then send a message to the original Process . That would work, but probably wouldn't be a good idea as you'd have process instances paused in memory which is not best practice. Alternatively, you could break up your Appian process into a series of smaller discrete process models, each of one is triggered externally and then raises an event back to the external application which then starts the next process model as needed. But without visibility into your use case it's difficult to answer the real design question.

    Task Links and Record Links can be provided thriough an embedded route - that is, embed Appian into an external Application Webpage. But the same comment regarding the nature of what you're trying to achieve applies - more information is needed on the problem you're trying to solve.
Reply
  • Hi - it's a little hard to answer given the limited information you've provided. But, yes, you can start a new Process using a WebAPI and, yes, the process get's started Asynchronously. So if you want to further interact with that Process Model from the external system that started it you'll have to design a means by which the two systems can communicate/co-ordinate. For example, you might pause the Process, having sent a request to the external system, and then have the external system reply to another WebAPI that starts another Process that can then send a message to the original Process . That would work, but probably wouldn't be a good idea as you'd have process instances paused in memory which is not best practice. Alternatively, you could break up your Appian process into a series of smaller discrete process models, each of one is triggered externally and then raises an event back to the external application which then starts the next process model as needed. But without visibility into your use case it's difficult to answer the real design question.

    Task Links and Record Links can be provided thriough an embedded route - that is, embed Appian into an external Application Webpage. But the same comment regarding the nature of what you're trying to achieve applies - more information is needed on the problem you're trying to solve.
Children
No Data