Uptime Robot Gets An API!

After many requests from the users who would like to integrate Uptime Robot with their apps or create other interfaces for it (like a desktop or mobile), the Uptime Robot API is launched today which makes such integrations possible and so easy.

This is the v1 of the API which covers most of the important stuff including:

  • getting the list of monitors, their details (uptime ratio, URL, friendly name, type, etc.)
  • getting the notification logs for each monitor
  • getting the alert contacts notified after each notification
  • adding new monitors
  • editing monitors
  • deleting monitors.

It is a REST API that can return:

  • XML
  • JSON
  • JSON-p

responses.

In order to use it, simply get your apiKey from the My Settings page and head to the API documentation.

What's next with the API?

In the next version, we'll be adding:

  • "monitor-specific apiKeys" so you can securely use the apiKey in a client's website without revealing your main apiKey
  • methods for managing alert contacts (adding/editing/deleting them)

Please share your thoughts about the API and/or any other methods that you think should exist in the next version.

If you find Uptime Robot useful, help us spreading the word:

Comments

  1. Lukas

    Great!!! Nice work :))

    Reply
  2. Joe Lee

    Awesome Juice!
    Thanks for the great tool guys and now its even better.

    Reply
  3. Brandon

    Love the service!
    Keep up the good work.

    Reply
  4. Chris

    Don’t see the point in this…if I wanted to monitor my server from an App i’d just download one of the many that are available…in terms of development there isn’t a lot that can be done with the statuses of my server – in other words there isn’t massive potential for something like this.

    Reply
  5. admin Post author

    @Chris,

    API will make sense once you want to use the Uptime Robot engine but pull your data and integrate it into other apps (like creating new monitors from a web hosting control panel or a WordPress plugin displaying the uptime of your blog inside the WP admin panels, etc.).

    Otherwise, for simply monitoring servers and getting notification e-mails, Uptime Robot’s own interface is pretty enough for that.

    Reply
  6. Kevin Fahey

    Nice work, UpTimeRobot saved me many times.

    Great Service and like everyone else said its even better now. Looking forward to an iPhone App soon :)

    Reply
  7. ghedamat

    Great work guys!

    Reply
  8. Wee Lun

    Nice..now can use inside to my blog already..hehe..thank you

    Reply
  9. Ian

    Great work!! Again a very nice service from uptime-robot.

    Reply
  10. Echizen Maru

    Really appreciate this new API key release. With the API we can integrate the uptime monitoring result in to our web/blog, it is cool.

    Keep the great work.

    Reply
  11. Stephan

    Pause/Resume would be nice…

    Reply
  12. admin Post author

    @Stephan,

    We can add it to the editMonitor method. Gr8 suggestion.

    Reply
  13. Seb

    Hi there. May I suggest that you publish and maintain specific API version numbers for better forwards and backwards compatibility. E.g. if this is API version 1 then users should specify that they expect to use that version, using an appropriate HTTP header or URL variable. When you change the API in future versions in a way that is complex and may change the behavior of variables (either sent or received), then having a simple versioning system will make thinks easier for everyone and prevent breaking the API in deployed applications as you change it. :)

    Reply
  14. ticbox

    have long used this service, thanks for the improvements

    Reply
  15. Mark

    Hi there, I’ve been writing a wrapper function in PHP. It seems everything works fine except for the newMonitor function. I’ve tried both newMonitor and addMonitor (text in API documentation is confusing) but neither of them work. addMonitor comes back with 103 and newMonitor an internal server error.
    Am I doing something wrong?

    Reply
  16. itayo

    Am i allowed to make a iphone/android app to monitor the server status?

    Br
    Stefan

    Reply
  17. admin Post author

    @Seb,
    That’s a great suggestion. We’ll be keeping the v1 as is and using /v2/method type of URLs for next versions.

    @Mark,
    Will be checking it and updating this post back.

    @itayo,
    Yes, sure.

    Reply
  18. admin Post author

    @Mark,

    Yes, there seemed to be an issue with the handling of a parameter in newMonitor method and it is fixed now.

    P.S. The method name is newMonitor and updated the dos (thx for the heads up).

    Reply
  19. Mark

    I completed my simple API wrapper. It can be forked at GitHub

    Reply
  20. admin Post author

    @Mark,

    Great job and thanks so much for making it available.

    Reply
  21. Jon

    Updating the url for a monitor would be nice too.

    Thanks for the great product.

    Reply
  22. admin Post author

    @Jon,

    The feature exists in the editMonitor method.

    Reply
  23. Christopher

    No0b alert :)

    I’m trying to use the API and @Mark’s little script to simply display the uptime percentage of one of my monitors on my website.

    I’ve got Mark’s script working so that I end up with the correct JSON output for the monitor that I want, using the code:

    # getMonitors
    $monitors = array(‘xxxxx’);
    echo $ur->getMonitors($monitors, 1, 0); // gets only specified monitors and outputs the returned json string

    But how do I turn that JSON string into a simple percentage (alltimeuptimeratio) that I can include on my website?

    Any help appreciated ;)

    Reply
  24. Keith

    Thanks for the service and now the API. Uptimerobot rocks!

    Reply
  25. Christopher

    @admin

    Merci much :) Exactly what I was looking for!

    Reply
  26. Woo Commerce

    Great, I still playing around about this API based on samples admin give me. Thanks!

    Reply
  27. Pingback: Monitor-Specific apiKeys & Improvements On API « Uptime Robot – Blog

  28. Spencer

    The API is nice. I was wondering if you plan on adding a postback capability? I’m not sure if the terminology is correct, so here is what it would do…

    In the Uptime Robot Settings interface we could add a URL path to a script that will receive notifications (up or down and the monitor ID/name). I could then have my local script parse that data and either store it in the database or use a service like Pusherapp to push notifications out to my admin users.

    I think this would make an already awesome product almost perfect.

    Thanks.

    Reply
  29. admin Post author

    @Spencer,

    Yes, that’s a feature in our to-do-list.

    We still have some way to go before adding it but it’ll definitely be implemented.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>