I can't imagine the amount of developer time/'technical debt' that's required for a custom API just to run on OWRT. I've only briefly looked at some of the GL scripts but I can't imagine why write completely custom scripts when uci itself is so easily scriptable.
I could see a custom daemon tunneled thru HTTPS as a endpoint for the GL.iNet app, though... or just push/pull over dropbear:
... but it sure would be nice to get back that RAM from Nginx given LuCI runs Lua to interface with uci.