I'm wondering if there's an API for getting the disk usage, database space usage, or bandwidth utilization of a domain hosted using Virtualmin?
If it's in the UI, it's in the CLI and API. If it's not, it's probably a bug, and we'll probably fix it if you tell us about it.
You can get a huge amount of information about a domain using the list-domains function:
Specifically, the --multiline mode:
# virtualmin list-domains --domain virtualmin.com --multiline
Will list disk and database usage, as well as a huge number of other values. I'd thought we had a JSON output option on that command...but, I'm not seeing it now, I guess it's still on the todo list. It's not too hard to parse that data, though, as it's just in "Name: Value" format, line separated.
All commands are usable from the remote API, as well. You just have to URL-encode your options and wrap them up in a web request. There are examples of that in the docs: