# How to...

This section serves as a guide to help you create new versions effectively and maintain your old versions with ease. It consists of a collection of scenarios for different types of breaking changes.

To follow this guide, choose a type of an entity that you'd like to alter (an endpoint, a schema, etc), find the respective article, and follow its instructions. Repeat for every breaking change you would like to do.

Versioning is a complex topic with more pitfalls than you'd expect so please: **do not try to skip this guide**. Otherwise, your code will quickly get unmaintainable. Please also note that any of these scenarios can be combined in any way even within a single version change, though it's recommended to keep the version changes atomic as described in [methodology](../concepts/methodology.md) section.
