I’ve created a wiki page under Development 101 explaining all the rules that have to be followed when writing new CS Apis/modifying existing ones:
https://cwiki.apache.org/confluence/display/CLOUDSTACK/CloudStack+API+Coding+Guidelines The page emphasizes what rules to follow to ensure the backwards compatibility as well as: * CS API name conventions * where to place and how register/set permissions for the API request deepening if your command comes as a part of CS core or third party plugin/service * How to annotate Command/Response and its parameters Please feel free to update the page with more rules to follow. In the future, we might automate the process of reviewing new APIs and modifications for existing ones, to ensure the backwards compatibility. -Alena.