The CloudStack API references do not adequately communicate the details of the APIs. This inadequacy of information seems to have affected the user experience of CloudStack APIs.
The purpose of this document is to suggest methods to improve the CloudStack API references. Improved CloudStack API references that adequately describe APIs help users educate themselves about the purpose and usage of the APIs. This knowledge helps them make appropriate decisions when using CloudStack.
TBD
The new template that is defined for the CloudStack API describes the information that an ideal CloudStack API reference should contain. Also, this document describes the technical aspects of generating an improved CloudStack API references.
The current CloudStack API references contain the following information:
CloudStack uses Java docs for creating API references. The developer who creates an API enters the descriptions in the @ APICommand annotation field in the code. Finally, the API references are generated from the code.
The following are the limitations of the current CloudStack API references:
The CloudStack API references miss many pieces of information that are crucial for ensuring an excellent user experience. The proposed template for the CloudStack API reference in Appendix A helps you understand these additional information to be documented for CloudStack API references.
This document does not suggest any major changes to our current approach for creating/generating API references. The developers will continue adding content in the @APICommand annotation fields when they create an API. The template in Appendix A can guide them in determining the information that they need to add to @APICommand annotation fields.
Also, this document proposes Tech Pubs review of the API reference page before publishing the API references.
The following figure delineates the workflow for the generation of API docs from the code:
The proposed template for the CloudPlatform API (MS Word format):