arkWatcher is a RESTful API that provides useful information about your ARK:Survival Evolved Server.
First, install and set up ark-server-tools. Check to make sure you're ready to go by running arkmanager status
.
Once that's all set, it's pretty simple.
git clone https://github.com/samjhill/arkWatcher.git
node index.js
You should see the following:
listening on port 4730
Now, just navigate to http://localhost:4730/status to see if it's working! The default username and password is admin:admin, which you should change in data/users.htpasswd.
Type: GET
Returns the status of the server.
Sample response:
{
"serverRunning":"Yes",
"serverOnline":"Yes",
"serverName":"Puesto - (v218.7)",
"players":"0 / 15",
"serverVersion":"809694"
}
Type: GET
Returns the log from /var/log/arktools/arkserver.log. For now, it is simply broken into pieces by line.
Sample response:
[
"14:43:27: start","/usr/local/bin/arkmanager: line 328: ulimit: open files: cannot modify limit: Operation not permitted",
"[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed."
]
Type: GET
Returns true if the server is up-to-date, and false otherwise.
Sample response:
true
Type: GET
Returns the usage of the system's memory and CPU, in 1, 5, and 15 minute averages, respectively.
Sample response:
[0.15234375,0.2236328125,0.2626953125]
Type: POST
Starts the server.
Codes:
201: Started successfully
300: Server is already running
Type: POST
Stops the server.
Codes:
201: Stopped successfully
300: Server is already stopped
Type: POST
Runs a remote command. Full list of commands can be found here, though as I'm testing, I'm finding that some commands in the list are invalid.
Codes:
200: Command run successfully
300: Server returned no response for the given command
Also returns the message from the server running the command, in plain text format.
Add more information in the status command
MIT © Sam Hill