Ducksboard API for .Net

Last time, I wrote about how neat I thought the Ducksboard app was.   I found a nice little project over on github that wrapped up the update components of the api pretty well.  So I could easily create a dashboard, and configure my application to push data to Ducksboard using a .NET component with nuget support and coding techniques I’m used to.

I started playing and noticed that the Dashboard API (used to create Ducksboard dashboards, not update them) wasn’t implemented, and I kind of needed it.  We have a product that could use a dashboard, and I wanted the dashboard functionality  to go something like this:

App starts up, checks to see if there’s a Ducksboard dashboard for client x.  If not, create it, populate it with widgets, and then go on doing work stuff, occasionally updating the Ducksboard dashboard with metrics, etc.

All this creation stuff happens at ducksboard with their Dashboard API.

The Dashboard API can be used to manipulate all objects found in Ducksboard: dashboards, widgets, external accounts, public access tokens and so on.

I contacted the author of the Ducksboard API for .NET to see if he was working on this api, and he wasn’t, so I coded up what I needed trying to stick with the original authors api design as much as possible, submitted a pull request, and now it’s part of the project.  What the heck did we do before OSS? :)

Anyhow, there’s some awkwardness in the code there (mostly due to my limited knowledge of json serialization, but also due to some constraints of their api), but it is working pretty nicely if you know what you want to do with their api.  For example, the following few lines of code creates a dashboard with a leader board component :

One thing I’m grappling with is the long term viability of using Ducksboard for corporate dashboards.  I’m exploring the idea, but am waiting to see if our clients will go for a super nice, accessible-from-anywhere dashboard, with reduced complexity on in house servers, and all of the benefit that that brings, or if they think it’s too risky to send out data to a third party…  For now, I’m happy to have it there as an option for those that want to use it.

About Brendan Tompkins

Brendan runs CodeBetter.Com and Devlicio.Us. He is a former MVP for Microsoft .NET and is president of Port Technology Services, a partner with Port Solution Integrators a provider of hardware and software integration services for the transportation and logistics industry.
This entry was posted in .NET, Cloud Hosting. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • AquaBirdConsult

    There are some amazing widgets with Ducksboard. The timeline one is specifically interesting, because you just send requests and it handles how to display them in order. The API is just a no brainer when it comes to implementation within your own code.

    The only thing about Ducksboard I am still on the fence about is their pricing / num of dashboards. You mentioned each application would have its own dashboard. You could hit that limit of 10 really quickly and have to manage multiple accounts.

    I also noticed NewRelic is starting to offer dashboards as well, but not as polished as Ducksboard. 

    Thanks for contributing again, always love pull requests and working with others.

  • http://profiles.google.com/naikrovek jeremiah johnson

    those code line numbers don’t come through very well on RSS feeds.  The More you Know…