<p>I am exploring Argo to orchestrate processing big data. I wish to kick off a workflow via REST call that divides a large data set among a number of machines with desired resources for processing. From an architectural perspective, how would I accomplish this? Is there an REST api or maybe some libraries for Node.js that I can use?</p>

<p>Argo 2.5 <a href="https://blog.argoproj.io/argo-workflows-v2-5-released-ce7553bfd84c" rel="nofollow noreferrer">introduces its own API</a>.</p>
<p>There are currently officially-supported <a href="https://github.com/argoproj/argo-workflows/blob/master/pkg/apiclient/apiclient.go" rel="nofollow noreferrer">Golang</a> and <a href="https://github.com/argoproj-labs/argo-client-java" rel="nofollow noreferrer">Java</a> clients. There is also a community-supported <a href="https://github.com/CermakM/argo-client-python" rel="nofollow noreferrer">Python</a> client. Updates will be available here: <a href="https://github.com/argoproj-labs/argo-client-gen" rel="nofollow noreferrer">https://github.com/argoproj-labs/argo-client-gen</a></p>
<p>Argo provides Swagger API specs, so it should be reasonably easy to generate clients for other languages.</p>
