gRPC API Versioning

Learn how to use Protobuf features to apply API versioning to gRPC.

Almost all applications that run in production need to be updated at some point. Applications that communicate with one another over the network via an application programming interface (API) are not an exception. Sometimes, the API contract needs to be updated too. Some components need to be added to it. Other components need to be removed due to becoming obsolete.

While dealing with distributed applications, it is vital to maintain an API versioning strategy. This is especially true when the API is public and the organization that doesn't maintain the API doesn't have control over clients that connect to it. For example, a mobile app would rely on an API to communicate with the server-side components. However, while the developers of the app have control over those components, they cannot force all the users to update the app when they make changes to it. Therefore, any changes to the server-side API must be applied in such a way that older clients remain compatible with it. This is why an API versioning strategy is essential.

Get hands-on with 1200+ tech skills courses.