Hello I am Building an app called 'Gallery Runner' .Using HTML GUI SDK & Alteryx Server API.
Intro about this app : This Tool (I call it Gallery Runner tool /Connector )let's you run multiple workflows in a Chained fashion , the workflows/Apps that got uploaded to gallery can be run in series or in parallel like this in image below .In below Image I uploaded 5 Diffent workflows in to Gallery and then use create a 6th workflow using this Tool/Connector to point all other 5 workflows . Which means you can run all 5 workflows in series or parallel based on how you configure ,if they success or failure etc..This uses Gallery serve API to run those 5 workflows .
Issue : But the Tool takes time to load once configured ,from the debug found that the fact it login's everytime to Alteryx gallery API and generated Oauth Tokens .
Looking : Do we have any examples that saves the ClientID and Client Credentails of gallery API that gets saved in to cache after login in to 1st workflow then re-use it for other ones ?
I am using this attached GalleryRunnerAPI.js file to configure Gallery API and other app.js to configure login and GUI .
Also there is one more issue . In Alteryx Desktop there is ''options-->user settings-->Advanced Tab --> check box for 'Diasable Auto Configure' this is causing issue , when this is unchecked the app loads okay ,if its checked the app takes much longer to open . Any IDea ?
Does Anyone know how to cache the Oauth Tokens for Alteryx API using Js ?
I know of no easy way to cache anything that can be used across multiple instances of a tool. It might be possible to build something using temporary files. It would be complicated and I couldn't comment on the security concerns, so I will suggest a different option before you try it.
What SDK have you used to build your engine?
What is happening here is that each time a tool configuration changes, Alteryx Designer runs the entire workflow using an 'UpdateOnly' mode that is meant to hydrate the workflow with field metadata. I assume that, even in this update-only mode, your tools are actually connecting to the Gallery. I also assume that the fields your tool generates are always going to be the same.
So I would recommend that when the workflow is being run in 'UpdateOnly' mode, your tools just send the known field info downstream and don't even try to connect to the Gallery. Only when the workflow is being run 'for real' does it actually connect. This should greatly speed up Designer.
Once we know what SDK you have used to build your engine, we can advise how to check when the workflow is being run in UpdateOnly mode.