We are very pleased to announce that API v2 is coming out of beta, nine months after its initial release. With this release we wanted to introduce new features not available in v1, while maintaining the level of simplicity developers loved in our first version. To help us keep it simple and stomp out bugs, we called on the community to collaborate with us in a public GitHub repository. The last nine months of collaboration with the community ensured our API remained awesome as we added these new features.
Our previous API was simple and easy to use. However, it lacked features allowing developers to interact with DigitalOcean in more advanced ways. We knew we wanted to include new features like:
- A (more) RESTful interface
We wanted to add all of these features in v2, but were wary of increasing the complexity for our community. So, our first tactic was to introduce only new features the community was actually requesting. This involved taking internal and customer feedback even before launching in beta through UserVoice, internal dogfooding, and support tickets. Then during the beta, we received a constant stream of new feedback via the public GitHub repo.
Close collaboration with the community allowed us to fix several bugs as well as add a couple of very useful features. We received a high amount of feedback about the images endpoint, for example — specifically around filtering and maintaining an acceptable level of response time. Many of our users have a large number of snapshots and backups, so the ability to request different types of images via this endpoint proved very useful. Some other features which made it in thanks to community feedback include:
- Increasing the base rate limit
- Adding more information to the user endpoint
- Clarifying the API documentation
- Adding stronger validations to the Droplet creation process
Our second tactic was to keep the API as consistent as possible to reduce the cognitive load on the developer. As an example, we made sure all region objects in JSON responses follow the same format.
The final tactic was to beef up our API docs by launching our new developer portal. The new portal provides clear documentation, links to community tutorials to get started, and a centralized repository of API libraries.
- API v2 Documentation includes example CURL requests paired with JSON responses
- Metadata API Documentation
- OAuth API Documentation
- Community Guides for using the API, including how-tos for beginners to get started
- Libraries written by DigitalOcean and the community
We would like to thank everyone who helped report bugs and suggest features during the beta period. Thanks to you, API v2 is finally launched! Try it out here.