Here’s a scenario you might be familiar with: you received a bug report about a request to an external API that is failing in production. You need to track down this bug, but the question is: how?
If you’re lucky, you can find an error message in your logs. If you’re really lucky, you might be able to figure out the context around the failure (such as what parameters you sent to the API) based on those logs. Most likely, you’re just going to have a vague bug report that you just won’t able to track down.
Debugging an API Shouldn’t Be So Hard
The internet isn't the friendliest environment for writing software. Even if you have a well-designed application with full test coverage, things go wrong in the real world. They can especially go wrong with things outside of your control – for instance when you're dealing with a third-party API.
The solution for the debugging challenge is devastatingly simple: you need some kind of log from the third party API. Wouldn’t it be great if you can just go to a dashboard and find out exactly what went wrong without trying to figure it out yourself? You wouldn’t have to waste the mental RAM of figuring this all out yourself.
A dashboard is part of any well designed API, where a developer can go and see all their requests and callbacks, and know at a glance exactly what went wrong. This saves a ton of time for developers. It’s almost a no-brainer.
The Best APIs Have Dashboards: Stripe, Twilio, Apigee
Some of the best APIs have dashboards: Stripe, Twilio, Apigee. These guys get it.
Take Stripe for example:
Stripe put a lot of thought and effort into the “Developer Experience.” Everything you need to know about your Stripe account can be found on their dashboard, including request logs. Working with their API is easy, which contributed to their success.
Dashboards Are Part of Great Developer Experience (DX)
So why don’t all APIs have dashboards? Why aren’t developers demanding these kinds of tools? The reason developers aren’t clamoring for API dashboards is that developers are used to poorly designed APIs. The prevailing attitude from API providers and developers themselves is “developers are smart people, let them figure it out.”
But if an API provider truly wants to create a great developer experience, providing a dashboard can be an excellent tool to get out of the way of developers and help them build their apps even faster. There are enough hard problems developers need to solve: figuring out why API requests are failing shouldn’t be one of them.
What do you think?
Will API dashboards become status quo for great developer experience? Leave your thoughts in the comment section below!
And if you're interested in checking out our Dropbox Sign API dashboard, you can set up an account and get started in just a few minutes. Our API is quick to integrate and includes the kind of clear and modern documentation that does a developer proud.