Deploy a worker via HTTP api?

I just found this thread as I was about to open my own on the same topic. I’m surprised to see this functionality to be missing. For my use case, being able to deploy a worker using curl is a must, even though Wrangler is awesome. I solved this for me by writing a Node package for deploying a script to Workers (with KV support) without the use of Wrangler. It uses the same APIs as the “Quick Edit” web UI for Workers does. It requires filling in a few values to secrets.json for it to function. At the moment I don’t plan on automating getting these values (which could be done by logging in in the script and obtaining them, however, it would get complicated with 2FA pretty quick).

You can find the Node package here: