[ { type = "custom-api"; title = "Crafty Controller — Minecraft Server"; cache = "5s"; allow-insecure = true; url = "\${CRAFTY_URL}/api/v2/servers/\${CRAFTY_SERVER_ID}/stats"; headers = { Authorization = "Bearer \${CRAFTY_API_TOKEN}"; Accept = "application/json"; }; template = "\n\n\n{{ $displayMOTD := true }}\n\n\n\n{{ $is_running := .JSON.Bool \"data.running\" }}\n{{ $online_players := .JSON.Int \"data.online\" | formatNumber }}\n{{ $max_players := .JSON.Int \"data.max\" | formatNumber }}\n{{ $name := .JSON.String \"data.world_name\" }}\n{{ $size := .JSON.String \"data.world_size\" }}\n{{ $version := .JSON.String \"data.version\" }}\n{{ $icon := .JSON.String \"data.icon\" }}\n{{ $server_ip := .JSON.String \"data.server_id.server_ip\" }}\n{{ $server_port := .JSON.String \"data.server_id.server_port\" }}\n{{ $motd := .JSON.String \"data.desc\" }}\n\n{{ $server_addr := \"\" }}\n{{ if and ($is_running) (eq $server_ip \"127.0.0.1\") }}\n {{ $server_addr = printf \"%s:%s\" (replaceMatches \"https?://\" \"\" \"\${CRAFTY_URL}\") $server_port }}\n{{ else if $is_running }}\n {{ $server_addr = printf \"%s:%s\" $server_ip $server_port }}\n{{ end }}\n\n{{ $starting := false }}\n{{ if and ($is_running) (eq $max_players \"0\") (eq $version \"False\") }}\n {{ $starting = true }}\n{{ end }}\n\n\n{{ $updating := .JSON.Bool \"data.updating\" }}\n{{ $importing := .JSON.Bool \"data.importing\" }}\n{{ $crashed := .JSON.Bool \"data.crashed\" }}\n\n
\n \n
\n {{ if eq $icon \"\" }}\n \"Server\n {{ else }}\n \"Server\n {{ end }}\n
\n\n \n
\n \n
\n \n {{ $name }}\n \n\n {{ if and ($is_running) (not $starting) (not (eq $server_addr \"\")) }}\n
\n \n {{ $server_addr }}\n \n
\n {{ end }}\n
\n\n \n {{ if and ($is_running) (not $starting) }}\n {{ if and (not (eq $motd \"\")) ($displayMOTD) }}\n
\n {{ replaceMatches \"§.\" \"\" $motd }}\n
\n {{ end }}\n\n
\n {{ $version }} - {{ $online_players }}/{{ $max_players }} players - {{ $size }}\n
\n\n \n {{ else if $starting }}\n
Server is starting up..
\n {{ else if $importing }}\n
Server is being imported..
\n {{ else if $updating }}\n
Server is being updated..
\n {{ else if $crashed }}\n
Server has crashed!
\n {{ else }}\n
Server is offline
\n {{ end }}\n
\n
"; } ]