Currently Argo UI is powered by a lightweight API server written in node, is readonly, and can only do visualization of workflows.
We plan to have a more formalize API server, rewritten in go, which can handle things like submit, resubmits, retries, deletes, suspend, resume, etc...
The API server should also be able to run locally. e.g.:
argo server
Which would then make the api server available via https://localhost:8080, to manage workflows using the current kubeconfig context.
The API server would also work in tandem with the controller's persistence configuration, allowing workflows to be listed from a database (instead of kubernetes API).
Diagram explaining the proposed authentication mechanism:

The idea is that we will be trying very hard not to have our own RBAC, and rely on existing kubernetes RBAC. For this to work, the Argo API server would make K8s API requests using forwarded credentials supplied by the client, basically acting as a proxy to the requests.
Thanks for the awesome work btw.!
Just wanted to mention that there is a huge demand for this feature, so we don't have to do this by ourselves by getting it out of the "raw" DB by ourself (with 2.4.0 out :heart: ).
Most helpful comment
Thanks for the awesome work btw.!
Just wanted to mention that there is a huge demand for this feature, so we don't have to do this by ourselves by getting it out of the "raw" DB by ourself (with 2.4.0 out :heart: ).