Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Uptime Robot Dashing Widget

Simple Uptime Robot Dashing widget


Dashing widget to display a short list of Uptime Robot monitors.


Add this to your Gemfile and run bundle install:

gem 'uptimerobot'

The files, uptimerobot.html and uptimerobot.scss go in the /widget/uptimerobot directory.

The uptimerobot.rb goes into the /jobs directory.

Put the following in your dashboard.erb file to make it show up in your dashboard:

<li data-row="1" data-col="1" data-sizex="1" data-sizey="1">
  <div data-id="uptimerobot" data-view="Uptimerobot"></div>

##Settings (uptimerobot.rb)

You will need to provide an API key from Uptime Robot API

class Dashing.Uptimerobot extends Dashing.Widget
<h1>Server status</h1>
<li class="monitor" data-foreach-monitor="monitors" data-bind-class="monitor.status">
<span data-bind="monitor.friendlyname"></span>
require 'uptimerobot'
SCHEDULER.every '5m', :first_in => 0 do |job|
client = apiKey)
raw_monitors = client.getMonitors['monitors']['monitor']
monitors = { |monitor|
friendlyname: monitor['friendlyname'],
status: 'S' << monitor['status']
send_event('uptimerobot', { monitors: monitors } )
// 0 - paused
// 1 - not checked yet
// 2 - up
// 8 - seems down
// 9 - down
$S0-color: rgba(128, 128, 128, 0.5);
$S1-color: rgba(200, 255, 200, 0.5);
$S2-color: rgba(50, 205, 50, 0.5);
$S8-color: rgba(255, 50, 50, 0.5);
$S9-color: rgba(255, 50, 50, 0.5);
.widget-uptimerobot {
background: linear-gradient(to bottom, #3b4248 0%,#2a2f34 40%,#222529 100%);
.S0 {
background: $S0-color;
.S1 {
background: $S1-color;
.S2 {
background: $S2-color;
.S8 {
background: $S8-color;
.S9 {
background: $S9-color;

This comment has been minimized.

Copy link

@merid14 merid14 commented Dec 3, 2015

Where do you put your UPTIMEROBOT_APIKEY?


This comment has been minimized.

Copy link

@vxrdanny vxrdanny commented Jan 15, 2018

Can't get this to work.

I think the issue is down to this plugin using APIv1 which is now discontinued through uptimerobot. Do you have plans to update this to APIv2


This comment has been minimized.

Copy link

@Flo3561 Flo3561 commented Feb 27, 2018

@vxrdanny: I created an updated version which works with the new APIv2:


This comment has been minimized.

Copy link

@vxrdanny vxrdanny commented May 7, 2018

hi @Flo3561, the link doesn't work and I can't get this to work - can you help please?


This comment has been minimized.

Copy link

@h-evers h-evers commented Mar 21, 2019

The correct link is and there's a little bug (at least with current dependencies): you have to change the API keys id in the constructor to

client = apiKey)

It's an underscore...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment